Щоб додати трохи пояснень тут, під час створення вашої послуги клас обслуговування використовує за замовчуванням '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);
}