When doing java-first stuff, the WSDL that we generate uses inline schemas as
it simplified things quite a bit. When inlining the schemas, there shouldn't
be schemaLocations on the imports. JAXB sticks kind of "fake"
schemaLocations there that we strip off.
I cannot follow your explanations, perhaps I should describe what I
wanted to do as finding this "bug":
I added a package-info.java to define a different namespace and schema
location for all JAXB types in the same java package:
@javax.xml.bind.annotation.XmlSchema(namespace = "http://core/1.0",
location = "http://core/1.0/download.xsd")
Now the documetation of XmlSchema.location() says
"
Indicates that this namespace (specified by namespace()) has a schema
already available exeternally, available at this location.
This instructs the JAXB schema generators to simply refer to the pointed
schema, as opposed to generating components into the schema. This schema
is assumed to match what would be otherwise produced by the schema
generator (same element names, same type names...)
"
But the "patch" prevents to point to an externally available schema -
but also no JAXB types are inlined - so the type information is simply
missing for a WS client. It seems to me that the patch is useful in
another situation (but which I not fully understood from your
explanations) but in my situation it produces a severe bug..