Я делаю остальные веб-сервисы, мой код:
@Path("/add")
@POST
@Produces(MediaType.APPLICATION_JSON)
public Response addMembers(List<GroupMemberMap> groupMemberMaps){
String message = "";
System.out.println("Inside addMembers of class "+this.toString());
try {
DBConnection.insertMembers(groupMemberMaps);
message = "Member(s) added";
return Response.status(Status.CREATED)
.entity(message)
.type(MediaType.TEXT_PLAIN)
.build();
} catch(SQLException sqle){
System.out.println("addMembers catch sqle");
message = "A problem occured while adding members : "+sqle.getMessage();
return Response.status(Status.INTERNAL_SERVER_ERROR)
.entity(message)
.type(MediaType.TEXT_PLAIN)
.build();
}
catch (Exception e) {
// TODO Auto-generated catch block
System.out.println("Inside addMembers catch "+e.getMessage());
message = "A problem occured while adding members : "+e.getMessage();
return Response.status(Status.INTERNAL_SERVER_ERROR)
.entity(message)
.type(MediaType.TEXT_PLAIN)
.build();
}
}
но когда я называю это этим Json:
[
{
"userId":"3",
"groupId":"4"
}
]
Я получаю следующее исключение:
javax.servlet.ServletException: org.codehaus.jackson.map.exc.UnrecognizedPropertyException: нераспознанное поле «userId» (класс com.tazligen.model.GroupMemberMap), не помеченное как игнорируемое в [Источник: org.apache.catalina.connector. КойотИнпутСтрим@14ec141; строка: 2, столбец: 15] (через цепочку ссылок: com.tazligen.model.GroupMemberMap["userId"])
Мой класс модели GrouMemberMap:
package com.tazligen.model;
@XmlRootElement
public class GroupMemberMap {
private String userId;
private String groupId;
public String getUserid() {
return userId;
}
public void setUserid(String userId) {
this.userId = userId;
}
public String getGroupId() {
return groupId;
}
public void setGroupId(String groupId) {
this.groupId = groupId;
} }
Я пробовал другой метод, подобный этому:
@Path("/membertest")
@POST
public String test(List<User> members){
return "Test subresource members working";
}
с json
[{
"userId":"3",
"userName":"John"}]
но это работает нормально :/
Нужна помощь.