У меня есть некоторые проблемы с программой JAX-WS.Прежде всего, все работает нормально: я могу опубликовать конечную точку, а также остановить ее с помощью метода stop ().Однако здесь есть проблема: программа может изменить URI, под которым она публикует сервис.Однако, как только это происходит, служба внезапно становится доступной как по новому URI, так и по старому.И даже более странно: даже если я закрою программу и перезапущу ее: как только я запускаю веб-сервис, он все равно будет доступен под обоими URI.Я надеюсь, что кто-то имеет представление о том, как это исправить.При взгляде на код: класс XMLProperties просто записывает новый URI в файл XML.Он также хранит текущий URI.Так что эта часть работает нормально.Я проверял это.Также кнопки запуска и остановки работают нормально.Как только я нажимаю кнопку «Стоп», веб-служба останавливается.Однако, как я уже упоминал, как только я его запустил, он также доступен под старым URI.Если я изменю URI несколько раз, служба будет доступна для всех URI.Если я остановлюсь, все URI перестанут работать.
static Endpoint endpoint;
public void handleButtonStart() {
endpoint = Endpoint.create(new TestImpl());
endpoint.publish(XMLProperties.URI);
}
public void handleButtonStop() {
endpoint.stop();
endpoint = null;
}
public void handleButtonPropertiesSave() {
XMLProperties.writeProperties();
if(endpoint != null && endpoint.isPublished()) {
handleButtonStop();
handleButtonStart();
}
JOptionPane.showMessageDialog(null, "Changes saved! Server restarted if it was running.");
}
Итак, я хочу, чтобы конечная точка изменила URI публикации.