Я вызываю запрос на отдых через клиент JAX-RS, используя Джерси 2.0
User request = new User("1","ABC");
webTarget = client.target(strRestURL).path("Users");
Invocation.Builder invocationBuilder = webTarget.request(MediaType.APPLICATION_XML);
Response setUserResponse = invocationBuilder.post(Entity.entity(request, MediaType.APPLICATION_XML));
String resp = setUserResponse.readEntity(String.class);
Класс модели на стороне клиента выглядит следующим образом:
import java.io.Serializable;
import javax.xml.bind.annotation.XmlRootElement;
@XmlRootElement(name = "request")
public class User {
private static final long serialVersionUID = 1L;
private String id;
private String Name;
public String getId() {
return id;
}
public void setId(String id) {
this.id= id;
}
public String getName() {
return Name;
}
public void setName(String name) {
this.Name= name;
}
}
Реализация Rest WS:
@POST
@Path("/User")
@Consumes({MediaType.APPLICATION_XML})
@Produces({MediaType.APPLICATION_XML})
public HSServiceResponse setUsers(final User model, @Context HttpServletRequest request) throws IllegalArgumentException, IllegalAccessException {
Сторона сервера пользователя ресурса:
import java.io.Serializable;
import javax.xml.bind.annotation.XmlRootElement;
@XmlRootElement(name = "request")
@XmlAccessorType(XmlAccessType.NONE)
public class User {
private static final long serialVersionUID = 1L;
@XmlElement
private String id;
@XmlElement
private String Name;
public String getId() {
return id;
}
public void setId(String id) {
this.id= id;
}
public String getName() {
return Name;
}
public void setName(String name) {
this.Name= name;
}
}
Здесь атрибут Name
класса ресурсов на стороне сервера получает значение как null
при получении почтового запроса. Однако параметр id
правильно отображается.
Если я изменю параметр Name
на name
в реализации класса ресурсов на стороне сервера. Это будет работать отлично. Однако мое требование состоит в том, чтобы сохранить оставшийся параметр только как имя («N» заглавная), а не имя («n» маленькое).
Как я могу отправить запрос от клиента Джерси на карту Name
вместе с id
.
Любая помощь приветствуется!