Hi Ron.

I reran the app using your patched remoting build and it fixes the problem as I 
diagnosed it but this has raised some related issues with JBossWS which I need 
to check with Alessio Soldano.

The problem occurs when I use WS-Addressing to redirect a fault. This is 
appropriate with either a one way message or a request reply exchange. In 
either of these cases when a fault occurs the invoker ends up with a null input 
stream.

For one way messages WS employs (defaults to) an HTTPUnmarshaller which barfs 
on a null input stream. Your fix resolves this by not calling the unmarshaller.

For request-reply messages WS sets a SOAP HTTP Unmarshaller. This detects a 
null input stream and constructs an empty SOAP message. So, in this case your 
fix causes a problem for WS. SInce the unmarshaller no longer gets called the 
invoker returns null instead of an empty message. The current WS code does nto 
expect a null pointer here and falls over when it tries to run SOAP handlers.

Clearly there is a problem with WS here whichever way you look at it. Having 
looked at  how the client ends up calling the HTTP invoker I suspect WS needs 
the unmarshaller to be called in both cases even when the stream is null i.e. 
we may need to back out this fix. Ho wsensible this is as regards any other 
remoting clients I am not in a position to say. Perhaps you could comment?

I'll point Alessio at this discussion to see what he says. Sorry, for the 
previous misdiagnosis -- it was hard to see the wood for the trees without the 
patch.

regards,


Andrew Dinn


View the original post : 
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4184841#4184841

Reply to the post : 
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4184841
_______________________________________________
jboss-user mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/jboss-user

Reply via email to