Чтобы добавить здесь некоторые пояснения, при создании службы класс службы использует значение по умолчанию wsdlLocation, которое было вставлено в него, когда класс был построен из файла wsdl. Итак, если у вас есть класс обслуживания SomeService, и вы создаете такой экземпляр:
SomeService someService = new SomeService();
Если вы заглянете внутрь SomeService, вы увидите, что конструктор выглядит так:
public SomeService() {
super(__getWsdlLocation(), SOMESERVICE_QNAME);
}
Поэтому, если вы хотите, чтобы он указывал на другой URL-адрес, вы просто используете конструктор, который принимает аргумент URL-адреса (есть 6 конструкторов для установки qname и функций). Например, если вы настроили локальный монитор TCP / IP, который прослушивает порт 9999, и вы хотите перенаправить на этот URL:
URL newWsdlLocation = new URL("http://theServerName:9999/somePath");
SomeService someService = new SomeService(newWsdlLocation);
и это вызовет этот конструктор внутри службы:
public SomeService(URL wsdlLocation) {
super(wsdlLocation, SOMESERVICE_QNAME);
}