I took over a Java project using AXIS2 to receive SOAP requests, process them and forward the request to soap based backend systems.
When the requests are processed in the main thread, the requests sent to the backend system look fine. However when i execute the requests to the backend system in parallel using either a @scheduled method or a ThreadPoolExecutor, the transmitted XML looks different (the "addressing" part of the XML is missing).
It looks as if the axis modules are not loaded (i.e, the addressing module). I have debugged the request execution and i see that there are no modules loaded. As a consequence, a strict backend server complains with "org.apache.axis2.AxisFault: Must Understand check failed for header http://www.w3.org/2005/08/addressing : Action" and does not accept the request.
As i said, it works when i execute the backend request sequentially, but when using background threads, the axis2 configuration seems to be different.
Does anyone has any input/idea? I am no expert on AXIS2 and i guess i miss a crucial part. Best Regards C