You are almost 100% correct. You can define GLOBAL type mappings in the server-config.wsdd file, which the JWS service(s) can use.
The roundabout way of doing this is to feed DogService.jws?WSDL in to the WSDL2Java --skeleton command, and extract the relevant <typeMapping> tags from the deploy.wsdd. You can then use the Admin client to deploy them to a running server, or just cut/paste them in to the server-config.wsdd yourself. Make sure they are outside of any <service> elements. There are several ways we can fix this problem in the future. The first way is to extend the org.apache.axis.AxisServiceConfig interface, and add a function that would allow the JWS class to set up its own type mappings. This interface is designed to allow a service to convey metadata about itself to the Axis engine. The second (much cooler) way is to use XDoclets to extract type mappings from the source code comments. Expect the first before the second. :-) -- Tom Jordahl Macromedia -----Original Message----- From: CM [mailto:[EMAIL PROTECTED]] Sent: Wednesday, April 17, 2002 4:59 PM To: [EMAIL PROTECTED] Subject: JWS and complex parameters The axis user's guide states that when using jws files, "you can't specify custom type mappings." Does that mean that any method parameters return types have to be String, int, etc., and cannot be user-defined (say a "Dog" class, for example, which is in the same dir as the jws file), unless you generate and register the serializers separately? I've created a DogService.jws file which has a method which returns a Dog object. It is compiled just fine and DogService.jws?WSDL works great, but when I call the service it gives an error ("IOException: No serializer found for class Dog in registry...").) I suppose the serializers aren't generated when .jws files are used for the first time? Thanks, -CM