java cxf Web服务客户端中的java.lang.VerifyError : org. bouncycaSTLe.asn1.x500.X500Name

标签 java spring soap cxf

有人可以帮我解决这个问题吗?当我尝试从 SOAP Web 服务获取响应时,出现以下错误跟踪:

java.lang.VerifyError: class org.bouncycastle.asn1.x500.X500Name overrides final method equals.(Ljava/lang/Object;)Z
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:756)
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:468)
    at java.net.URLClassLoader.access$100(URLClassLoader.java:74)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:369)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:363)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:362)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:355)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:264)
    at org.apache.wss4j.common.crypto.CryptoBase.<clinit>(CryptoBase.java:71)
    at org.apache.wss4j.common.crypto.CryptoFactory.getInstance(CryptoFactory.java:127)
    at org.apache.wss4j.dom.handler.WSHandler.loadCrypto(WSHandler.java:945)
    at org.apache.wss4j.dom.handler.WSHandler.loadSignatureCrypto(WSHandler.java:863)
    at org.apache.wss4j.dom.handler.WSHandler.doSenderAction(WSHandler.java:152)
    at org.apache.cxf.ws.security.wss4j.WSS4JOutInterceptor.access$100(WSS4JOutInterceptor.java:54)

我认为这与 pom.xml 文件上的一些问题有关,我使用的是 apache.cxf 3.1.11 版本:

<artifactId>cxf-rt-frontend-jaxws</artifactId>
    <artifactId>cxf-rt-transports-http</artifactId>
    <artifactId>cxf-rt-ws-security</artifactId>
    <artifactId>cxf-rt-ws-policy</artifactId>
and apacheCommons 3.5 version
    <artifactId>commons-lang3</artifactId>

该项目还:

<spring.version>3.1.0.RELEASE</spring.version>
<spring-framework.version>3.1.0.RELEASE</spring-framework.version>
<spring-security.version>3.1.0.RELEASE</spring-security.version>

提前致谢。

最佳答案

这对某人来说可能是有用的,我在我的项目中使用了同一库的两个版本:bcprov-jdk15on 和 bcprov-jdk14on。

-bcprov-jdk15on 包含在 cxf-rt-ws-security 中 和 -bcprov-jdk14on 包含在 iText/jasperreports 中

解决方案只是从我的 pom.xml 中省略 bcprov-jdk14on ,因为实际上我不需要它

关于java cxf Web服务客户端中的java.lang.VerifyError : org. bouncycaSTLe.asn1.x500.X500Name,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60512824/

相关文章:

java - Android:定位图像?

java - 如何在 Spring 中使用注释验证并从属性文件中获取错误消息?

api - 如何使用 API 检索任何 Salesforce 对象的 ListView ?

java - Mule MEL 用法和 ExceptionUtils.containsType(exception, type)

java - 如何为所有测试初始化​​一次 Spring applicationContext

java - 尝试创建一个文件来保存图像Java

java - 使用 XML 参数 UTF-8 Java 发送 SOAP 请求

java - 运行时通过条件进行依赖注入(inject)

spring - 在 Spring 中实例化泛型类 bean 的问题

java - 从 SOAP 请求中删除命名空间