Differences between revisions 1 and 2
Revision 1 as of 2005-04-04 11:06:15
Size: 2337
Comment: Axis Wiki in Japanese
Revision 2 as of 2009-09-20 22:48:56
Size: 2337
Editor: localhost
Comment: converted to 1.6 markup
No differences found!

一般的な Axis 例外 (Java)

Exception: javax.xml.rpc.ServiceException: Cannot find service: (例外: javax.xml.rpc.ServiceException: サービスが見つかりません:)

ここで起こっていることはおそらく、サービスの修飾名を正しく設定していないことでしょう。つまり名前は単純に修飾なしの文字列ではなく、名前空間の URI が含まれていないといけません。普通は、サービスに関連する WSDL を見て、サービスの QName が構築される際にtargetNamespace 属性の値が使われているか確かめればいいでしょう。

Exception: No client transport named 'null' found! (例外: 'null' という名前のクライアントのトランスポートが見つかりませんでした。)

ここで起こっていることはおそらく、エンドポイントを明示的に設定するのを忘れていたことでしょう。もしあなたのエンドポイントが http スキーマを使用するのであれば、setTargetEndpointAddress関数を使ってCallオブジェクトインスタンスに、あなたのエンドポイントが http スキーマを使用していることを設定する必要があります。多くの初心者は http に基づくサービスを使用するので、setTargetEndpointAddressを呼ぶ前にまずエンドポイントからjava.net.URLオブジェクトを作成する必要があります。

Exception: org.apache.axis.ConfigurationException: Can't find handler name:'null' (例外: org.apache.axis.ConfigurationException: 'null' という名前のハンドラが見つかりませんでした)

もし自分のハンドラを書き、それをデプロイメントディスクリプタに追加した際に、<handler> 要素の type 属性の値に java 名前空間接頭辞を忘れると、この例外を見ることになります。

例:

<handler name="myHandler" type="java:GenericHandler" /> 

java 接頭辞を付け忘れないようにしましょう。クラス名が長くなり、修飾した java クラス名が代わりにここに来ると間違って仮定してしまうことが時々あるので、これは混乱しやすいのです。

ja/axis/DealingWithCommonExceptions (last edited 2009-09-20 22:48:56 by localhost)