Wso2 如何在wsdl中引用注册表中的xsd文件

Wso2 如何在wsdl中引用注册表中的xsd文件,wso2,wso2esb,Wso2,Wso2esb,我希望r=读取WSDL中注册表中可用的xsd文件(这也在注册表中) 这是如下所示的错误 原因:javax.wsdl.WSDLException:WSDLException(at/wsdl:definitions/wsdl:types/xsd:schema):faultCode=PARSER\u错误:解析“/MemberSearchRep.xsd”时出现问题:java.io.FileNotFoundException:C:\wso2esb-4.0.3\wso2esb-4.0.3\MemberS

我希望r=读取WSDL中注册表中可用的xsd文件(这也在注册表中)


这是如下所示的错误

原因:javax.wsdl.WSDLException:WSDLException(at/wsdl:definitions/wsdl:types/xsd:schema):faultCode=PARSER\u错误:解析“/MemberSearchRep.xsd”时出现问题:java.io.FileNotFoundException:C:\wso2esb-4.0.3\wso2esb-4.0.3\MemberSearchRep.xsd(系统找不到指定的文件) 位于com.ibm.wsdl.xml.WSDLReaderImpl.getDocument(WSDLReaderImpl.java:2166) 位于com.ibm.wsdl.xml.WSDLReaderImpl.parseSchema(WSDLReaderImpl.java:845) 位于com.ibm.wsdl.xml.WSDLReaderImpl.parseSchema(WSDLReaderImpl.java:669) 位于com.ibm.wsdl.xml.WSDLReaderImpl.parseTypes(WSDLReaderImpl.java:630) 位于com.ibm.wsdl.xml.WSDLReaderImpl.parseDefinitions(WSDLReaderImpl.java:342) 位于com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(WSDLReaderImpl.java:2320) 位于com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(WSDLReaderImpl.java:2284) 位于com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(WSDLReaderImpl.java:2337) 位于com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(WSDLReaderImpl.java:2358) 位于com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(WSDLReaderImpl.java:2390) 位于org.apache.axis2.description.WSDL11ToAxisServiceBuilder.readInTheWSDLFile(WSDL11ToAxisServiceBuilder.java:2318) 位于org.apache.axis2.description.WSDL11ToAxisServiceBuilder.setup(WSDL11ToAxisServiceBuilder.java:922) 位于org.apache.axis2.description.WSDL11ToAxisServiceBuilder.populateService(WSDL11ToAxisServiceBuilder.java:309) ... 还有22个 原因:java.io.FileNotFoundException:C:\wso2esb-4.0.3\wso2esb-4.0.3\MemberSearchRep.xsd(系统找不到指定的文件) 在java.io.FileInputStream.open(本机方法) 位于java.io.FileInputStream。(FileInputStream.java:120) 位于java.io.FileInputStream。(FileInputStream.java:79) 位于sun.net.www.protocol.file.FileURLConnection.connect(FileURLConnection.java:70) 位于sun.net.www.protocol.file.FileURLConnection.getInputStream(FileURLConnection.java:161) 位于org.apache.xerces.impl.XMLEntityManager.setupCurrentEntity(未知源) 位于org.apache.xerces.impl.XMLVersionDetector.determineDocVersion(未知源) 位于org.apache.xerces.parsers.XML11Configuration.parse(未知源) 位于org.apache.xerces.parsers.XML11Configuration.parse(未知源) 位于org.apache.xerces.parsers.XMLParser.parse(未知源) 位于org.apache.xerces.parsers.DOMParser.parse(未知源) 位于org.apache.xerces.jaxp.DocumentBuilderImpl.parse(未知源) 位于com.ibm.wsdl.xml.WSDLReaderImpl.getDocument(WSDLReaderImpl.java:2156) ... 34多

尝试删除“/”并确保XSD与WSDL位于注册表中的同一资源集合中。资源的名称应与schemaLocation中使用的名称相同

需要注意的是,确保不嵌套XSD,因为注册表当前不支持嵌套XSD

在这方面,nidkil

尝试删除“/”并确保XSD与WSDL位于注册表中的同一资源集合中。资源的名称应与schemaLocation中使用的名称相同

需要注意的是,确保不嵌套XSD,因为注册表当前不支持嵌套XSD


关于这一点,nidkil

我不确定您是否解决了这个问题,如果没有,请参阅这篇关于如何在导入XSD的注册表中设置wsdl的博客文章:


尊敬的nidkil,我不确定您是否解决了这个问题,如果没有,请参阅这篇关于如何在导入XSD的注册表中设置wsdl的博客文章:


尊敬的nidkil

试过了,但也失败了。有人能帮我们吗?试过了,也失败了。有人能帮我们吗?
<xsd:schema targetNamespace="http://www.example.org/SearchMember/">
        <xsd:import namespace="http://www.memsrch.com/req"
            schemaLocation="**./MemberSearchReq.xsd**" />
        <xsd:import namespace="http://www.memsrch.com/resp"
            schemaLocation="**./MemberSearchRep.xsd**" />
    </xsd:schema>