I have refactored the WSDL model to have a pluggable representation of schema. Wtih JAX-WS we have no need for a schema model, since all XML generation is determined by annotations (or defaults). The one exception is dynamic generation of WSDL, however this is a deployment step (so there is no need to keep it around for runtime processing). Furthermore, JAXB schema generation needs a DOM or streaming API to store the output,
However, There are still three major depencies on JBossXSModel:
1. JAXWSClientMetaDataBuilder - This will eventually change because the annotaitons should be used in stead of the WSDL
2. JSR181MetadataBuilder - This will change when I plug in the new tools generator
3. JSR109MetaDataBuilder - This of course can't change
4. JAXRPC Tools - Also can't change
So ideally we won't process schema on a JAX-WS client or endpoint, but we will on a JAX-RPC endpoint. There are two things that prevent me from being able to make this change:
1. JAXWSClientMetaDataBuilder dependency on JBossXSModel
2. API Type (JAX-WS vs JAX-RPC) is currently stored on the endpoint meta data. We need to move this to ServiceMetaData since the design I am proposing only allows for 1 API per WSDL file.
Any thoughts on this? I am particularly interested in feedback on the suggested change for the second item listed.
-Jason
Jason,
1. I don't see why the JAXWSClientMetaDataBuilder should have a dependency on the XSModel. So yes, if this goes thats fine.
2. Yes, that makes sense