Title: RE: serializers and deserializers

Thanks Harald!  That explanation helps a lot.

If you are correct, then the user's guide is misleading.  In the section "Deploying custom mappings - the <typeMapping> tag" the example WSDD implies that you don't need a SerializerFactory.  It sets the serializer attribute to "my.java.Serializer".

If someone thinks that you are allowed to register a Serializer instead of SerializerFactory, please chime in!

> -----Original Message-----
> From: Harald Schmitt [mailto:[EMAIL PROTECTED]]
> Sent: Friday, April 05, 2002 11:10 AM
> To: [EMAIL PROTECTED]
> Subject: Re: serializers and deserializers
>
>
> I am not a committer, but I have implemented a service with
> serializers
> and deserializers.
>
> > What do you mean when you say "one class implements both
> interfaces"?
> > I looked at the source and I don't see that. For example,
> Deserializer doesn't extend or implement
> > DeserializerFactory and the reverse isn't true either.
> Deserializer: You have to provide a class which implements
> the interface
> org.apache.axis.encoding.DeserializerFactory. The important method is
> getDeserializerAs. This method should return an instance of a class
> which implements the interface org.apache.axis.encoding.Deserializer
> (Tip: extend org.apache.axis.encoding.DeserializerImpl).
> The factory thing is needed because you cannot use one
> deserializer for
> recursive element use : <tag>...<tag>...</tag>...</tag>.
> You can implement both interfaces in one class.
> In wsdd you hava to point to a class which has a method:
>     public static DeserializerFactory create(Class javaType, QName
> xmlType)
> or a class which implements DeserializerFactory Interface and
> has one of
> these constructors
>     public <constructor>(Class javaType, QName xmlType) *preferred*
>     public <constructor>()
>
> Serializer: You have to provide a class which implements the interface
> org.apache.axis.encoding.SerializerFactory. The important method is
> getSeserializerAs. This method should return an instance of a class
> which implements the interface org.apache.axis.encoding.Seserializer.
> You can implement both interfaces in one class.
> In wsdd you hava to point to a class which has a method:
>     public static SerializerFactory create(Class javaType, QName
> xmlType)
> or a class which implements SerializerFactory Interface and has one of
> these constructors
>     public <constructor>(Class javaType, QName xmlType) *preferred*
>     public <constructor>()
> Hope this is correct and it helps.
> Ciao Harald
>
> > I'd be surprised if one of the committers doesn't know the
> answer to this question off the top of their head
> > ... no investigation required. I'm pleading for them to
> tell us the answer and put this issue to rest. I don't
> > want to be annoying and just keep asking the same question
> over and over again.
> >
> >      -----Original Message-----
> >      From: Christian Gross [mailto:[EMAIL PROTECTED]]
> >      Sent: Friday, April 05, 2002 7:49 AM
> >      To: [EMAIL PROTECTED]
> >      Subject: Re: serializers and deserializers
> >
> >      Somebody correct me if I am wrong, but I did some
> investigation (actually needed to
> >      know about this myself as well) and experimented with
> my own examples.
> >
> >      You need to provide a factory, which creates the
> appropriate serializer or deserializer.
> >      The only reason why I can figure that both are shown
> is because the one class
> >      implements both interfaces.
> >
> >      Christian Gross
> >
> >      At 12:13 04/04/2002 -0600, Volkmann, Mark wrote:
> >
> >        When specifying a type mapping in WSDD,
> >        does the serializer attribute have to refer to a
> class that implements Serializer or can it refer to a
> >        class that implements SerializerFactory?
> >
> >        Likewise, does the deserializer attribute have to
> refer to a class that implements
> >        DerializerFactory or can it refer to a class that
> implements Deserializer?
> >
> >        I've been unable to extract answers to these
> questions from the source code.
 



***************************************************************************************
WARNING: All e-mail sent to and from this address will be received or
otherwise recorded by the A.G. Edwards corporate e-mail system and is
subject to archival, monitoring or review by, and/or disclosure to,
someone other than the recipient.
***************************************************************************************

Reply via email to