私はこのチュートリアルのすべてのステップを正確に実行しました(今のところEclipseでこれを機能させたいだけなので、ステップ4をスキップすることを除いて)。
各ソフトウェアの正確なバージョン(Eclipseヘリオ、軸2 1.5.2など)を注意深く使用しました。私はこれをmacosx 10.7.5で実行しており、チュートリアルのようにWindowsで実行しています。
とにかく、テストクライアントを作成するステップ5までは、すべてうまくいきます。ウィザードを介してクライアントを作成することはできますが、このURLをポイントした場合に限ります。
localhost:8080/MyFirstWebService/services/FirstWebSertice?wsdl
チュートリアルではこれの代わりに
http://localhost:8080/axis2/services/FirstWebService?wsdl
その後、FirstWebServiceStub.javaとFirstWebServiceCallbackHandler.javaという2つのクラスは生成されませんが、代わりに次の図に示すいくつかのクラスが生成されます。
これは大きな矛盾ですか?私は何か間違ったことをした?生成されたクラスで動作させるために、チュートリアルからこのコードをどのように翻訳する必要がありますか?
package com.sencide;
import java.rmi.RemoteException;
import com.sencide.FirstWebServiceStub.AddTwoNumbers;
import com.sencide.FirstWebServiceStub.AddTwoNumbersResponse;
public class TestClient {
public static void main(String[] args) throws RemoteException {
FirstWebServiceStub stub = new FirstWebServiceStub();
AddTwoNumbers atn = new AddTwoNumbers();
atn.setFirstNumber(5);
atn.setSecondNumber(7);
AddTwoNumbersResponse res = stub.addTwoNumbers(atn);
System.out.println(res.get_return());
}
}