Hi
there was a thread a few weeks ago (wss4j and axis2) about client problems with security.mar in [0.94].

The conclusions seemed to be:
1. make sure both the client and the service have a correctly configured repository with security.mar in the modules directory, the required jars in the lib directory and an axis2.xml with a module ref for the security module and the required security parameters.
2. explicitly specify the repository location in the client code

Doing all this helped a great deal, but I'm a bit confused too see that my client now throws

java.lang.ClassNotFoundException: org.apache.ws.security.transform.STRTransform

I can see that this class is in wss4j-SNAPSHOT.jar, which in turn is in my security.mar in the modules directory. Extracting the jar into the lib directory seems to solve the problem, but presumably that isn't the right thing to do?

The client code to set the configurationContext seemed to be for a version other than 0.94. My attempt looks like this:

ConfigurationContextFactory ccf = new ConfigurationContextFactory();
ConfigurationContext ctx = ccf.createConfigurationContextFromFileSystem("C:/axis2");
 _serviceClient = new org.apache.axis2.client.ServiceClient(ctx, _service);

(Just to get things working, I dropped this straight into the PurchasingStub constructor generated by wsdl2java. C:/axis2 is where I unzipped axis. It contains axis2.xml and subdirectories lib, modules etc.)

The client classpath includes all the jars in the lib directory, but I haven't set anything else specifically in the environment when the client runs.

Any help gratefully received!
Cheers
Rob

Reply via email to