> soapSrv.addParameter("userId",org.apache.axis.Constants.XSD_STRING,
> javax.xml.rpc.ParameterMode.IN);
> soapSrv.addParameter("requestContext",
> new QName("ta:RequestContext"),
> javax.xml.rpc.ParameterMode.INOUT);
> soapSrv.setReturnType(null);
> soapSrv.invoke(new Object[]{userOid, userId,
> requestContextHolder});
Don't invoke it with the holder.
Do
soapSrv.invoke(new Object[]{userOid, userId, requestContextHolder.value});
Use getOutputParams then :
requestContextHolder.value = getOutputParams().get("requestContext");
or something like that ...
I have answered someone else a few weeks ago. You can search on the mailing
list if you wish.
Please tell me if it worked.
C�dric
> Where 'soapSrv' is the axis call object.
>
> If I invoke the service like this I get;
>
> faultCode: {http://xml.apache.org/axis/}Server.userException
> faultString: java.io.IOException: No serializer found for class
> com.fineos.ta.services.RequestContextHolder in registry
> org.apache.axis.encoding.TypeMappingImpl@7e8c4d
>
> So is there something else I am missing ? You say I don't
> need to add the
> RequestContextHolder to the typemapping, but how does axis
> decide how to
> handle the Holder object ?
>
> Again thanks for you're help so far, any more is appreciated,
>
> Thanks,
>
> Brian.
>
> -----Original Message-----
> From: C�dric Chabanois [mailto:[EMAIL PROTECTED]]
> Sent: 13 December 2002 13:47
> To: '[EMAIL PROTECTED]'
> Subject: RE: Custom serializer/deserializer with INOU/OUT parameters
>
>
>
> Yes, you need an Holder.
> This is not axis specific : See JAX-RPC spec (4.3.5)
>
> You will not need to provide a specific serializer or type
> mapping for the
> holder.
> Just provide serializer/deserializer and type mapping for
> your custom type.
>
> You will also need to specify that your parameter is IN/OUT
> or OUT in the
> wsdd (handler is not enough : it needs to know if the
> parameter is OUT or
> INOUT)
>
> C�dric
>
> > I hadn't actually provided a holder. But let me get this
> > straight. I need to
> > provide a holder in order that Axis understands that the type
> > is OUT/INOUT.
> > If I provide this handler do I then need to provide a
> TypeMapping and
> > Serializer that will understand that it should use the
> > 'value' of the holder
> > to serialise and deserialise ?
> >
> > Thanks,
> >
> > Brian
> >
> > -----Original Message-----
> > From: C�dric Chabanois [mailto:[EMAIL PROTECTED]]
> > Sent: 13 December 2002 11:56
> > To: '[EMAIL PROTECTED]'
> > Subject: RE: Custom serializer/deserializer with INOU/OUT parameters
> >
> >
> > I use IN/OUT parameters for beans and arrays but I never
> > tried with custom
> > serializer/deserializer.
> >
> > But I thought providing a simple Holder class for the type
> > and declaring the
> > parameter as OUT or INOUT in the wsdd would be enough.
> >
> > What did you do exactly ?
> >
> >
> > C�dric
> >
> > > Hi,
> > >
> > > I thougt I would re-send this just in case someone that has used
> > > serializers/de-serializers mised it.
> > >
> > > Has anyone tried to use a custom serializer/deserializer with
> > > INOUT or OUT
> > > parameters. I have it working fine for IN parameters but
> > INOUT and OUT
> > > parameters do not seem to be returned from the service (i.e.
> > > I can't see the
> > > new value being re serialized on the way back).
> > >
> > > Thanks,
> > >
> > > Brian
> > >
> > >
> > >
> > > **************************************************************
> > > ************
> > > The information contained in this e-mail is confidential,
> > > may be privileged and is intended only for the use of the
> > > recipient named above. If you are not the intended
> > > recipient or a representative of the intended recipient,
> > > you have received this e-mail in error and must not copy,
> > > use or disclose the contents of this email to anybody
> > > else. If you have received this e-mail in error, please
> > > notify the sender immediately by return e-mail and
> > > permanently delete the copy you received. This email has
> > > been swept for computer viruses. However, you should
> > > carry out your own virus checks.
> > >
> > >
> > > Registered in Ireland, No. 205721. http://www.FINEOS.com
> > > **************************************************************
> > > ************
> > >
> >
>