Argh! Don't use system properties, or ThreadLocals, or the like.
>> I suggest having the Handler store the data in the Axis
>> MessageContext, then read it back out in the Service.
>Can you give me an example?
In your Handler:
public void invoke(MessageContext context) throws AxisFault {
Object data = ...;
context.setProperty("MyData", data);
}
In your service method:
public foo myService(int a, String b) {
MessageContext context = MessageContext.getCurrentContext();
Object data = context.getProperty("MyData");
}
Underneath the scenes MessageContext.getCurrentContext() is actually
using a ThreadLocal to do things. But let Axis do that itself, no need
to do your own.