Dear techies,
I have an existing RMI Server which I would like to convert to Web Service .
and I found hurdles all the way. Any help in this regard will be much appreciated.
I used JAX-RPC and also tried GLUE from
www.themindelectric.com 1) RMI allows me to transport *data* as well as *behaviour* ,
SOAP doesnt.
I have a lot of user defined types for which I have to write Serializers/
Deserializers. To avoid that I have written
Java Bean wrappers over
all User Defined types.Am wondering if this will interoperate with
Apache AXIS and other implementations?
By Default JAX-RPC uses 'SOAP section 5 encoding style' can
I plug in some other encoding style such as OMGs XMI ( I dont have
the need , jus curious)
2) Some of the functions that I want to expose as a web service accepts
interfaces. Am stuck on this. I see that XML Schema defines a construct
called *abstract* in section 4.7 . and I tried a tool named GLUE which
generated WSDL files automatically for my functions that accepts interfaces
and it declared those types as *abstract=true* . But am not clear on that c
can some one shed some light please. The BIG question is *How Do I expose
a function that accepts interfaces as arguments as a web Service? *
3) My RMI Server allows *Notifications* to be sent to the client.(sort of
call back). Dunno how to do the same using JAX-RPC?
Or rather can I use JAX-RPC to implements call backs. Or should I use
JAXM to do that? ( I havent used JAXM..dont even know that its used for such
purpose).
Section 2.4.4 of WSDL Specification talks about *Notification Operation*
How can I realise that thru java ? Or Rather how would I declare My function
such that xrpcc (or that matter any other tool) generates WSDL with a
notification operation .
( Perhaps I can use Multipart MIME to push notifications to the client,
but dunno how to implement them )
The Scenario is as follows
- RMI Client calls a AmInterestedInReceivingUpdates(ClientRef ) function of the server
- The Server Stores the Clients (RemoteReference) in a data structure
- Whenever an update occurs at the server side the server uses the RemoteReference to
invoke the *handleUpdate()* function of the client
How do I do this using SOAP/JAX-RPC or AXIS or any other?
Thanks and Regards
Mandan
-------------------------------------------------------------------------
The Lesson that I have learnt is if the same species in different planets
communicate they can
exchange both *data and behaviour* . If Different species in
different planets communicate they can exchange only *data* .
--------------------------------------------------------------------------