首页 文章

WSO2 ESB代理服务导入XSD错误

提问于
浏览
1

我想将ServiceManager WSDL连接到WSO2 esb作为代理服务的目标 . 我在同一个开发系统上安装了SM9和WSO2esb . SoapSonar将用于检查我的esb配置的结果 .

我的服务定义看起来如下:

<proxy name="SM9Lcl1IM" transports="http" startOnLoad="true" trace="enable" statistics="enable">
    <description>Incident Management Local SM9</description>
    <target>
        <endpoint>
            <address uri="http://localhost:19380/sc62server/PWS"/>
        </endpoint>
        <outSequence>
            <send/>
        </outSequence>
    </target>
    <publishWSDL uri="http://localhost:19380/sc62server/PWS/IncidentManagement.wsdl"/>
</proxy>

不幸的是,我无法解决问题,xsd文件必须转移到客户端 . SoapSonar通过一个弹出窗口告诉我,它想知道它在哪里可以找到

SM9Lcl1IM?xsd=http://VMDEMOW2K3:19380/sc62server/PWS/Common.xsd

我检查了wsdl并找到了以下声明:

<xs:import namespace="http://servicecenter.peregrine.com/PWS/Common" schemaLocation="http://VMDEMOW2K3:19380/sc62server/PWS/Common.xsd"/>'

所以我尝试了几件事:

  • 我复制了WSDL内联,定义了一个位置/密钥对,并尝试在用户注册表中定义密钥

  • 我检查了突触文档......似乎他们在过去的日子里也遇到了这个问题 . 这两个建议都不能在WS = 2中配置 . 我在Synapse也试过了 - 同样的问题 . 我尝试了synapse的代理示例(misc / proxy文件夹中的synapse.xml) - 这有效!啊......所以应该以某种方式工作......

  • 我用WSO2的GUi以及单独的synapse安装的xml配置来计算很多时间 . 没有任何效果 .

是否有提示或设置指南,解决了这个问题?样本很好,但是从它们中获取解决方案有点太简单了 .

1 回答

  • 1

    我解决了,但解决方案并不能让我满意 . 我将xsd的内容包含在wsdl中,因此没有导入必需品 . 该解决方案可行,但将xsd的模块化概念颠倒过来 .

    我认为,这个问题与突触中的旧bug有关(wso2 esb中的底层),而且就目前而言,它根本没有最终解决 .

    如果您有更好的解决方案,请告诉我,因为我想拥有一个支持模块化概念的解决方案 .

相关问题