2012-05-23 4 views
6

나는 REST 웹 CXF 2.6.0 사용 서비스와 스프링 2.5.6 pom.xml 파일 내 CXF를 받는다는 의존성을 개발하기 위해 trynig 해요은 다음과 같습니다 스프링 2.5을 사용하여REST CXF 및 Spring cxf-extension-jaxrs 바인딩 파일을 찾을 수 없습니다. 예외입니까?

<dependency> 
    <groupId>org.apache.cxf</groupId> 
     <artifactId>cxf-rt-rs-extension-providers</artifactId> 
    <version>2.6.0</version> 
    </dependency> 

<dependency> 
    <groupId>org.apache.cxf</groupId> 
     <artifactId>cxf-rt-rs-extension-search</artifactId> 
    <version>2.6.0</version> 
</dependency> 

I'am. 6와 나는 applicationcontext.xml 스프링 파일에서 내 웹 서비스를 선언 한 :

<jaxrs:server id="restContainer" address="/sav"> 
    <jaxrs:serviceBeans> 
     <ref bean="wssav"/> 
    </jaxrs:serviceBeans> 
</jaxrs:server> 

<import resource="classpath:META-INF/cxf/cxf.xml"/> 
<import resource="classpath:META-INF/cxf/cxf-extension-jaxrs-binding.xml"/> 
<import resource="classpath:META-INF/cxf/cxf-servlet.xml"/> 

을 그리고 난이 코드에 의해 web.xml 파일에 내 웹 서비스를 선언 한 :

,
<servlet> 
    <servlet-name>CXFServlet</servlet-name> 

    <servlet-class> 
     org.apache.cxf.transport.servlet.CXFServlet 
    </servlet-class> 
    <load-on-startup>1</load-on-startup> 
</servlet> 
<servlet-mapping> 
    <servlet-name>CXFServlet</servlet-name> 
    <url-pattern>/rest/*</url-pattern> 
</servlet-mapping> 

내가 바람둥이 내 프로젝트를 배포 할 때 내가 applicationcontext.xml 파일 가져 오기 두 번째 파일이 예외 가지고 :

java.io.FileNotFoundException: class path resource [META-INF/cxf/cxf-extension-jaxrs-binding.xml] cannot be opened because it does not exist 
+0

또는 CXF가 이미 통합 된 Tomcat 인 TomEE Plus를 확인할 수도 있습니다. /tomee.apache.org –

답변

12

this에 따르면,이 파일이 더 이상 CXF 필요를 > 2.4.x.

1

동일한 오류가 발생했습니다. 나는 점점 오전 오류입니다 -

IOException parsing XML document from class path resource [META-INF/cxf/cxf-extension-jaxrs-binding.xml]; 
nested exception is java.io.FileNotFoundException: 
class path resource [META-INF/cxf/cxf-extension-jaxrs-binding.xml] cannot be opened because it does not exist. 

심지어 내가 CXF의 최신 버전은 CXF-RT-프론트 엔드-jaxrs 이외의 다른 필요하지 않습니다 읽어 보시기 바랍니다. 나는 이러한 오류를 얻었다 후, 나는 내 치어 파일에 다음 종속성을 추가하지만 그들은 전혀 도움이 있었다 - 나는 또한 거의 모든 자습서 CXF를 사용하여 REST 서비스를 구축하기위한 단계를 자세히 이유를 이해하지 못하는
<dependency> 
    <groupId>org.apache.cxf</groupId> 
    <artifactId>cxf-rt-frontend-jaxrs</artifactId> 
    <version>2.6.2</version> 
</dependency> 
<dependency> 
    <groupId>org.apache.cxf</groupId> 
    <artifactId>cxf-rt-rs-extension-providers</artifactId> 
    <version>2.6.2</version> 
</dependency> 
<dependency> 
    <groupId>org.apache.cxf</groupId> 
    <artifactId>cxf-rt-rs-extension-search</artifactId> 
    <version>2.6.2</version> 
</dependency> 

<import resource="classpath:META-INF/cxf/cxf.xml"/> 
<import resource="classpath:META-INF/cxf/cxf-extension-jaxrs-binding.xml"/> 
<import resource="classpath:META-INF/cxf/cxf-servlet.xml"/> 
1

은 CXF-확장-jaxrs-binding.xml을 가져 줄을 제거하십시오 - 당신은 (나는 아마도 어디에서나 이러한 파일을 찾을 수없는 경우) 스프링 설정에서 3 선에 따라 포함 할. 다른 2 개의 xml 파일은 cxf-X.Y.Z.jar에 있습니다. 제게 그것은 cxf-2.7.7.jar입니다.

0

META-INF/cxf/cxf-extension-jaxrs-binding.xml 파일은 아래 아티팩트에서 사용할 수 있습니다.

<groupId>org.apache.cxf</groupId> 
<artifactId>cxf-rt-frontend-jaxrs</artifactId> 
<version>2.2.7</version> 
0

applicationContext.xml에서 아래의 가져 오기가 cxf 3.1.10에서 저에게 잘 작동합니다. import resource = "classpath : META-INF/cxf/cxf-extension-jaxrs-binding.xml

관련 문제