1

(数日前にこれを Glassfish フォーラムに投稿しましたが、まだ運がありません :-)

状況: @ConfigProperty アノテーションを介して構成された JCA リソース・アダプター (RA) をデプロイしています。

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
}

ここで、リソース アダプタ構成を作成して、管理コンソールから構成プロパティを変更したいと考えています。構成プロパティを変更すると、JCA 仕様では、RA を停止して再起動する必要があると記載されています。これまでのところ、すべてがうまく機能しています。

しかし、仕様では、5.3.4.1 章で次のようにも述べています。

フェーズ 1

ResourceAdapter JavaBean で stop メソッドを呼び出す前に、アプリケーション サーバーは、特定のリソース アダプタ インスタンスを使用するすべての依存アプリケーションが停止されていることを確認する必要があります。これには、特定のリソース アダプタを介してメッセージを受信するすべてのメッセージ エンドポイントの非アクティブ化が含まれます。ただし、通常、依存アプリケーションはアンデプロイされるまで停止できないため、アプリケーション サーバーは、そのような依存アプリケーションがすべてアンデプロイされるまで、リソース アダプタ インスタンスの停止を遅らせる必要がある場合があります。

それが正しければ、アプリケーションも停止する (おそらく再起動する) 必要がありますが、そうはなりません。これにより、リソース アダプタとアプリケーションの両方がデプロイされますが、RA はアプリケーション/メッセージ エンドポイントについて「認識」しません。

ここで私の質問は次のとおりです。これはバグですか、それともここで何かを見逃しましたか?

PS 私のグラスフィッシュのバージョンは 3.1.1 です。リソース アダプタは JCA 1.6 で実行されています。

4

0 に答える 0