[AXIS-2] インタフェースと実装クラスのパッケージが異なる場合に通信ができない Created: 2006-07-08  Updated: 2008-01-13  Resolved: 2006-07-10

Status: Closed
Project: S2Axis
Component/s: S2Axis2
Affects Version/s: S2Axis2 0.1.0
Fix Version/s: S2Axis2 0.2.0

Type: Bug Priority: Major
Reporter: takanori Assignee: takanori
Resolution: Fixed Votes: 0
Labels: None


 Description   

インターフェイスと実装を別のパッケージにしたいのですが、クライアント側でテストを実行すると以下のような例外がはかれます。

たとえば、
org.seasar.remoting.axis2.examples.ex01.EchoImpl

org.seasar.remoting.axis2.examples.ex01.impl.EchoImpl

におき、deploy.diconも修正します。
そして、Tomcatを起動すると、サービスのデプロイ自体は成功しますが、クライアント側のEchoTest#testEchoを実行すると以下の例外が発生してしまいます。
以下のログの通り、名前空間がミスマッチになっているみたいですがこれを回避する方法はないでしょうか?

org.apache.axis2.AxisFault: namespace mismatch require http://impl.ex01.examples.axis2.remoting.seasar.org/xsd found http://ex01.examples.axis2.remoting.seasar.org/xsd
at org.apache.axis2.description.OutInAxisOperationClient.execute(OutInAxisOperation.java:287)
at org.apache.axis2.client.ServiceClient.sendReceive(ServiceClient.java:457)
at org.apache.axis2.client.ServiceClient.sendReceive(ServiceClient.java:399)
at org.seasar.remoting.axis2.connector.AxisInOutConnector.execute(AxisInOutConnector.java:42)



 Comments   
Comment by takanori [ 2006-07-10 ]

ServiceDefにより、公開するサービスのインタフェースを指定できるようにすることで、名前空間も指定のインタフェースのものを利用するようにした。
また、サービスクラスが1つのインタフェースのみを実装している場合は、自動でそのインタフェースを公開するサービスのインタフェースとするようにした。

Generated at Mon Dec 15 07:50:36 JST 2025 using Jira 10.6.1#10060001-sha1:a6461e220f274b29ced7ac9295492f2465fe5ef5.