Мы хотели бы создать «WebService», которые возвращают список определенных объектов. И мы хотели бы назвать этот веб-сервис из другой java-программы библиотекой клиентов apache http.Spring MVC @ResponseBody возвращает список
В настоящий момент, если мы вызываем веб-сервис из Firefox, появляется страница ошибки 406.
Нужно ли использовать JSON или XML для переноса списка? Как это сделать и как получить список с apache http-клиентами?
спасибо.
[EDIT]
Единственное, что работает, чтобы создать некоторые объекты с JAXB аннотации, чтобы сериализовать в XML.
@XmlRootElement(name = "person")
public class Person {
private String id;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
}
@XmlRootElement(name = "persons")
public class PersonList {
@XmlElement(required = true)
public List<Person> persons;
public List<Person> getData() {
return persons;
}
public void setData(List<Person> persons) {
this.persons = persons;
}
}
@RequestMapping(value = "/hello.html", method = RequestMethod.GET, produces = "application/xml")
@ResponseBody
public ResponseEntity<PersonList> hello() {
PersonList test = new PersonList();
List<Person> rep = new ArrayList<Person>();
Person person1 = new Person();
person1.setId("1");
Person person2 = new Person();
person2.setId("2");
rep.add(person1);
rep.add(person2);
test.setData(rep);
// return test;
HttpHeaders responseHeaders = new HttpHeaders();
List<MediaType> medias = new ArrayList<MediaType>();
medias.add(MediaType.ALL);
responseHeaders.setAccept(medias);
return new ResponseEntity<PersonList>(test, responseHeaders, HttpStatus.OK);
}
Я попытался с производством и вернуться непосредственно к объекту, но по-прежнему ошибки 406. XML + ResponseEntity работает.
Это очень странная причина, по которой я увидел пример, очень простой, когда объект преобразован в json и появляется в веб-браузере.
Итак, теперь я должен понять, как получить ответ и преобразовать XML в субъект ...
Вы действительно прочитали [это] (http://stackoverflow.com/q/14251851/696632)? –
спасибо. я постараюсь в тестовом проекте ... – MychaL