samedi 18 avril 2015

Android REST webservices

I have a code which works perfectly on the java project but when i use the same on the android project it throws error here is the code .(Note i cannot share link and parameters, problem is NOT there . link is right . the code is working i am getting result in java project in eclipse but same in android project fails )



try{
Client client=Client.create();
WebResource webResource2 = client.resource("some...link");

WSDetPojo wsdetpojo = new WSDetPojo(); // some class
wsdetpojo.parameter1("parameter1");
wsdetpojo.parameter2("parameter2");
wsdetpojo.parameter3("parameter3");
wsdetpojo.parameter4("parameter4");


ObjectMapper om=new ObjectMapper();

ClientResponse response2 = webResource2.type("application/json")
.post(ClientResponse.class,om.writeValueAsString(wsdetpojo)); // here is the problem <==

System.out.println("response of sms ==> "+response2);
if (response2.getStatus() != 201)
{
throw new RuntimeException("Failed : HTTP error code : "+ response2.getStatus());

}

String output2 = response2.getEntity(String.class);
System.out.println("output :\n" +output2);

}catch(Exception ex){
ex.printStackTrace();
}


Now here is the error which i get when i run it on android



java.lang.NullPointerException: Attempt to invoke interface method 'java.lang.Object javax.ws.rs.ext.RuntimeDelegate$HeaderDelegate.fromString(java.lang.String)' on a null object reference
at javax.ws.rs.core.MediaType.valueOf(MediaType.java:119)
at com.sun.jersey.api.client.PartialRequestBuilder.type(PartialRequestBuilder.java:92)
at com.sun.jersey.api.client.WebResource.type(WebResource.java:347)
at co.example.punerto.classes.NicClient.sendData(NicClient.java:43)
at com.example.punerto.Activity.ActivityLearnLicAppointment_Tab6$uploadFrom.doInBackground(ActivityLearnLicAppointment_Tab6.java:303)
at com.example.punerto.Activity.ActivityLearnLicAppointment_Tab6$uploadFrom.doInBackground(ActivityLearnLicAppointment_Tab6.java:1)
at android.os.AsyncTask$2.call(AsyncTask.java:288)
at java.util.concurrent.FutureTask.run(FutureTask.java:237)
at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:231)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
at java.lang.Thread.run(Thread.java:818)


Please help !! Stuck on this spent 8 hours already . I also tried alternative did not worked !! If you have some alternative for this please do let me know.


Aucun commentaire:

Enregistrer un commentaire