Hi Lorenzo, Can you please open a JIRA issue [1] for this problem with the following additional information:
* The Axiom version you are using. * A test case that reproduces the problem. Thanks, Andreas [1] https://issues.apache.org/jira/browse/WSCOMMONS On Wed, Jul 14, 2010 at 17:29, Cencio1980 <[email protected]> wrote: > Hi all, > > i have a servlet that works on SOAP 1.1 Message , but usually doesn't need > to access to soap:Body content. > i obtain an org.apache.axiom.soap.impl.dom.SOAPMessageImpl in this way: > > XMLStreamReader xmlStreamReader = > XMLInputFactory.newInstance().createXMLStreamReader(((HttpServletRequest) > req).getInputStream()); > org.apache.axiom.soap.SOAPFactory mf = new > org.apache.axiom.soap.impl.dom.soap11.SOAP11Factory(); > org.apache.axiom.om.OMXMLParserWrapper parser = new > StAXSOAPModelBuilder(xmlStreamReader,mf,null); > org.apache.axiom.soap.impl.dom.SOAPMessageImpl soapMessage = > (org.apache.axiom.soap.impl.dom.SOAPMessageImpl) > ((StAXSOAPModelBuilder)parser).getSoapMessage(); > > then i tryed to add an HeaderBlock, but if i call method serialize() on the > header several times, only first time i can see new HeaderBlock, then i'll > loose it. > > After some tests i'll find that if i call build() method on the header > element: > soapMessage.getEnvelope().getHeader().build() > and i add new HeaderBlock, i can serialize the message header many times > without loosing new added HeaderBlock elements and without building the > message Body using very few memory. > > Now the problem: what if the message hasn't the Header element? > soapMessage.getEnvelope().getHeader() is null > I have to add a new Header, but if i don't call the build() on the Envelope > i'll loose it first time i serialize it and if i build the envelope, i'll > build also the Body with a huge memory load. > > There is a solution without building the entire soap:Body element? > > Thanks in advance for any help, > > - Lorenzo >
