遇到异常java.lang.NoSuchMethodError: org.apache.neethi.Constants.isPolicyElement

3
我正在通过SSL连接到一个Web服务。 我导入了证书并将其添加到Java密钥库中。然后,我使用wsdl2java创建了Web服务的客户端存根。
当我在程序中使用它并尝试调用服务时,它会抛出以下异常(异常的一部分):
Exception in thread "main" java.lang.NoSuchMethodError: org.apache.neethi.Constants.isPolicyElement(Ljavax/xml/namespace/QName;)Z
    at org.apache.axis2.util.PolicyUtil.getPolicyChildren(PolicyUtil.java:287)
    at org.apache.axis2.deployment.AxisConfigBuilder.populateConfig(AxisConfigBuilder.java:157)
    at org.apache.axis2.deployment.DeploymentEngine.populateAxisConfiguration(DeploymentEngine.java:857)
    .
    .
    .

我的代码有点像这样

public static void main(String[] args) {
    //generated by wsdl2java
    Clientstub stub = new ClientStub(endpoint); 
    .
    .

    //req is the passed parameter
    stub.requestServic(req);        

我认为我需要导入一些安全策略。如果是这样,可以有人帮助我吗(任何教程或指示)。

提前致谢。


请使用较高版本的jar包来替换较低版本的jar包,这样可以正常工作。 - Honey Ammu
2个回答

6

2
我使用W12c,并在项目的weblogic.xml中添加了以下行:

org.apache.neethi

示例:
<wls:weblogic-web-app
    xmlns:wls="http://xmlns.oracle.com/weblogic/weblogic-web-app"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/ejb-jar_3_0.xsd http://xmlns.oracle.com/weblogic/weblogic-web-app http://xmlns.oracle.com/weblogic/weblogic-web-app/1.4/weblogic-web-app.xsd">
    <wls:container-descriptor>
        <wls:prefer-application-packages>
            <wls:package-name>org.slf4j</wls:package-name>
            <wls:package-name>org.apache.neethi</wls:package-name>
        </wls:prefer-application-packages>
    </wls:container-descriptor>
</wls:weblogic-web-app>

恭喜!

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接