I don't know if this will be an issue in JAXRPC2/JAXB2 but one problem I'm having with the current JWSDP1.5 versions is that elements in my XML schema get mapped to SOAPElement, but I don't know why. Axis and .NET both generate valid reasonable classes for these elements. I turned on verbose in wscompile and played with the features, and dumped the debug version of the model, but none of them give me a message of the form:
"Mapping Xxx to SOAPElement because its using "
This would be a very helpful thing. Right now I'm having a lot of trouble finding the intersection of XSD functionality that work in all the platforms, and this would be helpful in figuring this out -- assuming its not the empty set of course :-) Thus far I've learned that
- xsd:choice is not supported in JAXRPC (well, except through SOAPElement)
- xsd:extension is not supported in .NET, at least in DataSets
- xsd:import is not supported in .NET (interesting since the WSIBP1 sample app uses import, which is what I modelled my schema on)
- there seems to be something supported in Axis but not JAXRPCRI but I can't figure out what it is. Type references more than two levels deep? Dunno
Is anyone aware of whether there will be an option to emit messages for unmappable constructs in future versions of JAXRPC? Also, is there a table which compares all the platforms based on XML Schema support?