2009-08-28 6 views
0

Je dois mapper une URL REST Webservice comme "http://server:8080/application/service/customer/v1" à la méthode createCustomer en classe CreateCustomerBean ..URL Cartographie d'un repos Webservice

Je l'ai fait les applications suivantes ..

*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> 

Maintenant, la problème est le chemin restant de l'url ("http://server:8080/application/service/customer/v1") est v1 reste tout est mappé et je dois spécifier 2 attributs @Path un au niveau de la classe CreateCustomerBean et un à la méthode createCustomer dans ce bean .. donc je dois ajouter "créer" avant v1 .. et l'URL devient

@Path (/ créer /)

CreateCustomerBean {

@Path (/ v1)

createClient (demande String) {}

}

http://server:8080/application/service/customer/create/v1/ qui i Je ne veux pas .. est-il possible d'éviter l'attribut @Path au niveau de la classe et de diriger toute la requête vers la méthode createCustomer.

Répondre

1

Dans votre code, vous pouvez ré-écrire le code comme ceci

@Path ("/v1") 

CreateCustomerBean{ 

@Post 
createClient(String request){ } 

} 

Tant que vous spécifiez l'attribut POST toute la demande de poste doit être réorientée vers la méthode respective.

Espérons que ça aide. Cheers