Ok - so that JAXBDataBinding createJAXBContextAndSchemas method is where the additional classes that are not referenced directly are added to the schema.
The line: JAXBContextCache.scanPackages(classes); is where I think my trouble starts. I don't believe I have an issue with sub classes or xsi:type stuff, so I am wondering if I can add a configuration parameter to not scan the package for additional classes, but rely instead on the walkReferences in JAXBContextInitializer I am working on a small patch to JAXBDataBinding to optionally not call the scanPackages method. I will raise a jira, hopefully it will be acceptable. On Tue, Sep 4, 2012 at 11:51 AM, Jason Pell <[email protected]> wrote: > Hi, > > I have a jaxb library of classes which are shared between services. I > would like to exclude any types from the WSDL that are not directly > referenced by an operation in a particular service. Where might I > start to submit a patch to support this? I am guessing the easiest > solution would be to somehow update the ServiceWSDLBuilder to > determine whether a type is referenced and rewrite the SchemaInfo > objects? > > I know the obvious answer is to remove the jaxb elements (or at least > the annotations from these objects, and remove from jaxb.index or > ObjectFactory) but we can't do that, we instead want to generate a > WSDL with a subset of the types. > > I will start looking at how we might update the existing WSDL > generation functionality to support this and if its acceptable submit > a patch that can have the functionality enabled via configuration. > > Any pointers or existing code I could use would be much appreciated. > > Thanks > Jason
