2012-05-23 4 views
6

私はのpom.xmlで2.5.6私CXFのMavenの依存をCXF 2.6.0を使用してREST Webサービスを開発するtrynigと春だが、次のとおりです。春2.5使用REST CXFおよびSpring cxf-extension-jaxrs-bindingファイルが見つかりませんでした例外?

<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を春ファイルで私のWebサービスを宣言している:

<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ファイルの中に私のWebサービスを宣言している:

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

私はTomcat上で私のプロジェクトを展開するときに、私は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 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以外を必要としないことをお読みください。私はこれらのエラーを得た後、私は私のポンポンファイルに次の依存関係を追加したが、彼らは役に立たないのだった -

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

私はまた、ほぼすべてのチュートリアルはCXFを使用してRESTサービスを構築するための手順を詳細に理由を理解していません

<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

関連する問題