This content has been marked as final. Show 8 replies
to also mention one line in the log before parsing wsdl reports all the errors...
Not to sure how to use this and if would solve the issue.
Consider using <depends>/<produces> so that wsimport won't do unnecessary compilation
... and there was one more recommandation that xsd imports should be local!?
Can you try using ---> packageName="Package_name" .
that's the option i was using!
I realize what is happening, but still dont have a good answer... The error is valid!
When importing the xsd schema files there are duplicates due to versions, in name spaces like: v1/Service and v2/Service...
Without packageName option the xsd corresponding Java classes are created in different packages: v1.Service and v2.Service... When i specify package name they all try to come under "myPackageName" and of course there would be a conflict... What i want, i guess, is to generate the schema classes with name space package and only the SEI and SIB Java classes under a specific package name!?
one extra comment here... the legitimate collision issue due to multiple schema version for same "class" is only apparent in JAXWS! Same wsdlc taks with JAXRPC works fine generating package from xsd name space.
It is clear that the direction to control package names is using binding file, but not sure if wsdlc supports that...
actually looking at the link you sent found the explanation for my initial error!
The way wsdlc/packageName is used between JAX-RPC vs JAX-WS is completely different!!
With second option all classes will end-up with same package name, which is why did not see the collision with first one.
For me the difference looks fairly drastic, surprised there is not an option just to generate the same way...
Here's the actual documentation:
Depending on the type of partial implementation you generate (JAX-WS or JAX-RPC), the Java package name of the generated complex data types differs, as described in the following guidelines:
• For JAX-WS, if you specify the packageName attribute, then all artifacts (Java complex data types, JWS interface, and the JWS interface implementation) are generated into this package. If you want to change the package name of the generated Java complex data types in this case, use the <binding> child element of the wsdlc Ant task to specify a custom binding declarations file. For information about creating a custom binding declarations file, see "Using JAXB Data Binding" in Getting Started With JAX-WS Web Services for Oracle WebLogic Server.
• For JAX-RPC, if you specify the packageName attribute of the wsdlc Ant task, only the generated JWS interface and implementation are in this package. The package name of the generated Java complex data types, however, always corresponds to the XSD Schema type namespace, whether you specify the packageName attribute or not.