Cache from http://java.sun.com/aboutJava/communityprocess/jsr/jsr_101_xrpc.html; use this canonical source if possible.]
Java APIs to support emerging industry XML RPC standards.
Expert Group
Not Yet Formed.
I would like to join this Expert Group.
E-mail your support for this proposal to jsr-101-comments@sun.com.
Status
JSR Review Closes | 2001.02.12 |
Please direct your comments on this JSR to jsr-101-comments@sun.com.
Identification |
Request |
Contributions |
Additional Information
Section 1. Identification
Submitting Member: Sun Microsystems Name of Contact Person: Graham Hamilton E-Mail Address: kgh@eng.sun.com Telephone Number: (408) 343 1426 Fax Number: (408) 863 3195 Specification Lead: Eduardo Pelegri-Llopart E-Mail Address: pelegri@eng.sun.com Telephone Number: (408) 343 1456 Fax Number: (408) 863 3195 Endorsers and initial Expert Group Members:
Allaire
Section 2: Request
There is considerable interest in using XML for "Remote Procedure Calls",
where a procedure call (or method call) on one computer is transmitted over
a network as XML and is then delivered as procedure call (or method call) on
another computer. In particular, there is now a W3C Protocol Working Group
developing a standard XML protocol, "XP", which supports XML RPC.
The goal of this JSR is to develop APIs and conventions for supporting
XML RPC protocols in the Java platform. There are three main needs
to be addressed:
As part of mapping between XML RPC data types and Java types, this JSR
will attempt to include support for existing Java language to XML mappings,
such as those defined in JSR-031 "XML Data Binding" (and possibly
also those defined in JSR-057 "JavaBeans Persistence").
The expert group will evaluate to what extent the XML RPC mappings
and APIs should be aligned with the existing CORBA and RMI APIs
and mappings.
The JSR will make reasonable efforts to define APIs and conventions that
are independent of specific protocols and data formats, and to define
APIs that are "pluggable" and can allow different protocols to be
substituted. However, the initial primary focus will be on the emerging
W3C XP standard.
Where possible, the JSR will attempt to use or learn from existing
work on Java XML RPC systems, especially work such as the Apache SOAP
project.
NOTE: This JSR will not attempt to develop, define, or constrain
network protocols or network data formats or network interface definition
languages. The definitions of such protocols, data formats, and definition
languages belong at network interoperability standards groups such as W3C or
Oasis. This JSR is merely trying to provide convenient Java Platform
support for the specifications defined by the appropriate
network standards organizations. J2SE This specification will provide consistent Java APIs for
using emerging XML RPC standards. (See also section 4.1 below.)
There are already two major RPC systems in the Java platform, the
OMG CORBA Object Request Broker, and the Java Remote Method Invocation
(RMI) APIs. However, neither of these systems have been designed to
work with XML RPC. Where practicable, this JSR should attempt to
align with this existing RPC work.
There are several existing JSRs that define XML APIs. These include
JSR-031 "XML Data Binding", JSR-057 "JavaBeans Persistence", JSR-063
"Java APIs for XML Processing 1.1", JSR-067 "Java APIs for XML
Messaging", and JSR-093 "Java APIs for XML Registries". None
of these APIs address XML RPC. However, the Java APIs for XML RPC
should attempt to align with and exploit these existing APIs.
In particular, it is expected there will be close liaison between
this XML RPC JSR and the existing XML Messaging JSR, as it appears
that it will be beneficial for these two JSRs to be closely aligned.
Both styles of communication (asynchronous messaging and synchronous
RPCs) are likely to be important, for different use cases. For an overview of RPC systems, see the references, especially
the classic Birrell & Nelson paper "Implementing RPC". To Be Determined. No. No. No. No. Both the existing CORBA ORB support and the existing RMI
support will continue to be supported and extended, to reflect
their own distinct needs and user communities. The final schedule will need to be determined by the
expert group, and will also be dependent on the progress of
the relevant industry standards. However, it is anticipated that
a reasonably solid draft should be available in the early summer. The goal will be to attempt to develop a consensus in the
expert group over the main APIs and technologies.
Section 3: Contributions
"Remote Procedure Call", Bruce Jay Nelson, CMU PhD Thesis, 1981.
Available as Xerox PARC Technical Report CSL-81-9
"Implementing Remote Procedure Calls", A. D. Birrell & B. J. Nelson,
ACM Transactions on Computer Systems. Vol. 2, No. 1, February 1984, pp. 39-59.
W3C XML Protocol Activity web site.
This includes a variety of information on the W3C's work on "XP", which
includes XML RPC support.
OMG CORBA 2.4 Specification (5.8 Megs of PDF).
Web Services
Definition Language (WSDL) 1.0
SOAP Protocol Specification 1.1.
The Apache SOAP project web site. This JSR will aim to support the W3C XP standard (and possibly others).
In doing this it will attempt to benefit from existing industry work
on RPC, and specifically on XML RPC.
Section 4: Additional Information (Optional)
As noted in Section 2.4, there are already two major RPC systems in
the Java Platform, OMG CORBA and Java RMI. Both of these RPC systems
were very considerable undertakings, raising many subtle issues.
Even more daunting was the RMI-IIOP specification, which provides
a partial unification of CORBA and RMI. Mapping between language
level semantics and network protocol semantics is not a trivial
undertaking.
It is therefore with considerable trepidation that we propose adding
a third RPC system to the Java platform. However, it has been a
consistent goal of the Java Platform to allow Java programmers to
conveniently use common industry infrastructure and common industry
protocols. So it is in that spirit that we propose support for
XML RPC standards. It is important to allow Java developers convenient
access to merging web standards. We hope that in developing these
new APIs and mappings we will be able to benefit from the existing
experience in the Java community, and from the lessons learned in
projects like RMI-IIOP.
Apple
ATG
BEA
Bowstreet
Commerce One
HP/Bluestone
iPlanet
SilverStream
Sun Microsystems
webGain
webMethods
2.1 Please describe the proposed Specification:
2.2 What is the target Java platform? (i.e., desktop, server, personal, embedded, card, etc.)
2.3 What need of the Java community will be addressed by the proposed specification?
2.4 Why isn't this need met by existing specifications?
2.5 Please give a short description of the underlying technology or technologies:
2.6 Is there a proposed package name for the API Specification? (i.e., javapi.something, org.something, etc.)
2.7 Does the proposed specification have any dependencies on specific operating systems, CPUs, or I/O devices that you know of?
2.8 Are there any security issues that cannot be addressed by the current security model?
2.9 Are there any internationalization or localization issues?
2.10 Are there any existing specifications that might be rendered obsolete, deprecated, or in need of revision as a result of this work?
2.11 Please describe the anticipated schedule for the development of this
specification.
2.12 Working style for the expert group.
It is anticipated there will be a face-to-face kick-off meeting.
Subsequent work will be done by email.
3.1 Please list any existing documents, specifications, or implementations that describe the technology. Please include links to the documents if they are publicly available.
3.2 Explanation of how these items might be used as a starting point for the work.
4.1 This section contains any additional information that the submitting Member wishes to include in the JSR.
See Also
Details of the Community Process
New Specification Proposals
Specification Proposal Index
[ This page was updated: 07-Feb-01 ] |
||
Products & APIs -
Developer Connection -
Docs & Training -
Support Community Discussion - Industry News - Solutions Marketplace - Case Studies |
||
Glossary -
Feedback -
A-Z Index
|
||
|