Sun Java Solaris Communities My SDN Account Join SDN
 
Article

Java Web Services Developer Pack - Part 2: RPC Calls, Messaging, and the JAX-RPC and JAXM API

 
By Ed Ort and Ramesh Mandava, with contributions from Bhakti Mehta , October 2002  
Part 2: RPC Calls, Messaging, and the JAX-RPC and JAXM API

PDF version

This article is the second in a series that describes the Java Web Services Developer Pack. If you're unfamiliar with Web services, the Web services model, or the basics of the Extensible Markup Language (XML) that underlies the Web services model, see Part 1 of the series.

You will find the following topics covered in this article:

What's This About?

The Java Web Services Developer Pack (Java WSDP) is a package of technologies and tools for building Web services using the Java programming language, and for building Java applications that access Web services.

This article is the second in a series that describes the Java Web Services Developer Pack. As its name implies, the first article in the series, Java Web Services Developer Pack Part 1: Registration and the JAXR API, focused on Web services registration and the Java API for XML Registries (JAXR), an API in the Java WSDP that you can use to register a Web service or to discover a registered Web service. The first article also examined some fundamental technologies that drive the Web services model -- especially those that are specifically pertinent to registration, such as UDDI and ebXML. Finally, the article presented an example that illustrated how a fictitious company named BooksToGo used JAXR to register a Web service, and how another fictitious company, BoomingBusiness.com, used JAXR to discover the service.

In this second article in the series, the focus is on client-to-Web service communication through remote procedure calls (RPC calls) and through document-oriented messages (commonly called "messaging"). The article highlights two APIs in the Java WSDP: Java API for XML-based RPC (JAX-RPC), and Java API for XML Messaging (JAXM). Their names describe what the APIs do. JAX-RPC is a Java API for making XML-based RPC calls. JAXM is a Java API for XML-based messaging. The article also examines some Web services technologies that are specifically pertinent to making RPC calls and communicating document-oriented messages in the Web services context. Finally, the article extends the example introduced in the first article to show how BoomingBusiness.com uses JAX-RPC and JAXM in its applications to communicate with Web services.

At the time the first article in the series was written, Early Access Release 1 of Java WSDP was available, and so the examples in that article were based on that (Java WSDP EA1). Since then the first customer release of Java WSDP became available and was followed by an update release (Java WSDP 1.0_01). The examples in this second article of the series are based on the update release.


If you're familiar with XML and the XML-based technologies that underlie RPC calls and messaging in the Web services model, skip to the discussion of JAX-RPC or JAXM. Otherwise see XML Technologies for RPC Calls and Messaging.

For More Information

Java Web Services Developer Pack
Java 2 Platform, Enterprise Edition (J2EE)
Web Services and Java Technology
Web Services Technical Articles on java.sun.com
Java API for XML-Based RPC (JAX-RPC)
Java API for XML Messaging (JAXM)
SOAP with Attachments API for Java (SAAJ)
Simple Object Access Protocol (SOAP) 1.1
SOAP Messages With Attachments
Web Services Description Language (WSDL) 1.1
ebXML Message Service Specification V1.0
ebXML Transport, Routing & Packaging Version 1.0

In addition, source code for Java WSDP components such as JAX-RPC, SAAJ, JAXM, and JAXP can be obtained from the Sun Community Source Licensing page

Also, explore the following Sun products that incorporate Java WSDP technologies:

Sun ONE Studio 4 update 1
Sun ONE Application Server 7
Sun ONE for Developers

About the Author

Ed Ort is a staff member of the Java Developer Connection. He has written extensively about relational database technology and programming languages.

Ramesh Mandava is a staff engineer at Sun Microsystems. Currently, he is a member of the Core XML Technologies and Standards team which is part of the Web Services Technologies and Standards group. Previously, Ramesh was the lead for the WebServices Interoperability and Quality team, which ensures that Web services deliverables from Sun meet customer quality expectations and needs.

Bhakti Mehta is a Member of Technical Staff at Sun Microsystems Inc. She is in the Web Technologies and Standards Interoperability and Quality team, and has worked with JAXP, JAXB, JAXR and JAXM.

Have a question about programming? Use Java Online Support.