URL映射Rest Web服务

时间:2009-08-28 04:24:32

标签: rest jax-rs

我必须映射一个REST Web服务URL,例如“http://server:8080/application/service/customer/v1” 在CreateCustomerBean类中创建createCustomer方法..

我做了以下映射..

  *Web.xml*
    <servlet-mapping>
    <servlet-name>RestiveServlet</servlet-name>
    <url-pattern>/service/*</url-pattern>
    </servlet-mapping>

*Rest-Config.xml*
<jaxrs:server address="/customer/"
<jaxrs:serviceBean>
<ref bean="CreateCustomerBean"/>
</jaxrs:serviceBean>
</jaxrs:server>

现在问题是url的剩余路径(“http://server:8080/application/service/customer/v1”)是v1 rest all被映射,我必须在CreateCustomerBean类级别指定2个@Path属性,在createCustomer方法中指定一个那个bean ..所以我必须在v1之前附加“create”而url变成

@Path(/ create /)

CreateCustomerBean {

@Path(/ V1)

createClient(String request){ }

}

我不想要的

http://server:8080/application/service/customer/create/v1/ ..是否有办法避免类级别的@Path属性并将所有请求指向createCustomer方法。

1 个答案:

答案 0 :(得分:1)

在您的代码中,您可以重写这样的代码

@Path ("/v1")

CreateCustomerBean{

@Post
createClient(String request){ }

}

只要您指定POST属性,所有post请求都应该重定向到相应的方法。

希望它有所帮助。 干杯