繁体   English   中英

在wsdl中找不到Soap Web服务模式位置

[英]Soap web service schema location can't be found in wsdl

我的Web服务是一个jar文件,并被用作另一个Web应用程序的插件,因此我在主Web应用程序中只有一个web.xml,并为我的调度程序servlet提供了依据,并且它运行良好,但我的问题是什么时候我想通过soap客户端使用它的wsdl文件来使用它(soapUI无法在wsdl中找到模式)

这就是我的servlet.xml在jar文件中的样子;

<bean id="schema" class="org.springframework.xml.xsd.SimpleXsdSchema">
    <property name="xsd" value="classpath:/resources/xwebservice/schemas/Request.xsd" />
</bean>

<bean id="mwsid"
    class="org.springframework.ws.wsdl.wsdl11.SimpleWsdl11Definition">
    <constructor-arg value="classpath:/resources/xwebservice/spring-ws.wsdl"/>
</bean>

这就是我的wsdl文件看起来像spring-ws.wsdl的名字

<wsdl:types>
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
        <xsd:import namespace="http://www.mywebsite.com/xml/webservice"                      
            schemaLocation="/resources/xwebservice/schemas/Request.xsd"/>
    </xsd:schema>

当我尝试使用soap客户端(soapUI)通过显示我的wsdl url地址访问我的web服务时,找不到request.xsd模式,这是;

http://localhost:8080/mwp/mws/mwsid.wsdl

wsdl和schema文件位于我的web服务插件jar中的不同文件夹中,我的错误在哪里? 我可以通过上面的url在浏览器中公开wsdl,但是soap客户端无法在路径中找到模式。

谢谢

SimpleXsdSchema将模式公开为bean的名称加上.xsd(在本例中为schema.xsd)。 所以你必须更新WSDL以指向它:

schemaLocation="schema.xsd"

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM