• Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

[axis1]how to remove the "mustUnderstand"&"actor" attributes from the SOAPHeader in the client code?

 
Jacqueline Greiss
Greenhorn
Posts: 2
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi,

I try to add a header in my java client using "SOAPHeaderElement" like below:


SOAPHeaderElement header = new SOAPHeaderElement(
"uri", "headerName");

((Stub)port).setHeader(header);


The issue is that the created "SOAPHeader" has unneeded attributes "mustUnderstand" and "actor" which the schema can't parse. I need to fix this in my client as it's not possible to update the schema...

<soapenv:Header>
<ns1:headerName soapenv:actor="" soapenv:mustUnderstand="0" xmlns:ns1="uri">
...........
</ns1:headerName>
</soapenv:Header>

Thanks!
 
Praful Thakare
Ranch Hand
Posts: 642
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
not 100% sure but did you try setting it to null in your code or if there is removeHeader method like setHeader in port?
 
Jacqueline Greiss
Greenhorn
Posts: 2
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Thanks a lot for you reply

I tried but it didn't have any effect at all.

I found another good solution though, I extended SOAPHeaderElement class, and override its outputImpl(SerializationContext context) method, then used document builder to build my XML header element, at the end I call this context.writeDOMElement(elem);

And it works!

Regards.
 
Praful Thakare
Ranch Hand
Posts: 642
  • Likes 1
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic