Джерси, Как сделать пост-запрос, создав список объектов в формате json? - PullRequest
0 голосов
/ 03 июня 2019

У меня есть объект

@XmlRootElement
public class Document {

private String docCode;
private String status;

public Document(){}
//Getters and setters   
}

Мне нужно создать почтовый запрос для отправки списка вышеуказанного объекта: Я использую класс-оболочку:

@XmlRootElement(name = "bflDocuments")
@XmlAccessorType(XmlAccessType.FIELD)
public class BflDocumentData {

@XmlElement
private  List<BflDocument> documents;

//Getters and setters
}

Код клиента, который используется для создания почтового запроса:

Client client = ClientBuilder.newClient();
String baseURL = "http://localhost:8080/SampleRestService/webapi/documents/";
WebTarget postListWebTarget = client.target(baseURL).path("/createList").path("/jsontest");
List<Document> list = new ArrayList<Document>();
list.add(new BflDocument("Code3","Status1"));
list.add(new BflDocument("Code4","Status2"));
list.add(new BflDocument("Code5","Status3"));
DocumentData docs = new DocumentData();
docs.setDocuments(list);
Response response = postListWebTarget.request(MediaType.APPLICATION_JSON).post(Entity.json(docs));
System.out.println(response.getStatus());

Приведенный выше подход создает полезную нагрузку JSON, как показано ниже:

{"documents":[{"docCode":"Code1","status":"Status1"},{"docCode":"Code2","status":"Status2"}]}

Но необходимая полезная нагрузка JSON:

[{"docCode":"Code1","status":"Status1"},{"docCode":"Code2","status":"Status2"}]

Как изменить полезную нагрузку JSON в соответствии с требованием? Заранее спасибо.

...