[SoapRMI] Serialization
Aleksander Slominski
aslom_at_cs.indiana.edu
Fri, 07 May 2004 07:16:53 -0500
Romain Quilici wrote:
>Thanks for the clear reply,
>
>
>>>Also how the default mechanism handles serialization of XSOAP Remote
>>>Object(is it like RMI, where Remote Object are converted to stub)?
>>>
>>>
>>you will need to write a wrapper that will now XSOAP Remote Object so it
>>is serialized and deserialized by RMI correctly - this is easy as each
>>XSOAP remote object reference (whcih is XML string) is available by
>>calling RemoteObject.getSoapRMIPort().toXML()
>>
>>
>In fact my question was how your default serialization mechanism handles
>XSOAP remote Obejcts ? Are they transformed transparently to stub when
>crossing the network ?
>
>
AFAIR they will be treated as any other Java Bean.
you need to register special java.rmi.Remote interface handler to treat
RMI remote refs differently, something similar to what is already done
for SoapRMI Remote interface (soaprmi.Remote) - see Services.java:
Serializer remoteRefSerializer = new
RemoteRefSerializer();
enc.registerInterfaceEncodingHandler(
RemoteRef.class, remoteRefSerializer, null);
enc.registerConverterFrom(Port.class, new
RemoteRefConverter());
HTH,
alek
>----- Original Message -----
>From: "Aleksander Slominski" <aslom_at_cs.indiana.edu>
>To: "Romain Quilici" <Romain.Quilici_at_sophia.inria.fr>
>Cc: <soaprmi_at_cs.indiana.edu>
>Sent: Thursday, May 06, 2004 8:23 PM
>Subject: Re: [SoapRMI] Serialization
>
>
>
>
>>Romain Quilici wrote:
>>
>>
>>
>>>Hi,
>>>I just start to use XSOAP and I have a few questions about
>>>serialization of complex java objects.
>>>By complex I mean, java Objects that do not follow the get/set
>>>pattern, and cannot be represented by an XML tree.
>>>
>>>First do I have to implement my own serializer/deserializer ?
>>>
>>>
>>yes. you need to write XML and read it back to restore your object graphs.
>>
>>
>>
>>> To be more precise, I work on a java library that facilitates
>>>distributed computation. Our objects communicate through RMI.
>>>I would like them to be able to communicate with SOAP.
>>>
>>>
>>then you should design how XML on the wore should look (write XML Schema
>>for it if possible).
>>
>>this is important if you want to be able to talk to other SOAP services
>>- if interop is not important why to bother with SOAP?
>>
>>
>>
>>> Our objects have a part called body which is a RemoteObject(SUN). At
>>>this point RMI manages all the serialization. My idea was to add
>>>another body that is a XSOAP Remote Object. But since request or
>>>reply between remote objects can contain very complex type (like
>>>remote objects themselves, objects with an activity(thread)....), I
>>>wonder how the default serialization behaves, and if I have to
>>>implement my own mechanism.
>>>Also how the default mechanism handles serialization of XSOAP Remote
>>>Object(is it like RMI, where Remote Object are converted to stub)?
>>>
>>>
>>you will need to write a wrapper that will now XSOAP Remote Object so it
>>is serialized and deserialized by RMI correctly - this is easy as each
>>XSOAP remote object reference (whcih is XML string) is available by
>>calling RemoteObject.getSoapRMIPort().toXML()
>>
>>the first quick thing to do would be just to hack code and see if you
>>can serialize and deserialize all you need.
>>
>>
>>
>>>I saw in the mailing list that nothing is done for dynamic
>>>classloading, is it still true ?
>>>
>>>
>>>
>>yes as XSOAP is supposed to work with Java and non-Java code.
>>
>>alek
>>
>>--
>>The best way to predict the future is to invent it - Alan Kay
>>
>>_______________________________________________
>>SoapRMI mailing list
>>http://www.extreme.indiana.edu/soap
>>http://mailman.cs.indiana.edu/mailman/listinfo/soaprmi
>>
>>
>
>
>
--
The best way to predict the future is to invent it - Alan Kay