Valerio,

No code inside XmlSchema manually adopts the tempuri URI. No code in the CXF
codegen plugin does, either. I looked at the schema, and it doesn't mention
it anywhere.

I'll have to write a test case to try to repro this.

--benson


On Mon, May 25, 2009 at 11:42 AM, Valerio Schiavoni <
[email protected]> wrote:

> Hello,
> the following works fine:
> wsimport -keep http://api.microsofttranslator.com/V1/Soap.svc?WSDL
>
> (classes are generated and everything works fine).
>
> Performing the same task (classes from wsdl) using cxf-codegen, i get
> today:
>
> Caused by: org.apache.maven.plugin.MojoExecutionException:
> java.lang.RuntimeException:
> org.apache.ws.commons.schema.XmlSchemaException:
> An imported schema was announced to have the namespace http://tempuri.org/
> ,
> but has the namespace http://api.microsofttranslator.com/v1/soap.svc
>    at
>
> org.apache.cxf.maven_plugin.WSDL2JavaMojo.processWsdl(WSDL2JavaMojo.java:363)
>    at
> org.apache.cxf.maven_plugin.WSDL2JavaMojo.execute(WSDL2JavaMojo.java:257)
>    at
>
> org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:443)
>    at
>
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:539)
>    ... 16 more
> Caused by: org.apache.cxf.tools.common.ToolException:
> java.lang.RuntimeException:
> org.apache.ws.commons.schema.XmlSchemaException:
> An imported schema was announced to have the namespace http://tempuri.org/
> ,
> but has the namespace http://api.microsofttranslator.com/v1/soap.svc
>    at
>
> org.apache.cxf.tools.validator.internal.WSDLRefValidator.processSchemas(WSDLRefValidator.java:133)
>    at
>
> org.apache.cxf.tools.validator.internal.WSDLRefValidator.<init>(WSDLRefValidator.java:109)
>    at
>
> org.apache.cxf.tools.validator.internal.WSDL11Validator.isValid(WSDL11Validator.java:122)
>    at
>
> org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11.JAXWSDefinitionBuilder.validate(JAXWSDefinitionBuilder.java:201)
>    at
>
> org.apache.cxf.tools.wsdlto.frontend.jaxws.wsdl11.JAXWSDefinitionBuilder.validate(JAXWSDefinitionBuilder.java:61)
>    at
>
> org.apache.cxf.tools.wsdlto.WSDLToJavaContainer.processWsdl(WSDLToJavaContainer.java:166)
>    at
>
> org.apache.cxf.tools.wsdlto.WSDLToJavaContainer.execute(WSDLToJavaContainer.java:127)
>    at
>
> org.apache.cxf.tools.wsdlto.WSDLToJavaContainer.execute(WSDLToJavaContainer.java:252)
>    at
> org.apache.cxf.tools.common.toolspec.ToolRunner.runTool(ToolRunner.java:83)
>    at org.apache.cxf.tools.wsdlto.WSDLToJava.run(WSDLToJava.java:103)
>    at
>
> org.apache.cxf.maven_plugin.WSDL2JavaMojo.processWsdl(WSDL2JavaMojo.java:360)
>    ... 19 more
> Caused by: java.lang.RuntimeException:
> org.apache.ws.commons.schema.XmlSchemaException: An imported schema was
> announced to have the namespace http://tempuri.org/, but has the namespace
> http://api.microsofttranslator.com/v1/soap.svc
>    at
>
> org.apache.ws.commons.schema.SchemaBuilder.resolveXmlSchema(SchemaBuilder.java:1898)
>    at
>
> org.apache.ws.commons.schema.SchemaBuilder.handleImport(SchemaBuilder.java:1596)
>    at
>
> org.apache.ws.commons.schema.SchemaBuilder.handleXmlSchemaElement(SchemaBuilder.java:221)
>    at
>
> org.apache.ws.commons.schema.XmlSchemaCollection.read(XmlSchemaCollection.java:523)
>    at
>
> org.apache.cxf.common.xmlschema.SchemaCollection.read(SchemaCollection.java:176)
>    at org.apache.cxf.wsdl11.SchemaUtil.extractSchema(SchemaUtil.java:133)
>    at org.apache.cxf.wsdl11.SchemaUtil.getSchemas(SchemaUtil.java:73)
>    at
>
> org.apache.cxf.tools.validator.internal.WSDLRefValidator.getSchemas(WSDLRefValidator.java:115)
>    at
>
> org.apache.cxf.tools.validator.internal.WSDLRefValidator.processSchemas(WSDLRefValidator.java:127)
>    ... 29 more
> Caused by: org.apache.ws.commons.schema.XmlSchemaException: An imported
> schema was announced to have the namespace http://tempuri.org/, but has
> the
> namespace http://api.microsofttranslator.com/v1/soap.svc
>    at
>
> org.apache.ws.commons.schema.SchemaBuilder$1.validate(SchemaBuilder.java:1586)
>    at
>
> org.apache.ws.commons.schema.SchemaBuilder.setNamespaceAttributes(SchemaBuilder.java:369)
>    at
>
> org.apache.ws.commons.schema.SchemaBuilder.handleXmlSchemaElement(SchemaBuilder.java:145)
>    at
> org.apache.ws.commons.schema.SchemaBuilder.build(SchemaBuilder.java:130)
>    at
>
> org.apache.ws.commons.schema.XmlSchemaCollection.read(XmlSchemaCollection.java:509)
>    at
>
> org.apache.ws.commons.schema.XmlSchemaCollection.read(XmlSchemaCollection.java:382)
>    at
>
> org.apache.ws.commons.schema.SchemaBuilder.resolveXmlSchema(SchemaBuilder.java:1890)
>
> This is using cxf 2.2.1
>
> Any chance that cxf embeds 'wsimport' somehow?
>
> thanks
> valerio
> --
> http://www.linkedin.com/in/vschiavoni
> http://jroller.com/vschiavoni
>

Reply via email to