Search code examples
javaweb-servicesjax-ws

JAX-WS wsdl in cluster environment


I'm encountering a bit of a problem when I deploy my web-services application on a cluster.

The wsld is published and can be accessed using the [urlofcluster]/[webapp]/manageparticipantidentifier?wsdl url.

But when I take a look inside i see this:

<s:import namespace="http://busdox.org/serviceMetadata/locator/1.0/" schemaLocation="http://[ipaddress]/[webapp]/manageparticipantidentifier?xsd=2"/>

Since this cluster is behind a firewall, the machine is not accessible trough the ip from the world-wide web...

so the question is... How can i make Jax-ws replace the ip-address by the url of the cluster in the wsdl's ?

For now this app needs to be deployed on weblogic, but other platforms need to be possible 2...


Solution

  • Tomcat/JBoss servers allow to specify a proxyHostname/proxyPort which are used as the external hostname/port. http://tomcat.apache.org/tomcat-8.0-doc/proxy-howto.html.

    There is some doc for the topic, look here: https://docs.oracle.com/cd/E13222_01/wls/docs81/cluster/setup.html