Debe ponerlo en una interfaz. Por el contrario, mi práctica me obliga a ponerlo en una interfaz, porque mi cliente y mi servidor comparten la misma definición de jax-rs.
Me inclino a usar jax-rs para REST-RPC.
El motivo de REST es permitir que una API de URL de servicio web sea útil y "clientable" por cualquier marco de programación.
El uso de jax-rs nos restringe a usar java en el lado del servidor.
El uso de jax-rs para REST-RPC nos restringe al uso de java tanto en el servidor como en el lado del cliente.
¿Qué es REST-RPC?
En una actitud de explicación no demasiado complicada, RPC es una forma de invocar una función/método en el cliente, que cuando se envía a través del cable es atendido por el servidor de modo que existe la misma función/método en el servidor .
RestEasy le permite usar la definición de jax-rs en el lado del cliente para llamar a la misma función atendida en el lado del servidor.
RestyGWT, también, con algunas modificaciones a la interfaz para especificar un método de devolución de llamada le permitiría (algo) utilizar la definición de jax-rs tanto del lado del cliente como del servidor. Simplemente tiene que escribir una secuencia de comandos para mover el tipo de devolución al argumento de tipo del método de devolución de llamada.
Podría preguntarse por qué restringirnos a realizar java en ambos lados? ¿Eso no derrotaría uno de los propósitos en la vida de REST? Creo que jax-rs REST-RPC es una ruta conveniente para implementar y probar un servicio jax-rs. Si quisiera implementar un servicio jax-rs, probablemente lo haría inicialmente en Java en ambos lados de todos modos. Y luego, cuando su servicio despegue, podría comenzar a escribir clientes PHP o Python.
Escribir sus jax-rs en archivos de interfaz le permitiría publicar su interfaz para las operaciones del lado del cliente. Esto es especialmente cierto para REST-RPC. Sin embargo, podría ejecutar enunciado sobre su definición de jax-rs para publicar su API de servicio web a programadores no java.
Tengo algunas excursiones en curso sobre este tema ... http://h2g2java.blessedgeek.com/2011/11/gwt-with-jax-rs-aka-rpcrest-part-0.html.
pregunta similar aquí: http://stackoverflow.com/questions/11427283/benifits-of-using-java-interfaces-in-jaxrs-web-services – Kirby