如何将“无命名空间”XML模式导入WSDL?

时间:2014-01-16 18:00:13

标签: xml web-services xsd wsdl xerces

我有一个XML模式(称为DataQualityCalculationTasks.xsd),它没有声明目标名称空间http://www.w3.org/TR/xmlschema-0/#UndeclaredTNS。我在我的WSDL文件中导入了这个XML模式,如下所示:

<?xml version="1.0" encoding="UTF-8"?>

<wsdl:definitions 
targetNamespace="http://example.com/myNamespace" 
name="DataQualityServiceService" 
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" 
xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">

<wsdl:types>
    <xsd:import schemaLocation="DataQualityCalculationTasks.xsd"/>
</wsdl:types>

..................................................................

</wsdl:definitions>

但是,我在eclipse中收到以下错误:

  

src-import.1.2:如果元素信息项上不存在namespace属性,则封闭模式必须具有targetNamespace。该错误来自XML解析器Apache Xerces。

有没有人知道这方面的解决方案?

谢谢!

1 个答案:

答案 0 :(得分:2)

你可以这样做:

<wsdl:types>
    <xsd:schema targetNamespace="urn:tempuri-org">
        <xsd:import schemaLocation="DataQualityCalculationTasks.xsd"/>
    </xsd:schema>
</wsdl:types>