I'm trying to add the SOAP header in the SOAP message using SAAJ. I use Axis2 SAAJ implementation for this. But the SOAP message produced by Axis2 isn't really what I want. It seems that in every child element, there is always additional namespace declaration, i.e. xmlns:axis2ns1, xmlns:axis2ns2. With GlassFish SAAJ implementation, it's able to produce the correct SOAP message.