Could any please expalin the difference between these APIs SAAJ vs JAXP vs JAX-RPC?
I know JAXP is used for XML processing.
But what is the difference between SAAJ and JAX-RPC as both can be used for webservice?
Also how JAXP is different from JAX-RPC?
SCJP 6,SCWCD 5,SCBCD 5
Failure is not an option.
Joined: Mar 22, 2005
As you said, JAXP is an API for XML processing: parsing (SAX and DOM), transforming (XSLT), and dissecting (XPath).
SAAJ and JAX-RPC are web service APIs, with JAX-RPC operating on a higher level than SAAJ. SAAJ is sort of like a DOM API for SOAP messages, while JAX-RPC lets you work with a Java API to set/add/read parameters and results.
JAX-RPC is obsolete, though - you shouldn't use it for anything new. JAX-WS is the current high-level API for web services.
Is there anything JAX-RPC cannot do that JAX-WS does? Infact i found it very convenient to webservice enable my application using JAX-RPC - RAD provides a good tooling for that.
Joined: Oct 04, 2006
I think I recall having read somewhere that the XML binding in JAX-RPC is not as complete as JAXB, which is what JAX-WS uses.
Some items from the JAX-WS specification:
- Client-side asynchronous service invocations.
- Substitution of deployment descriptors with annotations.
- Support for message based session management.
- Development of handlers has been simplified.
- Supports the WS-I Basic Profile version 1.1, as compared to version 1.0 for JAX-RPC.
There are probably more, but at least you should have some more motivation to take a look at JAX-WS.