I have a very granular interface which defines a small number of operations (5) on a large number of entities ( > 100). Rather than having an interface that defines more than 500 methods I have all the entities extend a base class and define the interface in terms of the base class. By ensuring that all the required type mappings exist in the deployment descriptor this works fine for the request portion of the message. i.e. Axis correctly figures out how to deserialize the parameters that are passed in the SOAP message even though the operation is defined in terms of the base class. However, the return value does not work in the same fashion. Axis does not pay any attention to the actual class of the return value and instead uses the operation definition only, which results in all the properties being lost.
Should this be the case? Is it not reasonable to expect that Axis would serialize the object according to its actual class? Thanks, Scott.