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

以下示例在2.3.4中可用,但在2.4.0中不可用。我应该在bean配置文件中做些什么?

当我在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-extension-jaxrs-binding.xml]

令人反感的资源:ServletContext
资源[/WEB-INF/beans.xml];嵌套的
例外是
org.springframework.beans.factory.BeanDefinitionStoreException:

IOException从解析XML文档
类路径资源
[META-INF / cxf / cxf-extension-jaxrs-binding.xml];
嵌套异常为
java.io.FileNotFoundException:类
路径资源
[META-INF / cxf / cxf-extension-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.4.x,不再需要大多数META-INF / cxf文件,可以将其删除。实际上,仅需要一个cxf.xml。

关于rest - 2.4.0中的Apache CXF RS扩展问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6349424/

10-13 06:24