当我在web.xml中有:
<param-name>transformWsdlLocations</param-name>
<param-value>true</param-value>和
<servlet-mapping>
<servlet-name>personWS</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>自动生成的WSDL包含正确的URL:
<soap:address location="http://localhost:8888/MyWSApp/getPerson/"/>因此,当我在SoapUI中创建基于wsdl的新项目时,EndPoint被设置为右url (http://localhost:8888/MyWSApp/getPerson/)
但是当我将url-pattern更改为:
<url-pattern>/something/*</url-pattern>自动生成的wsdl仍然像以前一样包含相同的URL:
<soap:address location="http://localhost:8888/MyWSApp/getPerson/"/>但这是错误的,服务现在正在运行:
<soap:address location="http://localhost:8888/MyWSApp/service/getPerson/"/>我还尝试在servlet定义中更改我的portTypeName,但没有成功:
<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>请告诉我,你知道我怎么才能修复它吗?
发布于 2011-07-31 23:11:34
转换仅影响URL的服务器和端口部分,因此对于其他修改,如添加到路径,您将必须手动更新WSDL。
基本上,URL将仅适应方括号中检测到的值:
http[s]://[domain]:[port]/path/in/your/wsdlhttps://stackoverflow.com/questions/6890236
复制相似问题