Когда я в 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/"/>
Поэтому, когда я создаю новый проект на основе wsdl в SoapUI, для EndPoint устанавливается правильный URL (http://localhost:8888/MyWSApp/getPerson/)
Но когда я изменяю шаблон URL на:
<url-pattern>/something/*</url-pattern>
автоматически сгенерированный wsdl по-прежнему содержит тот же URL, что и раньше:
<soap:address location="http://localhost:8888/MyWSApp/getPerson/"/>
но это неправильно, служба работает сейчас:
<soap:address location="http://localhost:8888/MyWSApp/service/getPerson/"/>
Я также пытался изменить свое 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>
Пожалуйста, у вас есть идея, как я могу это исправить?