You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@axis.apache.org by Luigi Lo Iacono <lo...@ccrl-nece.de> on 2006/08/11 11:04:49 UTC

Disappearing SOAP header when using MIME attachments

Hi there!

I encountered a very strange behavior while using Axis with several 
handlers and MIME attachments. I tried a bunch of different Axis 
versions including 1.2, 1.3 and 1.4. The problem occurs in all of them.

At the client-side I have two handlers in the global chain. The first 
one encrypts the SOAP body as well as MIME attachments (if present) and 
the second one signs the SOAP body. The encryption handler is an own 
development and for signing I use the WSS4J handler.

Without attachments everything works fine. The encrypted and signed SOAP 
request will be constructed and send via CommonsHTTPSender to the 
server. When an MIME attachment is present, though, the security header 
included by WSS4J disappears.

I did some debugging (essentially some more than only some ;-) and saw, 
that the SOAP request is full-fledge when leaving the global chain. On 
the wire the WSS4J header is not present. It gets lost somewhere in 
between. I debugged further and have the impression that something goes 
wrong when transforming the SOAP envelope to the bytes that are then 
passed to the OutputStream towards the server. Might it be the case, 
that the class holding the MIME multipart encoded bytes, doesn't get 
refreshed, when the WSS4J handler adds his security header? Again, the 
correct message can be retrieved from the MessageContext, but is not 
complete within the CommonsHTTPSender.

Any ideas regarding this...!?

Cheers, Luigi.

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


Disappearing SOAP header when using MIME attachments

Posted by Luigi Lo Iacono <lo...@ccrl-nece.de>.
Hi!

I had no luck with the question stated below in the axis-user list. 
Maybe some of can help...!?

BTW, I discovered some news here... When enforcing the creation of the 
"multipart" in writeContentToStream() in AttachmentsImpl to be done 
every time (by setting multipart = null), the header is included on the 
wire, but the attachement is then empty. I didn't get the relationship 
here properly yet...

Thanks, Luigi.

Luigi Lo Iacono wrote:
> Hi there!
> 
> I encountered a very strange behavior while using Axis with several 
> handlers and MIME attachments. I tried a bunch of different Axis 
> versions including 1.2, 1.3 and 1.4. The problem occurs in all of them.
> 
> At the client-side I have two handlers in the global chain. The first 
> one encrypts the SOAP body as well as MIME attachments (if present) and 
> the second one signs the SOAP body. The encryption handler is an own 
> development and for signing I use the WSS4J handler.
> 
> Without attachments everything works fine. The encrypted and signed SOAP 
> request will be constructed and send via CommonsHTTPSender to the 
> server. When an MIME attachment is present, though, the security header 
> included by WSS4J disappears.
> 
> I did some debugging (essentially some more than only some ;-) and saw, 
> that the SOAP request is full-fledge when leaving the global chain. On 
> the wire the WSS4J header is not present. It gets lost somewhere in 
> between. I debugged further and have the impression that something goes 
> wrong when transforming the SOAP envelope to the bytes that are then 
> passed to the OutputStream towards the server. Might it be the case, 
> that the class holding the MIME multipart encoded bytes, doesn't get 
> refreshed, when the WSS4J handler adds his security header? Again, the 
> correct message can be retrieved from the MessageContext, but is not 
> complete within the CommonsHTTPSender.
> 
> Any ideas regarding this...!?
> 
> Cheers, Luigi.
> 

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