我是REST的新手,必须做一个POST,它接收一个嵌套对象在一个字节数组内的实体。 这是我的帖子:
@POST
@Path("/post-entity")
@Consumes({MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML})
@Produces({MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML})
public Response processEventcallback(ProcessEvent processEvent) {
System.out.println(entity.toString());
return null;
}
我这样称呼POST:
Client client = ClientBuilder.newClient();
Entity entity = new Entity ();
entity .setId("645");
entity .setKey("cqp");
entity .setVersion("1.0");
Message msg= new Message();
msg.setContent(Base64.getEncoder().encode("post test".getBytes()));
msg.setId("carl");
entity.setMsg(msg);
WebTarget target = client.target("http://localhost:8080/myRest/webapi/");
Response response = target.path("send" ).request()
.post(Entity.entity(entity, MediaType.APPLICATION_JSON));
当我在帖子中使用xml作为媒体类型时,一切正常,问题是当我使用(之前的代码中的json)时,我得到:
javax.ws.rs.ProcessingException: javax/mail/internet/MimeMultipart
...
...
Caused by: java.lang.NoClassDefFoundError: javax/mail/internet/MimeMultipart
如果我删除了消息中的字节数组,它可以正常工作
答案 0 :(得分:0)