So we have several application servers sitting behind a couple of Apache servers to load-balance the HTTP requests. Now add the web services to the mix. When someone wants to build a client using our WSDL ? well that?s my issue. Since the endpoint URL is set to the machine it is deployed on ? how can I override this value to point back to the Apache load-balancer instead of the local host where its deployed?
Too many people do this for it to be a major undertaking, but for the life of me I can?t seem to find any hints as to how it is accomplished.
As a consumer, they have control over the endpoint URL they are calling. The one in the WSDL is just the default. For example, if they use wsdl2java, the generated ServiceLocator will have the address contained in the WSDL soap address location, but the one of the locator methods will have a getXXX(java.net.URL) signature.