Glassfish не останавливает зависимые приложения, зарегистрированные с помощью адаптера ресурсов JCA, при изменении свойства конфигурации RA - PullRequest
1 голос
/ 07 ноября 2011

(я уже опубликовал это на форуме glassfish несколько дней назад, но пока не повезло: -)

Ситуация: у меня развернут адаптер ресурсов JCA (RA), настроенный через @Аннотация ConfigProperty.

public class MyResourceAdapter implements ResourceAdapter {
    @ConfigProperty(defaultValue = "9000", type = Integer.class, supportsDynamicUpdates = false)
    private Integer port;
}

У меня также развернуто приложение, использующее RA.

@MessageDriven(name = "MY_MDB", messageListenerInterface = MyMessageEndpoint.class)
public class MyMessageDrivenBean implements MyMessageEndpoint {
    // some method required in MyMessageEndpoint to process calls from the RA
}

Теперь я хочу изменить свойство config через консоль администратора, создав конфигурацию адаптера ресурса.,Теперь, когда я изменяю свойства конфигурации, спецификация JCA утверждает, что RA должен быть остановлен и перезапущен.Пока все работает просто отлично.

Но в спецификации 5.3.4.1:

Phase One

перед вызовом стопа также указано следующееметод на ResourceAdapter JavaBean, сервер приложений должен убедиться, что все зависимые приложения, использующие конкретный экземпляр адаптера ресурса, остановлены.Это включает в себя деактивацию всех конечных точек сообщений, получающих сообщения через определенный адаптер ресурсов.Однако обратите внимание, что поскольку зависимые приложения обычно нельзя остановить до тех пор, пока они не будут развернуты, серверу приложений может потребоваться отложить остановку экземпляра адаптера ресурса, пока все такие зависимые приложения не будут развернуты.

ЕслиЯ правильно понял, что это означает, что мое приложение должно быть остановлено (возможно, также перезапущено), но этого не происходит.Это приводит к тому, что у меня развернут и адаптер ресурсов, и приложение, но RA не «знает» о конечной точке приложения / сообщения.

Теперь мой вопрос: это ошибка или я что-то упустил здесь??

PS Моя версия Glassfish - 3.1.1., Адаптер ресурсов работает на JCA 1.6.

...