So I have a bean CXF accepts only this interpretation for my endpoint:
{
"contactList": [
{
"campaignId": "2",
"id":"",
"indexNumber": "",
"accountNumber": "232",
"queueNumber": "0",
"balance": 0,
"personalIdentificationNumber1": "string",
"firstName1": "string",
"lastName1": "string",
"personalIdentificationNumber2": "string",
"firstName2": "string",
"lastName2": "string",
"address": "string",
"zipCode": "string",
"city": "string",
"homePhone": "+4521",
"mobilePhone": "+45122",
"campaing": "string",
"dateForExtract": "string"
}
]
}
However the swagger feature are generating this as example:
{
"minimalContacts": [
{
"campaignId": "string",
"id": 0,
"indexNumber": "string",
"accountNumber": "string",
"queueNumber": "string",
"balance": 0,
"personalIdentificationNumber1": "string",
"firstName1": "string",
"lastName1": "string",
"personalIdentificationNumber2": "string",
"firstName2": "string",
"lastName2": "string",
"address": "string",
"zipCode": "string",
"city": "string",
"homePhone": "string",
"mobilePhone": "string",
"campaing": "string",
"dateForExtract": "string"
}
]
}
MinimalContactWrapper
@XmlAccessorType(XmlAccessType.FIELD)
@XmlRootElement(name = "contacts")
public class MinimalContactWrapper {
@XmlElementWrapper
@XmlElementRef
@Valid
@NotNull
@Size(min = 1)
private List<MinimalContact> contactList=new ArrayList<>();
public List<MinimalContact> getMinimalContacts() {
return contactList;
}
public void setMinimalContacts(List<MinimalContact> minimalContacts) {
this.contactList = minimalContacts;
}
MinimalContact
@XmlAccessorType(XmlAccessType.PROPERTY)
@XmlRootElement(name="minimalcontact")
public class MinimalContact {
@NotNull
@Size(min=1, max=240)
private String campaignId;
private Long id;
@Size(min=1, max=240)
private String indexNumber;
@Size(min=1, max=20)
@NotNull
private String accountNumber;
@Size(min=1, max=8)
private String queueNumber;
private Float balance;
@Size(min=0, max=11)
private String personalIdentificationNumber1;
@Size(min=0, max=55)
private String firstName1;
@Size(min=0, max=55)
private String lastName1;
@Size(min=0, max=11)
private String personalIdentificationNumber2;
private String firstName2;
private String lastName2;
private String address;
private String zipCode;
private String city;
@NotNull
@Size(min=0, max=20)
private String homePhone;
@NotNull
@Size(min=0, max=20)
private String mobilePhone;
private String campaing;
@NotNull
private String dateForExtract;
--
Best regards / Med venlig hilsen
Nino Martinez