7/15/08


Java and XML: miscellaneous notes

- Java 1.4 includes the Crimson parser, though the Axis team prefer Xerces.
- If you are installing Tomcat, get the latest 4.1.x version, and the full distribution, not the LE version for Java 1.4, as that omits the Xerces XML parser.
- SOAP messages are XML messages. Messages consist of one or more SOAP elements inside an envelope, Headers and the SOAP Body. SOAP has two syntaxes for describing the data in these elements, which is a clear descendant of the XML RPC system, and XML Schema, which is the newer system.
- Axis implements the JAX-RPC API, one of the standard ways to program Java services.
- To add an XML parser, acquire the JAXP 1.1 XML compliant parser of your choice. We recommend Xerces jars from the xml-xerces distribution, though others mostly work.
- Axis is compiled in the JAR file axis.jar; it implements the JAX-RPC API declared in the JAR files jaxrpc.jar and saaj.jar.
- The examples in this guide use Xerces. This guide adds xml-apis.jar and xercesImpl.jar to the AXISCLASSPATH so that Axis can find the parser. (from Installing and deploying web applications using xml-axis).
- Axis stands for, it's Apache EXtensible Interaction System.
- JaxMe - an implementation of JAXB, the specification for Java/XML binding.
A SOAP message is an ordinary XML document containing the following elements:
* A required Envelope element that identifies the XML document as a SOAP message
* An optional Header element that contains header information
* A required Body element that contains call and response information
* An optional Fault element that provides information about errors that occurred while processing the message
-Axis is one of the best Java-based Web services engines. It's better architected and much faster than its Apache SOAP predecessor.
-XML infoset is an abstract model of all the information in an XML document or document fragment.
- Dynamic invocation interface (DII)

-Communication Patterns
With Web Services, you can essentially distinguish three different ways of communication:

* Remote procedure call: Client sends a SOAP request to the service provider and then waits for a SOAP response (synchronous communication).
* Messaging: Client sends a SOAP request and expects no SOAP response back (one-way communication)
* Asynchronous callback: A client calls the service with one of the above methods. Later, the two parties switch roles for a callback call. This pattern can be built from either of the first two.

- WSDL 1.1 distinguishes two different binding styles (referred to as soap:binding styles): RPC and Document.

No comments: