Jersey @Path映射查询

时间:2014-04-30 14:35:50

标签: java rest jersey jackson

我有以下的球衣类。

@Path("/static1/static2")
public class DoStuff {

@POST
@Path("/static3")
@Consumes(MediaType.APPLICATION_XML)
@Produces("application/xml")
public Response validation(String inputXML){

所以我的网址是localhost/static1/static2/static3,我得到200

我的目标是拥有一个

的网址
localhost/static1/{variable}/static2/static3

我尝试按以下方式修改课程

@Path("/static1/{variable}/static2")
    public class DoStuff {

    @POST
    @Path("/static3")
    @Consumes(MediaType.APPLICATION_XML)
    @Produces("application/xml")
    public Response validation(String inputXML){

但是我一直在404,我做错了什么?

1 个答案:

答案 0 :(得分:1)

问题似乎是最后一个路径段static3.{format}。请尝试以下方法:

@Path("/static1/{variable}/static2")
    public class DoStuff {

    @POST
    @Path("/{segment3:static3.*}")
    @Consumes(MediaType.APPLICATION_XML)
    @Produces("application/xml")
    public Response validation(@PathParam("variable") String variable,
                               @PathParam("segment3") String segment3, 
                               String inputXML) {
       ...............
    }