繁体   English   中英

java.lang.NoClassDefFoundError:org / apache / cxf / interceptor / AbstractBasicInterceptorProvider

[英]java.lang.NoClassDefFoundError: org/apache/cxf/interceptor/AbstractBasicInterceptorProvider

我正在使用apache CXF3.0.4从Java应用程序中使用Web服务,我已经包含了所有必需的jar文件,但是在使用weblogic时遇到问题,但是如果我使用tomcat的话,它可以正常工作。

java.lang.NoClassDefFoundError:
org / apache / cxf / interceptor / AbstractBasicInterceptorProvider
在java.lang.ClassLoader.defineClass1(本机方法)
在java.lang.ClassLoader.defineClassCond(ClassLoader.java:631)
在java.lang.ClassLoader.defineClass(ClassLoader.java:615)
在java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
在java.net.URLClassLoader.defineClass(URLClassLoader.java:283)
被截断了。 请参阅日志文件以获取完整的stacktrace

下面是我的pom.xml文件

    <dependency>
        <groupId>org.apache.cxf</groupId>
        <artifactId>cxf-rt-frontend-jaxws</artifactId>
        <version>3.0.4</version>
    </dependency>
    <dependency>
        <groupId>org.apache.cxf</groupId>
        <artifactId>cxf-rt-transports-http</artifactId>
        <version>3.0.4</version>
    </dependency>
    <dependency>
        <groupId>org.apache.cxf</groupId>
        <artifactId>cxf-rt-ws-security</artifactId>
        <version>3.0.4</version>
    </dependency>
    <dependency>
        <groupId>xml-apis</groupId>
        <artifactId>xml-apis</artifactId>
        <version>1.0.b2</version>
        <!-- <scope>provided</scope> -->
    </dependency>

    <dependency>
        <groupId>org.apache.cxf</groupId>
        <artifactId>cxf-rt-frontend-jaxrs</artifactId>
        <version>3.0.4</version>
        <scope>provided</scope>
    </dependency>
    <dependency>
        <groupId>org.apache.cxf</groupId>
        <artifactId>cxf-api</artifactId>
        <version>2.2.3</version>
       <scope>provided</scope> 
    </dependency>

    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-orm</artifactId>
        <version>${spring.version}</version>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-webmvc</artifactId>
        <version>${spring.version}</version>
    </dependency>
    <dependency>
        <groupId>com.fasterxml.jackson.core</groupId>
        <artifactId>jackson-core</artifactId>
        <version>2.3.0</version>
    </dependency>
    <dependency>
        <groupId>com.fasterxml.jackson.core</groupId>
        <artifactId>jackson-databind</artifactId>
        <version>2.3.0</version>
    </dependency>
    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>jstl</artifactId>
        <version>1.2</version>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-tx</artifactId>
        <version>${spring.version}</version>
    </dependency>

任何帮助将不胜感激。

似乎您错过了tomcat类路径中weblogic中的cxf-api.jar。

因此,从tomcat类路径中删除jat并从pom中删除提供的范围:

<dependency>
    <groupId>org.apache.cxf</groupId>
    <artifactId>cxf-api</artifactId>
    <version>2.2.3</version>
</dependency>

我认为问题是缺少的类包含在cxf-api-2.2.3.jar中,该类标记为pom中提供的标记。

这意味着该jar位于Tomcat之下,但不在weblogic之下。

只需从提供的表格中删除您的依赖范围即可。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM