Rest webservice

时间:2016-01-14 07:18:55

标签: json rest jackson wildfly pojo

我使用wildfly 10和REST并出现以下错误:

  

08:15:19,827 ERROR [org.jboss.resteasy.resteasy_jaxrs.i18n](默认   任务-22)RESTEASY002010:执行失败:   javax.ws.rs.NotSupportedException:RESTEASY003065:无法使用   内容类型

我有以下要求:

  

http://localhost:8080/MyApp/rest/myService/test?data=%7B%22MyData%22:%7B%22id%22:%223d87e735-4f88-49bd-929b-5f2b646e853e%22,%22name%22:%22myname%22%7D%7D

- >参数是:

  

数据:{"迈德特" {" ID":" 3d87e735-4f88-49bd-块929b-5f2b646e853e""名称" :" MYNAME"}}

我的服务:

@Path("/myService")
@Produces(MediaType.APPLICATION_JSON)
@Stateless
public class StammdatenRestRessource {

  @POST
  @Path("/test")
  @Consumes(MediaType.APPLICATION_JSON)
  public Response test(final MyData data) {
      System.out.println(data);
      return Response.ok().build();
  }
}

和我的POJO:

@XmlRootElement
@Entity
public class MyData{

@Id
@Column(name = "ID")
private String id;

private String name;

public MyData() {
    id = UUID.randomUUID().toString();
}

// getters & setters
}

有什么想法吗?

3 个答案:

答案 0 :(得分:1)

确保您正在发送"内容类型"标题值为" application / json":

  

卷曲-H'内容类型:application / json' http://localhost:8080/MyApp/rest/myService/test?data=%7B%22MyData%22:%7B%22id%22:%223d87e735-4f88-49bd-929b-5f2b646e853e%22,%22name%22:%22myname%22%7D%7D

答案 1 :(得分:0)

对我而言,明显的一点是id字段。值"id"不会解析为UUID对象(您​​可以尝试调用UUID.fromString()并亲自查看)。获取“真实的”UUID值并查看这是否是问题

这是ya "3d87e735-4f88-49bd-929b-5f2b646e853e"

的一个

答案 2 :(得分:0)

好的,我找到了解决方案。我必须将我的json对象放在请求体中,而不是地址。