Apache CXF RS Extensions在2.4.0中发布

时间:2011-06-14 20:05:19

标签: rest cxf

我使用的是Apache CXF 2.4.0版。我正在尝试创建一个Restful服务。

以下示例适用于2.3.4,但在2.4.0中不起作用。我应该在beans配置文件中做些什么?

当我在bean配置文件中包含以下xml行时。

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

我收到以下stacktrace错误:

  

org.springframework.beans.factory.parsing.BeanDefinitionParsingException:   配置问题:失败   从URL导入bean定义   地点   [类路径:META-INF / CXF / CXF延伸-JAXRS-binding.xml]

     

攻击资源:ServletContext   资源[/WEB-INF/beans.xml];嵌套   例外是   org.springframework.beans.factory.BeanDefinitionStoreException:

     

从中解析XML文档的IOException   类路径资源   [META-INF / CXF / CXF延伸-JAXRS-binding.xml];   嵌套异常是   java.io.FileNotFoundException:class   路径资源   [META-INF / CXF / CXF延伸-JAXRS-binding.xml]   不能打开,因为它没有   存在于   org.springframework.beans.factory.parsing.FailFastProblemReporter.error(FailFastProblemReporter.java:68)

我的POM依赖关系如下。这适用于2.3.4但不适用于2.4.0。有什么建议?该xml扩展行是否已弃用或包含在另一个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>

2 个答案:

答案 0 :(得分:30)

不再需要了。使用2.4.x,不再需要大多数META-INF / cxf文件,可以将其删除。真的,cxf.xml是唯一需要的。

答案 1 :(得分:1)

这是关于在版本2.4及更高版本中将cxf嵌入弹簧内的CXF信息。 http://cxf.apache.org/docs/embedding-cxf-inside-spring.html