-1

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 サービスを作成し、サーバーにデプロイしました。これはうまくいきました。

4

3 に答える 3

3

これらの「不明な」AxisFaults のいずれかを取得した場合は、必ずサーバー ログを確認してください。ほとんどの場合、クライアント側のスタック トレースは、エラーを追跡するのに十分なほど詳細ではありません。

dax は、より詳細なサーバー側のスタック トレースで NullPointerException を見つけたことを上記で示していると思います。次のようになります。

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

    [....]

Caused by: java.lang.NullPointerException

    [....]
于 2010-11-10T13:18:04.897 に答える
1

提供されたログから、何が問題なのかを判断できません。Axis2 のログ レベルを「debug」に設定し (Axis2 インストールのルート ディレクトリにある 2 つのログ構成を参照)、正確な原因の詳細を確認してください。Axis2 は、Web サービスからのエラーを伝搬する際に少しまばらになる傾向があります。

于 2009-12-10T21:27:31.377 に答える
0

問題は、私のサービスに NullPointerException があったことでした。

于 2009-12-11T19:06:39.663 に答える