change the soap:address location in generated wsdl

java1977 picture java1977 · Jan 31, 2014 · Viewed 9k times · Source

I am using JAX-WS annotation to create soap services running on JBOss 5.1.0 G.A, the generates WSDL has got the following bit at the end -

<service name="DataServiceService">
 <port binding="tns:DataServiceBinding" name="DataServicePort">
  <soap:address location="http://mymachine:8080/myapp/webservice" /> 
  </port>
  </service>

I have made the service https enabled on port 8443, I am able to connect to the service using the right protocol and port number but is there is a way to change the soap address in the generated wsdl so that the clients don't have to change it?

I would like to see the address as

<soap:address location="https://mymachine:8443/myapp/webservice" /> 

Answer

java1977 picture java1977 · Feb 4, 2014

Comment the following line in
server/{instance}/deployers/jbossws.deployer/META-INF/jboss-beans.xml

<property name="webServiceHost">${jboss.bind.address}</property>  

This way the engine should rewrite the soap:address using the host/port used to invoke the servlet providing you the wsdl.