example - cxf rest spring
Problema de las extensiones Apache CXF RS en 2.4.0 (2)
Estoy usando Apache CXF versión 2.4.0. Estoy tratando de crear un servicio tranquilo.
El ejemplo siguiente funciona en 2.3.4 pero no funciona en 2.4.0. ¿Qué debo hacer diferente en el archivo de configuración de frijoles?
Cuando incluyo la siguiente línea xml en mi archivo de configuración de beans.
<import resource="classpath:META-INF/cxf/cxf-extension-jaxrs-binding.xml" />
Obtengo el siguiente error stacktrace:
org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Problema de configuración: error al importar definiciones de bean desde la ubicación de la URL [classpath: META-INF / cxf / cxf-extension-jaxrs-binding.xml]
Ofender recurso: ServletContext resource [/WEB-INF/beans.xml]; la excepción anidada es org.springframework.beans.factory.BeanDefinitionStoreException:
IOException que analiza el documento XML del recurso de ruta de clase [META-INF / cxf / cxf-extension-jaxrs-binding.xml]; la excepción anidada es java.io.FileNotFoundException: el recurso de ruta de clase [META-INF / cxf / cxf-extension-jaxrs-binding.xml] no se puede abrir porque no existe en org.springframework.beans.factory.parsing.FailFastProblemReporter. error (FailFastProblemReporter.java:68)
Mi dependencia de POM está por debajo. Esto funcionará para 2.3.4 pero no para 2.4.0. ¿Alguna sugerencia? ¿Esa línea de extensión xml está obsoleta o incluida en otro jar?
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-bundle-jaxrs</artifactId>
<version>2.3.4</version>
<exclusions>
<exclusion>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-server</artifactId>
</exclusion>
</exclusions>
</dependency>
Aquí está la información de CXF sobre la inclusión de cxf en primavera en la versión 2.4 y superior. http://cxf.apache.org/docs/embedding-cxf-inside-spring.html
Ya no es necesario. Con 2.4.x, la mayoría de los archivos META-INF / cxf ya no son necesarios y pueden eliminarse. Realmente, el cxf.xml es el único necesario.