axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Doug Davis" <...@us.ibm.com>
Subject Re: streaming outbound messages (was Re: [Vote] 1 Msg or 2)
Date Wed, 07 Feb 2001 12:26:18 GMT
I don't know - I sort of agree, but at the same time I wonder about more
serious handlers like encryption and DigitalSignature handlers.  These
do some pretty serious work and are done after the "real" work is done.
But if these fail should we return a fault gracefully?
I'm not necessarily against having a rule that says there's no guarantee
that if a handler on the output chain faults that we'll handle it properly,
but
this needs to be fully thought through.
Performance(streaming) at the cost of usability.
-Dug


Aleksander Slominski <aslom@cs.indiana.edu> on 02/06/2001 09:33:08 PM

Please respond to axis-dev@xml.apache.org

To:   axis-dev@xml.apache.org
cc:
Subject:  Re: streaming outbound messages (was Re: [Vote] 1 Msg or 2)



Doug Davis wrote:

> I would claim that both are wrong.  Closing the connection abruptly
without
> telling the client that there was an error is just asking for them to try
> again.
> And of course you can't put a fault anywhere in the soap message, that
> would violate the spec.

please keep in mind that generally this situation will be rare - incoming
message was already processed  - all handlers were identified -
mustUnderstand
headers were checked and  body handler probably have read whole incoming
message (to be able to process it). therefore there is not much that can go
wrong when outbound message is streamed back.

in my opinion SOAP in version 1.1 is not prepared to handle well big
outbound
messages - without ability to signal fault in message there is no much that
the
system can do except buffer while message and wait for exceptions. if there
are
exception throw away buffer and send back fault...

i think that abrupt connection closing is fine (and as pointed out will
happened anyway for example with OutOfMemoryException or basically anywhere
in
the code that is actually writing answer back to socket) and SOAP client
should
detect it and correctly report it back to application (and do not try
reconnect
- i think there is actually exception like UnexpectedEndOfStream...).

alek
--
Aleksander Slominski, LH 316, IU, http://www.extreme.indiana.edu/~aslom
As I look afar I see neither cherry Nor tinted leaves Just a modest hut
on the coast In the dusk of Autumn nightfall - Fujiwara no Teika
(1162-1241)





Mime
View raw message