java我可以用Jersey(和MOXy)发送对象数组吗?
我想向服务器发送一个Match
数组。这是一场比赛。爪哇:
@XmlRootElement
public class Match {
public enum State {
Updated, Synced
};
@XmlElement
public int matchId;
@XmlElement
public int timeFrom;
@XmlElement
public int timeTo;
@XmlElement
public MatchConfig config; // can be null
public State state;
public Match() {
}
}
然而,当我发送一个数组时,它告诉我:
警告:/api/match JAVAClassCastException:测试。休息Match不能强制转换为javax。xml。毕 钕。贾克斯贝伦
为什么会这样
我的Servlet方法如下所示
@POST
@Path(MATCH_PATH)
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
public Match[] syncMatches(Match[] matches) {
System.out.println("received matches!");
return new Match[]{new Match()};
}
顺便说一句,将一个数组从服务器返回到客户端是可行的,同时将一个匹配对象发送到服务器也是可行的。
典型的服务器json输出是:[{"matchId":12,"timeFrom":23,"timeTo":0}]
。
我的客户发送的是这样的:[{"matchId":-1,"timeTo":-1,"timeFrom":265}]
共 (0) 个答案