Исключение при возврате списка обратно из спокойного веб-сервиса - PullRequest
0 голосов
/ 19 марта 2012

Это мой метод обслуживания ..

@Produces({ "application/xml" })
@GET

  public List<Customer> getCustomers() {
    return hd.getAllCustomers();
  }

А это мой код на стороне клиента.

Client c=Client.create();
        webResource= c.resource(getBaseURI());


        List<Customer> list=webResource.path("customers").type(MediaType.APPLICATION_XML).get(List.class);
        System.out.println(list.isEmpty());

Но когда я его выполняю, он выдает мне следующее исключение:

com.sun.jersey.api.client.ClientHandlerException: A message body reader for Java class java.util.List, and Java type interface java.util.List, and MIME media type application/xml was not found

Не могли бы вы помочь мне разобраться с этим? Я новичок в спокойных веб-сервисах

Ответы [ 2 ]

0 голосов
/ 09 марта 2013

Вам необходимо добавить следующее в свой класс Customer:

import javax.xml.bind.annotation.XmlRootElement;

    @XmlRootElement
    public class Customer {
0 голосов
/ 19 марта 2012

Вы пытаетесь вернуть объект List в результате повторного запроса? Насколько я знаю, это невозможно.

Даже если это не так, аннотация @Produces используется для указания типов или представлений мультимедиа MIME, которые ресурс может создавать и отправлять обратно клиенту. То есть, если вы скажете, что он создаст xml, и попытаетесь вернуть список.

...