¿Existe un marco, biblioteca o técnica que combine JAX-RS y JAX-WS (o funcionalidad equivalente) en un servicio combinado de forma similar al uso de dos puntos finales (un SOAP y uno RESTO) para el mismo servicio en WCF?JAX-RS y JAX-WS combinados
Respuesta
Apache CXF puede hacer el trabajo. Lea más al http://cxf.apache.org/docs/frontends.html
Complemento a la respuesta de Mikhail, ejemplo de la configuración de CXF. Más información se encuentra en http://cxf.apache.org/docs/jax-rs-and-jax-ws.html#JAX-RSandJAX-WS-JAXRSandJAXWS
<!-- JAX-RS -->
<jaxrs:server id="customerService" address="/">
<jaxrs:serviceBeans>
<ref bean="customerService" />
</jaxrs:serviceBeans>
</jaxrs:server>
<!-- JAX-WS -->
<jaxws:endpoint implementor="#customerService"
address="/CustomerWorld" wsdlLocation="..."/>
<bean id="customerService" class="demo.jaxrs.server.CustomerService" />
Actualización: Peter Szanto creó un proyecto experto en https://github.com/ExampleDriven/cxf-example
Es posible con una configuración de Tomcat estándar. Solo use URL separadas para los servicios. Decidí poner el servicio JAX-WS detrás de "SOAP /" y los demás detrás de letras minúsculas. Si desea usar "descansar" en la URL, es aún más fácil, pero no tan agradable para los usuarios finales. No olvides agregar sun-jaxws.xml también. Dejé `init-params ya que son útiles para URL normalizadas. Puedes soltarlos todos si lo deseas.
<?xml version="1.0" encoding="UTF-8"?>
<web-app
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
id="webapp"
version="2.5">
<display-name>displayname</display-name>
<filter>
<filter-name>rest</filter-name>
<filter-class>com.sun.jersey.spi.container.servlet.ServletContainer</filter-class>
<init-param>
<param-name>com.sun.jersey.config.property.packages</param-name>
<param-value>thepackage</param-value>
</init-param>
<init-param>
<!-- enables processing by JSPs if not JAX-RS handler is registered -->
<param-name>com.sun.jersey.config.feature.FilterForwardOn404</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>com.sun.jersey.config.feature.CanonicalizeURIPath</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>com.sun.jersey.config.feature.NormalizeURI</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>com.sun.jersey.config.feature.Redirect</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>rest</filter-name>
<url-pattern>/firstresource/</url-pattern>
<url-pattern>/secondresource/</url-pattern>
</filter-mapping>
<listener>
<listener-class>
com.sun.xml.ws.transport.http.servlet.WSServletContextListener
</listener-class>
</listener>
<servlet>
<servlet-name>soap</servlet-name>
<servlet-class>
com.sun.xml.ws.transport.http.servlet.WSServlet
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>soap</servlet-name>
<url-pattern>/SOAP</url-pattern>
</servlet-mapping>
<session-config>
<session-timeout>120</session-timeout>
</session-config>
</web-app>
- 1. PRISM y Caliburn combinados
- 2. java: instanceof y cast combinados?
- 3. Enumerados y cuadros combinados en C#
- 4. Sass y selector de niños combinados
- 5. Comprensión de listas y dict combinados
- 6. Cómo utilizar CXF, JAXRS y almacenamiento en caché HTTP
- 7. jaxws 2.1.5 en weblogic 10.3.1 en lugar de preinstalados jaxws 2.1.1?
- 8. Cómo generar métodos equals() y hashcode() usando wsimport en jaxws
- 9. Error listenerStart - JaxWS - JBoss as 7
- 10. Rails 3: Validar valores combinados
- 11. jQuery seleccionable interfaz de usuario y se puede ordenar combinados
- 12. Optimización de JaxRS/Jackson para excluir nulos, listas vacías, matrices
- 13. java: RPC/WSDL codificados no se admiten en JAXWS 2.0
- 14. SDK de iOS: Campos de texto combinados
- 15. enumeración de cálculo de referencias en XML utilizando JAXB y JAXWS Anotaciones
- 16. SOAP/JSON/XML combinados en WCF, usando UriTemplate
- 17. Par de valores clave combinados en JavaFX 2
- 18. Búsqueda de Entity Framework 4 en los campos combinados
- 19. ¿Cómo usar fragmentos combinados alternativos en Visio 2007?
- 20. Flujo de trabajo de Git adecuado para sistemas operativos combinados y códigos privados?
- 21. JFreeChart: ¿es posible combinar una barra apilada y un gráfico de líneas combinados?
- 22. ¿Qué fuente de datos combinados debería usar para Spring 3.1.0, Hibernate 4.0.1.Final y MySQL 5.1?
- 23. ¿Cómo puedo obtener todos los parámetros de consulta en Jersey JaxRS?
- 24. CXF JAXRS | Los tipos de respuesta complejos no están presentes en el wadl generado
- 25. Deshabilitar clic derecho en la ventana emergente "Silverlight" en los cuadros combinados
- 26. ¿Cómo puedo habilitar/deshabilitar los cuadros combinados de la interfaz de usuario jQuery?
- 27. Hacer que los cuadros combinados de WPF llenen un ancho de columna completo
- 28. dos cuadros combinados con el mismo CollectionViewSource ItemSource actualizan entre sí
- 29. ¿Cómo obtengo los cuadros combinados DataGridView para mostrar su lista desplegable con un solo clic?
- 30. WSIT, Maven y wsimport - ¿Pueden funcionar juntos?