Message-ID: <948666394.298520.1368924872674.JavaMail.email@example.com> Subject: Exported From Confluence MIME-Version: 1.0 Content-Type: multipart/related; boundary="----=_Part_298519_818826910.1368924872674" ------=_Part_298519_818826910.1368924872674 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Content-Location: file:///C:/exported.html
ActiveSOAP is essentially a small, lightweight XML router using the StAX= pull parser API.
When an XML request is processed, the QName of the root element is extra= cted and then passed on to some Handler object for processing.
In the case of the SOAP protocols we have a SoapHandler which is capabl= e of implementing the SOAP 1.1 or 1.2 protocols. This SOAP handler will the= n use the HandlerRegistry to find the handlers available for each SOAP header = and then use the registry again to process each body element.
You can register an arbitrary handler against a QName or just provide a = default body processing handler.
This architecture allows us to support multiple different versions of SO= AP concurrently as well as supporting pure REST based services.
Indeed we can support pure REST services both with and without the SOAP = protocol at the same time, allowing you to use the SOAP protocol and other = WS-protocols where they make sense for certain clients - or stick to pure X= ML REST services where the SOAP overhead is not worth the cost.
In addition since we're using StAX which you can then connect to any kin= d of XML processing tool (data binding, event based, DOMish) its up to you = whether you use a heavyweight or lightweight technology, based on your need= s.
With ActiveSOAP you only pay= for what you need and can work with both REST and SOAP at the same time.= span>------=_Part_298519_818826910.1368924872674--