У меня возникли проблемы с передачей пользовательского объекта клиенту. Как я могу передать пользовательский объект клиенту и вернуть его в веб-сервис? Я передаю файл кусками. Я хочу знать, как я должен писать свой клиент. Я попытался передать его как MediaType.APPLICATION_JSON
в клиенте, но я не получаю никакого результата, потому что он не возвращается к веб-сервису. Ниже приведен код кода, над которым работает.Как передать пользовательский объект в REST webservice
Webservice
@POST
@Path("/fileTransfer")
@Consumes({MediaType.APPLICATION_JSON})
@Produces({MediaType.APPLICATION_JSON})
public final TransferInfomation transferInfo(final FileModel file)
{
...
}
... (некоторый код) (позволяет просто сказать syso)
FileModel Класс
public class FileModel {
private String fileID;
private DataHandler dataHandler;
/**
* Constructor.
*/
public FileModel() {
}
(предположим, сеттеры и геттеры)
(Не уверен, что веб-сервис правильный). Все еще изучая REST, я хочу знать, как должен быть клиент.
благодарит заранее.
установки значения '' setFileID' & setDataHandlder' в клиенте, то как им клиент будет? – Hash
, если вы используете JAXB (включая библиотеку в своем проекте), на стороне клиента вы просто устанавливаете объект, а затем передаете его на сервер (см. Ссылку, которую я добавил в конце моего ответа, для получения подробной информации о том, как установить клиент -side (используя jersey-client) для связи с сервером, отправляющим сообщение JSON). На стороне сервера вы делаете то же самое с полученным сообщением. Не забывайте комментировать ваши POJO с помощью '@ XmlRootElement'. – emgsilva
Настройка сообщения запроса (filem) и ответа (fileresponse) выглядит отлично ... однако вам нужно настроить клиента для общения с сервером, для чего следуйте инструкциям в этом вопросе: http://stackoverflow.com/questions/10335483/как-ду-я-пост-а-POJO-с-джерси-клиент-без вручную конвертирование-к-JSon? Lq = 1. После того, как вы попробовали это, и если у вас все еще есть проблемы, обновите исходный вопрос с полной информацией о POJO (который должен быть аннотирован аннотациями JAXB) и кодом клиента на стороне клиента и сервера. Это облегчит вам помощь. – emgsilva