Korzystam z usługi Jersey zarówno dla usługi, jak i dla klienta. Kiedy próbuję zadzwonić do usługi, pojawia się ten błąd:Status odpowiedzi klienta Jersey 204
Exception in thread "main" com.sun.jersey.api.client.UniformInterfaceException: GET http://localhost:8080/Maze/rest/service/overview?countryid=1 returned a response status of 204 No Content
at com.sun.jersey.api.client.ClientResponse.getEntity(ClientResponse.java:528)
at com.sun.jersey.api.client.ClientResponse.getEntity(ClientResponse.java:506)
at com.sun.jersey.api.client.WebResource.handle(WebResource.java:674)
at com.sun.jersey.api.client.WebResource.access$200(WebResource.java:74)
at com.sun.jersey.api.client.WebResource$Builder.get(WebResource.java:503)
at com.maze.client.MyClient.overviewTest(MyClient.java:34)
at com.maze.client.MyClient.main(MyClient.java:64)
Nie rozumiem dlaczego.
Oto serwis:
@GET
@Produces(MediaType.APPLICATION_JSON)
@Path("/overview")
public JSONArray getOverviewEntities(@QueryParam("countryid")String id){
JSONArray array = null;
try{
Integer countryId = Integer.parseInt(id);
ArrayList<Event> list = new ArrayList<Event>();
EventService event = new EventService();
EntityManagerSingleton.getInstance().getTransaction().begin();
list.addAll(event.getList(countryId, "country", 5));
EntityManagerSingleton.getInstance().getTransaction().commit();
for(Event ev : list){
array.add(EventService.toJSONObject(ev));
}
} catch(Exception e){
e.printStackTrace();
}
return array;
}
i to jest klient:
public static void overviewTest(){
WebResource wbr;
Client client = Client.create();
wbr = client.resource("http://localhost:8080/Maze/rest/service/overview");
JSONArray result = wbr.queryParam("countryid", "1").accept(MediaType.APPLICATION_JSON).get(JSONArray.class);
System.out.println(result.toString());
}
ja naprawdę nie mają pojęcia o tym, co może być problemem. Zdaję sobie sprawę z kolejnego pytania o pozornie identyczny temat, ale tak nie jest.
Proszę dać mi znać, jeśli czegoś brakuje lub jeśli potrzebujesz dodatkowych informacji.
Tak, to rozwiązało problem. Teraz otrzymuję status 500 (Wewnętrzny błąd serwera). Ale to chyba inne pytanie. Wielkie dzięki! – Dragos