Cedric, Thanks for you're help,
This is my current scenario; The WSDD has; <deployment xmlns="http://xml.apache.org/axis/wsdd/" xmlns:java="http://xml.apache.org/axis/wsdd/providers/java" xmlns:ta="http://www.fineos.com/XMLSchema/ta"> <service name="Garage/TestService1" provider="java:RPC"> <parameter name="className" value="com.fineos.ta.test.garage.services.soap.GarageServant"/> <operation name="CreateSession"> <parameter name="userOid" type="ta:Oid" xmlns:ta="http://www.fineos.com/XMLSchema/ta" mode="IN"/> <parameter name="userId" type="tns:string" xmlns:tns="http://www.w3.org/2001/XMLSchema" mode="IN"/> <parameter name="requestContext" type="ta:RequestContext" xmlns:ta="http://www.fineos.com/XMLSchema/ta" mode="INOUT"/> </operation> <parameter name="allowedMethods" value="CreateSession"/> <typeMapping qname="ta:RequestContext" xmlns:ta="http://www.fineos.com/XMLSchema/ta" languageSpecificType="java:com.fineos.ta.services.RequestContext" serializer="com.fineos.ta.services.xml.SoapSerializerFactory" deserializer="com.fineos.ta.services.xml.SoapDeserializerFactory" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/> </service> </deployment> Where 'RequestContext' is the cutom type; On the Client-Side I am calling; soapSrv.setOperationName(new QName("http://www.fineos.com/XMLSchema/ta","CreateSession") ); soapSrv.addParameter("userOid", new QName("ta:Oid"), javax.xml.rpc.ParameterMode.IN); 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}); 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 > > ************************************************************** > > ************ > > >