- PR -

Webサービスの実装

投稿者投稿内容
takeshi-Web
会議室デビュー日: 2005/01/31
投稿数: 12
投稿日時: 2005-01-31 00:31
Axis1.1を用いてWebサービスを実装しています。
プロバイダのWebサービスをデプロイして、クライアントプログラムをプロキシを使って
Webサービス仕様にして、実装することはできましたが。

しかしB2Bのような通信をしたくて、3台のマシンを使い、
クライアントが、Webサービスにアクセスして、そのWebサービスが、別のwebサービスを、呼び出す。
このような仕様を実験したいのですが、
どのように実装して良いかわかりません。
Axisではそのようなことは出来ないのでしょうか。やはりBPELのようなオーケストレーションできる言語が必要なのでしょうか。
よろしくお願いを致します。

[ メッセージ編集済み 編集者: 未記入 編集日時 2005-01-31 00:32 ]

[ メッセージ編集済み 編集者: 未記入 編集日時 2005-01-31 00:33 ]

[ メッセージ編集済み 編集者: takeshi-Web 編集日時 2005-01-31 00:35 ]
uk
ぬし
会議室デビュー日: 2003/05/20
投稿数: 1155
お住まい・勤務地: 東京都
投稿日時: 2005-01-31 12:22
書かれている内容だけであれば、中間のWebサービスが最後に呼び出されるWebサービスの
「クライアント」になるだけですので、特に難しい話ではないと思います。それとB2Bの話が
どうつながるのかわかりませんが、仲介者的なWebサービスを作りたい、ということですか?
takeshi-Web
会議室デビュー日: 2005/01/31
投稿数: 12
投稿日時: 2005-02-01 14:33
Webサービスの初心者なので,
なんと表現して良いかわかりませんが、
いま実装を試みているのが,クライアントが、中間のWebサービスに値を渡し
その中間のWebサービスが自動的にもう一つのwebサービスにクライアントから受け取った値をわたす。そしてそのWebサービスが何らかの計算をした後、中間のWebサービスに返し、中間のWebサービスはクライアントに値を返す。

このような実装をAxisを用いて実装したいのですが、できません。
よろしくお願いを致します。
uk
ぬし
会議室デビュー日: 2003/05/20
投稿数: 1155
お住まい・勤務地: 東京都
投稿日時: 2005-02-01 14:48
「できません」だけでは回答のしようがありません。具体的に困っていることはなんですか?
takeshi-Web
会議室デビュー日: 2005/01/31
投稿数: 12
投稿日時: 2005-02-01 15:06
なんどもありがとうございます。

具体的にできないことは、
まず最初にローカルなマシンでJavaプログラムを作り実行しました。

次に末端になるWebサービスをAxisを用いて,デプロイしました。
そのあとWSDL2Javaを使ってプロキシプログラムを生成した後、中間に位置するWebサービスのJavaプログラムを書き直しました。そしてデプロイしようとするとデプロイ出来ません。
プロキシプログラムと中間プログラムのクラスファイルを
/usr/local/jakarta-tomcat-4.1.31/webapps/axis/WEB-INF/classes
に置いています。
この手法は間違っていますでしょうか。
uk
ぬし
会議室デビュー日: 2003/05/20
投稿数: 1155
お住まい・勤務地: 東京都
投稿日時: 2005-02-01 15:13
問題になっているのは、「中間に位置するWebサービス」ですね。
では、これを「どのような手順でデプロイ」して、「どのような現象が起きている」のですか?
takeshi-Web
会議室デビュー日: 2005/01/31
投稿数: 12
投稿日時: 2005-02-01 15:27
はい。中間に位置するWebサービスです。

手順を説明させてください。
1.末端のWebサービスを実装した(中間Webサービスから値を受け取りその値を使って計算をして中間Webサービスに値を返すもの)
2.末端プログラムを使って中間プログラムを作成するため、WSDL2Javaをした。
3.そして...ServiceLocator.javaや...SoapBindingStub.javaなど生成されたプログラムを用いて中間Webサービスと末端Webサービスが通信出来るよう中間プログラムを書き直した.
4.修正を加えたプログラムをデプロイするために中間プログラムと...ServiceLocator.classなどを
/usr/local/jakarta-tomcat-4.1.31/webapps/axis/WEB-INF/classes
においた。
そして,wsddファイルを使ってデプロイ。次にブラウザを使ってデプロイ出来たか確認すると何も表示されない。# AdminService (wsdl)も表示されていない。
WSDDファイルは主に下記しか書いておりません。
<parameter name="className" value="..."/>
<parameter name="allowedMethods" "*"/>
環境はすべてIPの異なるマシンを利用しております。

よろしくお願いを致します
uk
ぬし
会議室デビュー日: 2003/05/20
投稿数: 1155
お住まい・勤務地: 東京都
投稿日時: 2005-02-01 16:32
引用:

そして,wsddファイルを使ってデプロイ。


デプロイはAdminClientを使ったんですか? エラーは出ませんでしたか?

引用:

次にブラウザを使ってデプロイ出来たか確認すると何も表示されない。


「表示されない」というのは空白画面が表示されるということですか? このときにTomcat側
には何かエラーが出ていませんか?

引用:

WSDDファイルは主に下記しか書いておりません。
<parameter name="className" value="..."/>
<parameter name="allowedMethods" "*"/>


ほんとにこれだけしか書いてないわけではないですよね? allowledMethodが「value="*"」
になっていないのはコピーミスですか?

スキルアップ/キャリアアップ(JOB@IT)