Path 当前目录';点斜杠';WSDL中的(./)(XSD路径)

Path 当前目录';点斜杠';WSDL中的(./)(XSD路径),path,xsd,jaxb,wsdl,Path,Xsd,Jaxb,Wsdl,我正在使用的wsdl中的xsd是以“点斜杠”(./)开头的路径引用的 路径有效,我可以在浏览器中访问xsd;例如,它也适用于soapui。但当我尝试使用Jdeveloper生成代理时,我遇到了一个“WebServiceException::从wsdl创建模型时出错:”ExampleType“已定义” 如果我删除了“点斜杠”(XSD=XSD/my service.XSD),则不会再发生异常,一切正常 这是虫子吗?为什么会发生这种情况?是否有某种方法可以避免这种情况,而不必修改wsdl 谢谢。发

我正在使用的wsdl中的xsd是以“点斜杠”(./)开头的路径引用的


路径有效,我可以在浏览器中访问xsd;例如,它也适用于soapui。但当我尝试使用Jdeveloper生成代理时,我遇到了一个“WebServiceException::从wsdl创建模型时出错:”ExampleType“已定义”

如果我删除了“点斜杠”(
XSD=XSD/my service.XSD
),则不会再发生异常,一切正常

这是虫子吗?为什么会发生这种情况?是否有某种方法可以避免这种情况,而不必修改wsdl


谢谢。

发生这种情况的原因与JDeveloper工具如何组合XML模式集有关<代码>'ExampleType'已定义。表示以下两种情况之一:

  • 相同的XSD定义的
    ExampleType
    使用不同的基本URI加载了两次或两次以上:不同的“字符串”表示,但在服务器上取消引用时,它指向相同的资源

  • ExampleType
    两个或多个(不同的)XSD“位置”中定义:可以位于WSDL类型/架构部分和/或外部XSD文件中

当您更改URL时,它要么使其无效(额外的引用不再存在),要么JDeveloper URI compare能够正确执行

要进行诊断,您必须首先确定从何处下载了哪些资源

在运行JDeveloper和其他工具时,使用HTTP调试器(例如,使用tcpmon作为代理并通过它监视流量)。比较跟踪并查找每个工具试图解析的URL


比较GET标题值以查看工具之间的差异。然后看看下载的内容。它会给你下一步该做什么的好主意。如果您仍然无法理解,请使用其他信息更新问题。

发生这种情况的原因与JDeveloper工具如何组合XML模式集有关<代码>'ExampleType'已定义。表示以下两种情况之一:

  • 相同的XSD定义的
    ExampleType
    使用不同的基本URI加载了两次或两次以上:不同的“字符串”表示,但在服务器上取消引用时,它指向相同的资源

  • ExampleType
    两个或多个(不同的)XSD“位置”中定义:可以位于WSDL类型/架构部分和/或外部XSD文件中

当您更改URL时,它要么使其无效(额外的引用不再存在),要么JDeveloper URI compare能够正确执行

要进行诊断,您必须首先确定从何处下载了哪些资源

在运行JDeveloper和其他工具时,使用HTTP调试器(例如,使用tcpmon作为代理并通过它监视流量)。比较跟踪并查找每个工具试图解析的URL

比较GET标题值以查看工具之间的差异。然后看看下载的内容。它会给你下一步该做什么的好主意。如果您仍然无法理解,请使用其他信息更新问题

<xsd:schema>
    <xsd:import namespace="urn:my.name.space.be" schemaLocation="http://fictive.url.be:11001/path/to/wsdl/my-service?XSD=./xsd/my-service.xsd"/>
</xsd:schema>