Webservices - Axis2 ClientStub 策略错误

Posted

技术标签:

【中文标题】Webservices - Axis2 ClientStub 策略错误【英文标题】:Webservices - Axis2 ClientStub policy error 【发布时间】:2013-08-14 21:40:11 【问题描述】:

尝试使用 AXIS 生成的客户端存根调用 Web 服务。

当我运行我的独立 java 程序时

    Exception in thread "main" java.lang.NullPointerException
    at org.apache.neethi.PolicyBuilder.processOperationElement(PolicyBuilder.java:201)

存根类中的 getPolicy() 方法

return org.apache.neethi.PolicyEngine.getPolicy    (org.apache.axiom.om.OMXMLBuilderFactory.createOMBuilder(
           new java.io.StringReader(policyString)).getDocument().getXMLStreamReader(false));    

为什么会出现 NullPointerException?

我尝试像下面那样拆分代码。但仍然得到相同的 NullPointerException

 System.out.println("policy String :" + policyString);

    OMXMLParserWrapper omp = org.apache.axiom.om.OMXMLBuilderFactory.createOMBuilder(
            new java.io.StringReader(policyString));
    System.out.println("Step 2 :" + omp);

    XMLStreamReader omd = omp.getDocument().getXMLStreamReader(false);
    System.out.println("Step 3 " + omd);
    Policy policy = org.apache.neethi.PolicyEngine.getPolicy(omd);
    System.out.println("Step 4");
    return policy;

有没有人遇到过这种错误?非常感谢任何建议

【问题讨论】:

【参考方案1】:

问题已解决。存根是在防火墙后面生成的,并引发了此异常。我在防火墙之外生成了存根,它就像一个魅力

【讨论】:

以上是关于Webservices - Axis2 ClientStub 策略错误的主要内容,如果未能解决你的问题,请参考以下文章

译:初识 Axis2 Java

java如何通过eclipse安装axis2来调用webservice

如何在eclipse创建基于axis2的webservice服务端

Axis2 与旧 wsdl 文件/Web 服务的兼容性

使用 https 使用不同的 web 服务但只有一个使用证书身份验证后的 Axis2 问题

如何解决java axis 调用webservice服务器操作异常