使用Java调用Web服务时,“org.apache.axis2.AxisFault:unknown”

时间:2009-12-10 16:58:46

标签: java web-services axis2

我正在尝试使用Java客户端调用Web服务。 WSDL看起来像这样:http://pastebin.com/m13124ba

我的客户:

public class Client{
    public static void main(java.lang.String args[]){
        try{
            CompileAndExecuteServiceInterfaceStub stub =
                new CompileAndExecuteServiceInterfaceStub
                ("http://192.168.1.3:8080/axis2/services/CompileAndExecuteServiceInterface");

            Compile comp = new Compile();
            comp.setArgs0("Test");
            comp.setArgs1("public class Test { public static void main(String[] args) { System.out.println(\"Hello\");}}");
            String[] classpath = {};
            comp.setArgs2(classpath);
            stub.compile(comp);

        } catch(Exception e){
            e.printStackTrace();


        }
    }

}

现在我运行客户端时会出现以下错误:

org.apache.axis2.AxisFault: unknown


at org.apache.axis2.util.Utils.getInboundFaultFromMessageContext(Utils.java:517)
at org.apache.axis2.description.OutInAxisOperationClient.handleResponse(OutInAxisOperation.java:371)
at org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:417)
at org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:229)
at org.apache.axis2.client.OperationClient.execute(OperationClient.java:165)
at de.dax.compileandexecuteclient.CompileAndExecuteServiceInterfaceStub.compile(CompileAndExecuteServiceInterfaceStub.java:184)
at de.dax.compileandexecuteclient.Client.main(Client.java:17)</blockquote>

我在我的本地计算机上试用了服务器的业务逻辑,然后就可以了。该服务创建文件和文件夹。是否允许Web服务执行此操作?我还写了一个简单的“Hello World”Web服务并将其部署到服务器上。这很好。

3 个答案:

答案 0 :(得分:3)

当您获得其中一个“未知”的AxisFaults时,请务必检查服务器日志!客户端堆栈跟踪很可能不够详细,无法跟踪错误。

我相信dax表明他在更详细的服务器端堆栈跟踪中发现了NullPointerException。它看起来像是:

org.apache.axis2.AxisFault
    at org.apache.axis2.AxisFault.makeFault(AxisFault.java:430)

    [....]

Caused by: java.lang.NullPointerException

    [....]

答案 1 :(得分:1)

从提供的日志中,我无法确定哪里出错了。尝试将Axis2的日志级别设置为“debug”(请参阅​​Axis2安装的根目录中的两个日志配置)并检查确切原因的详细信息。在传播来自webservices的错误时,Axis2往往有点稀疏。

答案 2 :(得分:0)

问题是我的服务中存在NullPointerException。