Avatar of SiemensSEN
SiemensSEN asked on

How to call a Restful webservice in JAVA

Hello,
 How do you call a RestFul WebService from a Java Application.  I need to call the URL and Post some data to it and retrive the response.

I was told that the service is written in JAVA and uses the Spring framework

Thanks for your help
JavaJava EE

Avatar of undefined
Last Comment
mccarl

8/22/2022 - Mon
ASKER CERTIFIED SOLUTION
dpearson

Log in or sign up to see answer
Become an EE member today7-DAY FREE TRIAL
Members can start a 7-Day Free trial then enjoy unlimited access to the platform
Sign up - Free for 7 days
or
Learn why we charge membership fees
We get it - no one likes a content blocker. Take one extra minute and find out why we block content.
See how we're fighting big data
Not exactly the question you had in mind?
Sign up for an EE membership and get your own personalized solution. With an EE membership, you can ask unlimited troubleshooting, research, or opinion questions.
ask a question
SOLUTION
mccarl

Log in or sign up to see answer
Become an EE member today7-DAY FREE TRIAL
Members can start a 7-Day Free trial then enjoy unlimited access to the platform
Sign up - Free for 7 days
or
Learn why we charge membership fees
We get it - no one likes a content blocker. Take one extra minute and find out why we block content.
See how we're fighting big data
Not exactly the question you had in mind?
Sign up for an EE membership and get your own personalized solution. With an EE membership, you can ask unlimited troubleshooting, research, or opinion questions.
ask a question
ASKER
SiemensSEN

Thank you .

I really will like to use spring. This RestAPI is simple now  but it will get more complicated in future releases.

I will read the links you sent me. However, if it would be very helpful  if you can provide any additional information. As always, I will Google to get more info

Thank you
ASKER
SiemensSEN

As an example.. I need to post the information below to the this rest URI
http://127.0.0.1:/api/data/add


{
        "message" => "[Wed Jun 26 22:13:22 2013] [client 10.10.10.100] PHP Fatal   ...."
        ,"@timestamp" => "2013-06-27T02:13:22.000Z"
        ,"m_level"        => "Info"
        ,"m_cat"           => "THIRD_PARTY"
        ,"m_cor"           => "None"
        ,"m_tenant"      => "xxxxx"
        ,"m_timezone" => "EDT"
        ,"m_tzoffset"    => "-04:00"
        ,"m_host"         =>"cassandra-03.boca.us"
        ,"m_path"         => "/var/log/messages"
        ,"m_type"         => "linux-syslog"
}

I already constructed  the json object.
SOLUTION
Log in to continue reading
Log In
Sign up - Free for 7 days
Get an unlimited membership to EE for less than $4 a week.
Unlimited question asking, solutions, articles and more.
ASKER
SiemensSEN

Thank you very much for the help. I will have a look at the RestTemplate and try to understand it.

However, I have to get a demo working this week. So, I will try use the HttpClient for now and later convert to REST.  Here is  my code snippet .. am I using the library correctly .  I will pass the JSON string and the URL to the class

public class Alarms 
{
     String url;
     public Alarms(String url)
     {
          this.url = url;
     }
     public void callRESTAPI(String jsonstring) throws IOException
     {
         CloseableHttpResponse response=null;
         CloseableHttpClient httpclient = HttpClients.createDefault();
         HttpClient c = new HttpClient();
         HttpPost p = new HttpPost(this.url);
         p.setEntity(new StringEntity(jsonstring,ContentType.create("application/json")));
         response = httpclient.execute(p);		
         System.out.println(response.getStatusLine());
                response.close();
}

Open in new window

Experts Exchange is like having an extremely knowledgeable team sitting and waiting for your call. Couldn't do my job half as well as I do without it!
James Murphy
dpearson

I haven't tried running your code - but it looks pretty good.

Fortunately httpclient is so widely used there's lots of examples on the web.  If you run into trouble a quick google search will show you lots of examples.

E.g. There's a whole tutorial here:
http://hc.apache.org/httpcomponents-client-ga/tutorial/html/index.html

and this part has some more POST examples:
http://hc.apache.org/httpcomponents-client-ga/tutorial/html/fundamentals.html#d5e171

Doug
mccarl

And you can probably delete line 12 from the above code snippet. It's not doing anything useful.