Re: Licencing,Interaction Modes,Data Types

From: Arun Gupta <>
Date: Tue, 07 May 2002 10:31:09 -0700

Hi Sudeep,

Please see my inline responses.

Sudeep Chandran wrote:

>I have a bunch of doubts ,Kindy help
>Q1)Can I use JAX-RPC and JAXM for commercial purposes ? Any License issues ?
>I understand that when two end points communicate they must agree upon two things
>-Data Types (Type System)
>-Interaction Modes/Styles/Patterns.
>Data Types
>Q2) I have an operation foo() which accepts an Object and returns a Object
> Object foo(Object o).I dunno what is contained inside the object. It may be
> a bean or may be a Collection class or a user defined Object which doesnt adhere
> to any bean patterns .
> Am Attempting to generically *transform* a Java Application to a web service
> Is that Possible ?
Currently JAX-RPC supported value types are the only user defined
objects that are supported. Although it's recommended to have user
defined objects follow JavaBeans design pattern, you may as well keep
all the classes of your fields as public to leverage the serialization
machinery of JAX-RPC. Please refer to section 5.4 of the specification
for detailed description of JAX-RPC value types. For any other user
defined objects, you need to write your own pluggable

As a heads-up, Collection classes will be supported in the final release
of JAX-RPC available in June 2002.

> I tried xrpcc to generate WSDl files but unfortunately it doesnt support
> Object type and other complex types.
>Q3) How do I expose a polymorphic/overloaded operation as a web service ?
You can defined overloaded operations in your service endpoint interface
and use them as is from a stub based client. Since the operation names
are mangled in the WSDL, you need to use the operation name from WSDL
when using a DII or dynamic proxy client. There is nothing additional
that needs to be done to support overloaded operations.

>Interaction Modes
>JAX-RPC defines three interaction modes in Chapter 3,R012 in 0.9 Spec
>1) synchronous request response
>2) one way RPC mode
>3) Non Blocking RPC
>JAXM Defines Five Modes of Interaction ( See JAXM spec , 1.2 Scope )
>1)Asynchronous Inquiry
>2)Asynchrnous update
>3)Synchronous Inquiry
>4)Synchronous Update
>5) Fire and Forget
>Q4) Are these derived from ?
>Q5) The Client would know about the Service ('Data Types ') from the WSDL file .
> How will the client know abt the *Interaction Mode* of the server ?
> Or Am I missing something here ?
JAX-RPC 1.0 is required to support only synchronous request response and
one way RPC mode. Stubs based client support only synchronous request
response and DII based clients support both the invocation modes. For
one way RPC mode, there is no response message in the WSDL.

Thanks for your interest in JAX-RPC.


>Thanks and regards
>Sudeep Chandran

There is only one me, I must live myself!
There is only one today, I must live itself!