transformWsdlLocations & <url-pattern>
When I have in web.xml:
<param-name>transformWsdlLocations</param-name>
<param-value>true</param-value>
and
<servlet-mapping>
<servlet-name>personWS</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
auto-generated WSDL contains right URL:
<soap:address location="http://localhost:8888/MyWSApp/getPerson/"/>
So when I create new project based on wsdl in SoapUI, EndPoint is set to right url (http://localhost:8888/MyWSApp/getPerson/)
But when I change url-pattern to:
<url-pattern>/something/*</url-pattern>
auto generated wsdl still contains the same URL like before:
<soap:address location="http://localhost:8888/MyWSApp/getPerson/"/>
but it is wrong, the service is running now on:
<soap:address location="http://localhost:8888/MyWSApp/service/getPerson/"/>
I have also tried change my portTypeName in servlet definition, but without success:
<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开发者_Python百科"/>
<property name="locationUri" value="/getPerson/"/>
<property name="targetNamespace" value="http://www.geonis.com/geonis/delivery_site"/>
</bean>
Please, do you have idea how can I fix it?
The transformation only affects the server and port portion of the URL, so for other modifications, like adding to the path, you will have to update your WSDL manually.
Basically, the URL will only adapt to detected values in the square brackets:
http[s]://[domain]:[port]/path/in/your/wsdl
精彩评论