- - PR -
axis によるWebサービスのデプロイができません。
| 投稿者 | 投稿内容 |
|---|---|
|
投稿日時: 2003-11-21 15:36
お世話になっております。TKです。
デプロイするコマンドで以下のように -lオプションをつけて実行してみました。 >java org.apache.axis.client.AdminClient -l"http://localhost:8070/axis/services/AdminService" deploy.wsdd そうすると、 Hello (wsdl) getString setString が追加されています。(portは諸事情により8070を使用しています) このサービスは文字列のset getのみの簡単なものですが、以下のようにクライアント プログラムを作成して実行したところ package hello; public class HelloAxisClient { public static void main (String[] args) throws Exception { // サービスのバインディングを取得 HelloAxis binding = new HelloAxisServiceLocator().getHello(); // セッションを有効(セッションの間、サービス側は一つのインスタンスを生成) ((HelloSoapBindingStub)binding).setMaintainSession(true); try { // サービス側のメソッドの呼び出し System.out.println(binding.getString()); binding.setString("Hello!!"); System.out.println(binding.getString()); } catch (java.rmi.RemoteException re) { re.printStackTrace(); } } } 以下のようにAXIS Falutが発生します(泣) AxisFault faultCode: {http://xml.apache.org/axis/}HTTP faultSubcode: faultString: (404)/axis/Hello faultActor: faultNode: faultDetail: {}string: return code: 404 <html><head><title>Apache Tomcat/4.1.24 - Error report</tit le><STYLE><!--H1{font-family : sans-serif,Arial,Tahoma;color : white ;background-color : #0086b2;} H3{font-family : sans-serif,Arial,Tahoma;color : w hite;background-color : #0086b2;} BODY{font-family : sans-serif,Arial,Tahoma;col or : black;background-color : white;} B{color : white;background-color : #0086b2 ;} HR{color : #0086b2;} --></STYLE> </head><body><h1> HTTP Status 404 - /axis/Hello</h1><HR size="1" noshade>< ;p><b>type</b> Status report</p><p><b>message&l t;/b> <u>/axis/Hello</u></p><p><b>description&l t;/b> <u>The requested resource (/axis/Hello) is not available.</u&g t;</p><HR size="1" noshade><h3>Apache Tomcat/4.1.24& lt;/h3></body></html> (404)/axis/Hello at org.apache.axis.transport.http.HTTPSender.readFromSocket(HTTPSender.j ava:630) at org.apache.axis.transport.http.HTTPSender.invoke(HTTPSender.java:128) at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrateg y.java:71) at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:150) at org.apache.axis.SimpleChain.invoke(SimpleChain.java:120) at org.apache.axis.client.AxisClient.invoke(AxisClient.java:180) at org.apache.axis.client.Call.invokeEngine(Call.java:2564) at org.apache.axis.client.Call.invoke(Call.java:2553) at org.apache.axis.client.Call.invoke(Call.java:2248) at org.apache.axis.client.Call.invoke(Call.java:2171) at org.apache.axis.client.Call.invoke(Call.java:1691) at hello.HelloSoapBindingStub.getString(HelloSoapBindingStub.java:104) at hello.HelloAxisClient.main(HelloAxisClient.java:13) 一難さってまた一難ですが、そもそもデプロイの時点で-lオプションの使用方法が 間違えているのかもしれませんが・・分かりません。 アドバイスをどうかお願いいたします。 TK |
|
投稿日時: 2003-11-21 16:24
お世話になっております。
TKです。 TRさんに教わったとおりにやってみましたが、 同じエラーです・・ Processing file deploy.wsdd Exception:: (401)Unauthorized 引き続き検証します。 |
|
投稿日時: 2003-11-21 16:43
ログを見る限り、サービスのURLが見つからないようです。
HelloAxisServiceLocatorにサービスのURLが埋め込まれていると思います。 正しいURLが指定されていますか? http://localhost:8070/axis/services/Helloって感じになるのでしょうか。 |
|
投稿日時: 2003-11-21 19:24
Java2WSDL の -l オプションはどのように指定しましたか?
TR さんの指摘のように、 -l"http://localhost:8070/axis/services/Hello" が正しいかと思います。 |
|
投稿日時: 2003-11-21 21:58
TKです。
いけましたーーー locatorのURLは正しく設定されていましたが wsdlを作成するときの値が間違えていました。 Keisukeさん、TRさん ありがとうございました。 なんとか週末一日出社くらいで済みそうです^^; TK |
