Hi Michele,

the easiest thing is to put the required modules (e.g. addressing.mar) in the classpath, and create the ConfigurationContext like this:

ConfigurationContext ctx = ConfigurationContextFactory.createConfigurationContextFromFileSystem ( null, null );

But beware: You MUST NOT have any whitespaces in the class path!

The alternative is to have a fixed directory, e.g.:

        ConfigurationContext ctx =
ConfigurationContextFactory.createConfigurationContextFromFileSystem ( "/axis2", null );

THe second step looks like this:
_serviceClient.engageModule( new QName ( org.apache.axis2.Constants.MODULE_ADDRESSING ) );

I have put this kind of code in my generated client stub for convenience.

HTH,
Michel


On 21 Apr 2006, at 15:34, Michele Mazzucco wrote:

Hi Deepal,

could you explain me what do you mean in step 1?

Thanks,
Michele

Deepal Jayasinghe wrote:
You have to engage addressing module in the client if you are trying to
invoke a service using dual channel. You can do that as follows
  1 Create a ConfigurationContext using a repository witch contains
addressing module in it
  2. Then engage addressing module to ServiceCleint before invoke the
service
     (sc.engageModule(new QName("addressing")))
Michele Mazzucco wrote:
Hi all,

I've deployed Axis 2 (0.95) on Tomcat 5.5.15. I'm trying to execute a
slightly modified version of the EchoNonBlockingDualClient example,
but unfortunately it doesn't work.
The client throws the following exception

org.apache.axis2.AxisFault: In order to use two transport channels,
WS-Addressing module must be engaged

but the "addressing" module is enabled in
%CATALINA_HOME%\webapps\axis2\WEB-INF\conf\axis2.xml (and in fact,
according to the Axis 2 web administration tool, it seems to be
deployed).

Any suggestion is welcome.

Thanks in advance,
Michele



Reply via email to