You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by Dimuthu <mu...@apache.org> on 2007/08/29 13:18:12 UTC

[Axis2]Problem in OMNode build method

Hi,

We have a "small problem" when the following conditions are
present.

Conditions
==========
1) Client is not code generated. It is a simple client written by hand.
2) We have a OMText node to the SOAP body, where isBinary()  and
isOptimized() are both true. MTOM is enabled.
3) We call the build() method of the SOAP Envelop, before sending the
SOAPEnvelope down the line.

Problem
=======
MTOM serialization does not happen. 

I think this is a bug in the OMNode build() method. This method does not
use OMStaxWrapper, instead it uses a ValidatingStreamReader , which
returns false on the following conditions. 

Quoting from the StAXBuilder class.
"if (isDataHandlerAware(parser) &&
     Boolean.TRUE.equals(parser.getProperty(OMConstants.IS_BINARY)))"

This results in a plain old OMText being created without the isBinary
and isOptimize properties set, when we call the build() method in
Envelope. So these properties are lost forever.

Does anybody know the solution to the problem? 

Cheers,
Dimuthu

-- 
http://wso2.org


---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org