首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >transformWsdlLocations & <url-pattern>

transformWsdlLocations & <url-pattern>
EN

Stack Overflow用户
提问于 2011-07-31 23:09:42
回答 1查看 5.2K关注 0票数 2

当我在web.xml中有:

代码语言:javascript
复制
<param-name>transformWsdlLocations</param-name>
<param-value>true</param-value>

代码语言:javascript
复制
<servlet-mapping>
    <servlet-name>personWS</servlet-name>
    <url-pattern>/*</url-pattern>
</servlet-mapping>

自动生成的WSDL包含正确的URL:

代码语言:javascript
复制
<soap:address location="http://localhost:8888/MyWSApp/getPerson/"/>

因此,当我在SoapUI中创建基于wsdl的新项目时,EndPoint被设置为右url (http://localhost:8888/MyWSApp/getPerson/)

但是当我将url-pattern更改为:

代码语言:javascript
复制
   <url-pattern>/something/*</url-pattern>

自动生成的wsdl仍然像以前一样包含相同的URL:

代码语言:javascript
复制
<soap:address location="http://localhost:8888/MyWSApp/getPerson/"/>

但这是错误的,服务现在正在运行:

代码语言:javascript
复制
   <soap:address location="http://localhost:8888/MyWSApp/service/getPerson/"/>

我还尝试在servlet定义中更改我的portTypeName,但没有成功:

代码语言:javascript
复制
<bean id="personService" class="org.springframework.ws.wsdl.wsdl11.DefaultWsdl11Definition">
    <property name="schema" ref="personServiceSchema"/>
    <!-- <property name="portTypeName" value="getPerson"/> -->
    <property name="portTypeName" value="something/getPerson"/>
    <property name="locationUri" value="/getPerson/"/>
    <property name="targetNamespace" value="http://www.geonis.com/geonis/delivery_site"/>
</bean>

请告诉我,你知道我怎么才能修复它吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-07-31 23:11:34

转换仅影响URL的服务器和端口部分,因此对于其他修改,如添加到路径,您将必须手动更新WSDL。

基本上,URL将仅适应方括号中检测到的值:

代码语言:javascript
复制
http[s]://[domain]:[port]/path/in/your/wsdl
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6890236

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档