You are viewing a plain text version of this content. The canonical link for it is here.
Posted to soap-user@xml.apache.org by Kevin Mitchell <ke...@xmls.com> on 2000/10/17 14:54:46 UTC

Recent updates to SOAP

All,

Several updates were made to the Apache SOAP CVS tree this morning to
incorporate the following features:

Fault processing - Based on work submitted by Eric Dashofy, Sanjiva
Weerawarana, and myself, and discussions on the soap-dev list, there is now
a mechanism to customize a) how server exception information is presented to
clients and b) steps taken when exceptions are thrown on the server. The
mechanism is based on the Java event model. Here is a quick guide (i hope to
add a more detailed guide to the docs as soon as I have time):

 - write an implementation of org.apache.soap.server.SOAPFaultListener. The
fault method will be called whenever an exception is thrown on the server.
The SOAPFaultEvent object carries references to the Fault object that will
be returned to the client, and the SOAPException that was thrown during
server processing. An implementation can then modify the Fault to customize
the exception information presented to the client. There are two canned
implementations: org.apache.soap.server.DOMFaultListener and
org.apache.soap.server.ExceptionFaultListener. The former adds the exception
stack trace as a Fault detail entry, the latter adds the exception to the
list of Fault detail entries; one must then develop a serializer for
SOAPExceptions to present the SOAPException information to the client.
 - Register the fault listener implementation with a service. A
faultListener element has been added to the deployment descriptor xml
vocabulary. see the DDs for the samples for an example. Each faultListener
element registers a fault listener with the service. One can have zero or
more listeners. The content of the element should be the classname of the
SOAPFaultListener implementation.

Ease extension of BeanSerializer - Patch to BeanSerializer.java submitted by
Chris Nelson and Eric Galluzzo were applied. getWriteMethod is now
protected, and other methods are non-static

Servlet doGet behavior - Patch to RPCRouterServlet submitted by Dave
Schaumann was applied to both RPCRouterServlet and MessageRouterServlet.

There are currently no plans for a new official release, however these
changes can be obtained via anonymous CVS access.

Thanks to everyone for all the contributions...