[Rumble-jp-dev] アゲイン、新大会HP 構成と詳細

Zurück zum Archiv-Index

Naoki Kurosawa naoki_kuros****@ybb*****
2003年 3月 18日 (火) 10:27:24 JST


黒澤です。

浜地さんのおっしゃるとおり、この部分は、

1. rumblejp.webservicesパッケージに中央サーバ側の機能を実装し、
   Webサービスにする。
2. JBossを起動
   →すると、Webサービスのメソッドや引数が記述されたWSDLが
     取得できるようになる
3. genWSClient.batを起動すると、上記のWSDLを取得して
   rumblejp.distribute.remoteパッケージのクラス群が生成される。

という開発の流れになっています。
ちなみに、WSDLを見てみたい方は、JBossを起動して
http://localhost:8080/rumblejp/soap/Battles?wsdl
にアクセスすると見れます。
もちろん
http://robocode.ddo.jp/rumblejp/soap/Battles?wsdl
でも見れます。

L> rumblejp\distribute\remote\Battles.java
L> にsetResultsの定義を追加しておきました。
L> これでコンパイルエラーは出ませんが、問題ないですよね?

BattlesSoapBindingStub.javaの方にエラーが出ていたので、
生成しなおしました。


みなさんがrumblejp.webservicesパッケージに手を入れたとき
どうすればよいか、というのは確かに問題ですね。

やはり浜地さんのおっしゃるとおり、
生成されたクラス内にrobocode.ddo.jpというホスト名が入っています。
これは、genWSClient.batがJBossにアクセスするときのホスト名が反映される
ので、genWSClient.batを書き換えて、WSDLを取得するURLを
http://localhost/...
というように変更してしまうと、
生成されたクラス内にはlocalhostというホスト名が記入されてしまいます。

そこで、
1. JBossのHTTPポート番号を80に変更
2. hostsファイルにrobocode.ddo.jpのエントリを加えて、
   robocode.ddo.jpというホスト名で自分のマシンにアクセスされるようにする。
3. JBossを起動してgenWSClient.batを起動
とやると、正しいものが生成されます。

具体的には、
1番は、JBOSS_HOME/server/default/deploy/tomcat41-service.xml
の45行目付近 「port="8080"」を「port="80"」に変更
2番は/etc/hostsやC:\(windows or winnt)\system32\drivers\etc\hosts
ファイルに「127.0.0.1 robocode.ddo.jp」という行を追加。
という感じです。

この変更を行うと、ブラウザからもhttp://robocode.ddo.jp/rumblejp/
で自分のマシンにアクセスされるようになりますし、
分散サーバがアクセスするURLもポート番号を変更しなければならないので、
クラス生成が終わったらhostsやtomcat41-service.xmlは
元に戻しておきましょう。


-- 
Naoki Kurosawa <naoki_kuros****@ybb*****>





Rumble-jp-dev メーリングリストの案内
Zurück zum Archiv-Index