axis-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sorin Pop" <pso...@regens.hu>
Subject Re: Serializer/Deserializer
Date Wed, 18 Sep 2002 11:55:16 GMT
I only know the one in the AXIS documentation, which is not really much...

----- Original Message -----
From: "Deepth Dinesan" <dinesan@india.adventnet.com>
To: <axis-user@xml.apache.org>
Sent: Wednesday, September 18, 2002 1:44 PM
Subject: Re: Serializer/Deserializer


> Hi Sorin,
>
> In fact am trying to convert an exising RMI Server to emit SOAP messages.
> [ Convert Java Serialization to SOAP Serialization ]
>
> Some of these classes are immutable and already define
ObjectStreamFields[]
> ,readObject(), and writeObject() for Java Object Serialization . Am
wondering
> why couldnt these be reused rather than defining a set of
> serializers/deserializers which does the same .
>
> Probably I need to look deep inside and see how reflection is being done
in axis
> .
> Are there any docs on typeMapping ?
>
> ThanX
> Deepth
>
>
>
>
> Sorin Pop wrote:
>
> > I guess you could use the builtin bean (de)serializer, that is, tha
> > beanmapping tag in the deploy.wsdd file.
> >
> > Theoretically you will be able to serialize all the public members of
your
> > types and you don't have to write custom (de)serializers. I have been
> > experiencing with the same issue the last few days, and for me it works,
> > true, I tried it with a quite simplistic scenario. I don't know how your
> > types look like, though. The only problem I encountered so far was that
if I
> > had a type X wich had a member array of Y objects, then it didn't work
> > unless a wrote a getter/setter method pair for the Y[] member.
> >
> > Here is the letter I sent on this mailing list a few days ago, nobody
really
> > replied to it until now:
> >
> > Hi,
> >
> > allegedly AXIS 1.0rc can handle the (de)serialization of custom objects
with
> > the builtin bean (de)serializer classes (beanmapping tag in the WSDD),
and
> > these custom objects don't necessarily need to have getter/setter
methods
> > anymore, it's enough for the (serializable) members to be declared
public.
> >
> > I tried it out, and it looks like it works, only to a certain point
though:
> > when the custom object contains a public member which is an array of
another
> > custom object. Then AXIS can handle the (de)serialization of the big
object
> > only if I write, like before, a custom (de)serializer class for it (and
I
> > have a typemapping tag in the deploy.wsdd file for the big object). If I
use
> > the beanmapping tag for it, then I get the following error messages
(lets
> > say the big class is called X, the little one Y, so X contains an array
of
> > Ys, which is called y_array):
> >
> >     java.lang.IllegalArgument Exception: array element type mismatch
> >     Could not convert [LY; to bean field y_array[0], type Y
> >
> > I don't know where that [L in front of the class name comes from, maybe
the
> > problem is related to that...
> > I have checked the SOAP message AXIS gets from the client, and I haven't
> > seen anything unusual in it. When I comment out the beanmapping tag and
> > uncover the typemapping tag for the X (yes, X, not Y, Y has a
beanmapping
> > tag) class in the WSDD (which points to the custom (de)serializer
classes),
> > and I redeploy the web service, then it works again.
> >
> > Has anybody encountered this problem? Any suggestions?
> >
> > Thanks.
> > ----- Original Message -----
> > From: "Deepth Dinesan" <dinesan@india.adventnet.com>
> > To: <axis-user@xml.apache.org>
> > Sent: Wednesday, September 18, 2002 11:15 AM
> > Subject: Serializer/Deserializer
> >
> > > Hi all,
> > >
> > > I have some (about 25)  user defined types that I need to serialize .
> > > These classses
> > > are fairly complex making use of  inheritance and aggregation
> > > extensively .
> > > Is there a way by which I can avoid writing serializers/deserializers
> > > and still be able to serialize .
> > >
> > > Eg:
> > >
> > > (1) I may use the ObjectStreamFields and the transient keyword to find
> > > which fields needs to be serialized  !!
> > > (2) I can have a java2schema generator. and then I may defines a map
> > > file which axis may use to serialize/deserialize . In fact this
approach
> > > is being used by MindElectric in thei GLUE product . Pretty Clean way
!!
> > >
> > > ThanX
> > > Deepth
> > >
> > >
> > > --
> > > "You have Brains in Your Head,You have feet in your Shoes"
> > > "You can steer yourself any direction you choose"
> > >
> > >
>
> --
> "You have Brains in Your Head,You have feet in your Shoes"
> "You can steer yourself any direction you choose"
>
>


Mime
View raw message