ActiveMQjmsActivationSpecがトリガーされない状態でLibertyJMSを開く

ケニー

オープンリバティのJMSのブローカーとしてactiveMqを使用しようとしています。キューでメッセージを取得できましたが、アクティベーション仕様がトリガーされません。私はログで以下を読んでいます。

[25/07/20 18:13:51:857 CEST] 00000330 com.ibm.ws.ejbcontainer.runtime.AbstractEJBRuntime           I CNTR0180I: The FailedKalenderUpdateProcessor message-driven bean in the typedagkalender-backend.jar module of the typedagkalender-ear application is bound to the jms/typedagkalender/kalenderupdates/dlqueueAS activation specification.
[25/07/20 18:13:51:857 CEST] 00000330 com.ibm.ws.jca.cm.ConnectorService                           I J2CA8050I: An authentication alias should be used instead of defining a user name and password on jms/typedagkalender/kalenderupdates/dlqueueAS.
[25/07/20 18:13:51:858 CEST] 00000330 SystemOut                                                    O 2020-07-25 18:13:51,858 [utor-thread-692] INFO  ActiveMQEndpointWorker         - Starting
[25/07/20 18:13:51:858 CEST] 00000330 com.ibm.ws.jca.service.EndpointActivationService             I J2CA8801I: The message endpoint for activation specification jms/typedagkalender/kalenderupdates/dlqueueAS and message driven bean application typedagkalender-ear#typedagkalender-backend.jar#FailedKalenderUpdateProcessor is activated.
[25/07/20 18:13:51:858 CEST] 00000330 com.ibm.ws.ejbcontainer.runtime.AbstractEJBRuntime           I CNTR0180I: The KalenderUpdateProcessor message-driven bean in the typedagkalender-backend.jar module of the typedagkalender-ear application is bound to the jms/typedagkalender/kalenderupdates/queueAS activation specification.
[25/07/20 18:13:51:858 CEST] 000002cb SystemOut                                                    O 2020-07-25 18:13:51,858 [utor-thread-591] INFO  ActiveMQEndpointWorker         - Establishing connection to broker [tcp://localhost:61616]
[25/07/20 18:13:51:858 CEST] 00000330 com.ibm.ws.jca.cm.ConnectorService                           I J2CA8050I: An authentication alias should be used instead of defining a user name and password on jms/typedagkalender/kalenderupdates/queueAS.
[25/07/20 18:13:51:860 CEST] 00000330 SystemOut                                                    O 2020-07-25 18:13:51,859 [utor-thread-692] INFO  ActiveMQEndpointWorker         - Starting
[25/07/20 18:13:51:860 CEST] 00000330 com.ibm.ws.jca.service.EndpointActivationService             I J2CA8801I: The message endpoint for activation specification jms/typedagkalender/kalenderupdates/queueAS and message driven bean application typedagkalender-ear#typedagkalender-backend.jar#KalenderUpdateProcessor is activated.
[25/07/20 18:13:51:860 CEST] 0000032b SystemOut                                                    O 2020-07-25 18:13:51,860 [utor-thread-687] INFO  ActiveMQEndpointWorker         - Establishing connection to broker [tcp://localhost:61616]
[25/07/20 18:13:51:870 CEST] 000002cb SystemOut                                                    O 2020-07-25 18:13:51,870 [utor-thread-591] INFO  ActiveMQEndpointWorker         - Successfully established connection to broker [tcp://localhost:61616]
[25/07/20 18:13:51:871 CEST] 0000032b SystemOut                                                    O 2020-07-25 18:13:51,870 [utor-thread-687] INFO  ActiveMQEndpointWorker         - Successfully established connection to broker [tcp://localhost:61616]

これは私のserver.xml構成ですjms部分

<?xml version="1.0" encoding="UTF-8"?>
<server>
    <!-- JMS CONFIGURATION -->
    <resourceAdapter id="ActiveMQResourceAdapter" location="${server.config.dir}/resources/lib/resource-adapter/activemq-rar-5.16.0.rar">
      <properties.activemq ServerUrl="tcp://localhost:61616" />
    </resourceAdapter>

    <messagingEngine>
        <queue id="Typedagkalender_destination" />
        <queue id="_SYSTEM.Exception.Destination" />
    </messagingEngine>

    <jmsQueueConnectionFactory jndiName="jms/typedagkalender/kalenderupdates/queueCF" connectionManagerRef="ConMgr">
        <properties.ActiveMQResourceAdapter />
    </jmsQueueConnectionFactory> -->

    <connectionManager id="ConMgr" maxPoolSize="${jms.ConMgr.maxPoolSize}" />

    <jmsQueue id="jms/typedagkalender/kalenderupdates/queue" jndiName="jms/typedagkalender/kalenderupdates/queue">
        <properties.ActiveMQResourceAdapter PhysicalName="Typedagkalender_destination" />
    </jmsQueue>
    <jmsQueue id="jms/typedagkalender/kalenderupdates/dlqueue" jndiName="jms/typedagkalender/kalenderupdates/dlqueue">
        <properties.ActiveMQResourceAdapter PhysicalName="_SYSTEM.Exception.Destination" />
    </jmsQueue>

    <jmsActivationSpec id="jms/typedagkalender/kalenderupdates/queueAS">
        <properties.ActiveMQResourceAdapter destinationType="javax.jms.Queue" destination="jms/typedagkalender/kalenderupdates/queue" />
    </jmsActivationSpec>
    <jmsActivationSpec id="jms/typedagkalender/kalenderupdates/dlqueueAS">
        <properties.ActiveMQResourceAdapter destinationType="javax.jms.Queue" destination="jms/typedagkalender/kalenderupdates/dlqueue" />
    </jmsActivationSpec>
</server>

これはアクティブ化する必要がある私のBeanです

@TransactionAttribute(NOT_SUPPORTED)
@MessageDriven(mappedName = "jms/typedagkalender/kalenderupdates/queue", activationConfig = {
        @ActivationConfigProperty(propertyName = "destinationType", propertyValue = "javax.jms.Queue"),
        @ActivationConfigProperty(propertyName = "destination", propertyValue = "jms/typedagkalender/kalenderupdates/queue")
})
public class KalenderUpdateProcessor implements MessageListener {

    private static final Logger LOGGER = LoggerFactory.getLogger(KalenderUpdateProcessor.class);

    @Inject
    private KalenderAbonnementService kalenderAbonnementService;

    @Override
    public void onMessage(Message message) {
        if (!(message instanceof TextMessage)) {
            LOGGER.error("Er is alleen ondersteuning voor TextMessages");
            return;
        }

        Auditor.setTimestamp(now());
        TextMessage textMessage = (TextMessage) message;

        try {
            LOGGER.debug("Textmessage gekregen voor KalenderJaargangVersieUpdate {}", textMessage.getText());
            handle(textMessage.getText());
        } catch (JMSException e) {
            LOGGER.error("Fout tijdens behandelen van message {}: {}", textMessage, e);
            throw new KalenderUpdateNotificationException("Fout tijdens behandelen van message " + textMessage, e);
        } finally {
            Auditor.destroy();
        }
    }
}

この設定は、openlibertyが提供する内部JMS実装を使用する場合に機能します。ただし、これは単一ノードでのみ機能し、永続的な中央ブローカーが必要なため、activeMQで機能させる必要があります。この構成には何が欠けていますか?

ケニー

解決策を見つけました。キューに別の物理名を使用できないか、機能しないようです。解決策はここでは大きな言葉かもしれませんが、別の物理名で機能させる方法は見つからなかったが、同じキュー名を使用して機能したと言わざるを得ないかもしれません。

<?xml version="1.0" encoding="UTF-8"?>
<server>
    <!-- JMS CONFIGURATION -->
    <resourceAdapter id="ActiveMQResourceAdapter" location="${server.config.dir}/resources/lib/resource-adapter/activemq-rar-5.16.0.rar">
        <properties.activemq ServerUrl="tcp://localhost:61616" />
    </resourceAdapter>

    <messagingEngine>
        <queue id="jms/typedagkalender/kalenderupdates/queue" />
        <queue id="jms/typedagkalender/kalenderupdates/dlqueue" />
    </messagingEngine>

    <jmsQueueConnectionFactory jndiName="jms/typedagkalender/kalenderupdates/queueCF" connectionManagerRef="ConMgr">
        <properties.ActiveMQResourceAdapter />
    </jmsQueueConnectionFactory> -->

    <connectionManager id="ConMgr" maxPoolSize="${jms.ConMgr.maxPoolSize}" />

    <jmsQueue id="jms/typedagkalender/kalenderupdates/queue" jndiName="jms/typedagkalender/kalenderupdates/queue">
        <properties.ActiveMQResourceAdapter PhysicalName="jms/typedagkalender/kalenderupdates/queue" />
    </jmsQueue>
    <jmsQueue id="jms/typedagkalender/kalenderupdates/dlqueue" jndiName="jms/typedagkalender/kalenderupdates/dlqueue">
        <properties.ActiveMQResourceAdapter PhysicalName="jms/typedagkalender/kalenderupdates/dlqueue" />
    </jmsQueue>

    <jmsActivationSpec id="jms/typedagkalender/kalenderupdates/queueAS">
        <properties.ActiveMQResourceAdapter destinationType="javax.jms.Queue" destination="jms/typedagkalender/kalenderupdates/queue" />
    </jmsActivationSpec>
    <jmsActivationSpec id="jms/typedagkalender/kalenderupdates/dlqueueAS">
        <properties.ActiveMQResourceAdapter destinationType="javax.jms.Queue" destination="jms/typedagkalender/kalenderupdates/dlqueue" />
    </jmsActivationSpec>
</server>

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

ActiveMQjmsActivationSpecがトリガーされない状態でLibertyJMSを開く

分類Dev

コンバーターがトリガーされていない状態でインデックスを表示

分類Dev

Unityにアイコンが表示されない状態でアプリケーションを開く(Ubuntu 12.4)

分類Dev

子の状態が角度で親の状態をトリガーしない

分類Dev

Reduxの状態が変更されましたが、Reactが再レンダリングをトリガーしないのはなぜですか?

分類Dev

Reduxの状態が変更されましたが、Reactが再レンダリングをトリガーしないのはなぜですか?

分類Dev

Reduxの状態が変更されましたが、Reactが再レンダリングをトリガーしないのはなぜですか?

分類Dev

指を離す前にUIButtonの選択された状態がトリガーされないのはなぜですか?

分類Dev

状態の値を変更しても、REACTの入力要素のonChangeがトリガーされないのはなぜですか

分類Dev

古い状態が新しい状態と等しい場合でも、同じ値でuseStateのセッターを呼び出すと、コンポーネントの更新がトリガーされるのはなぜですか?

分類Dev

古い状態の値が新しい状態の値と等しい場合でも、同じ値でuseStateのセッターを呼び出すと、コンポーネントの更新がトリガーされるのはなぜですか。

分類Dev

カラー状態リスト「イベント」がトリガーまたは処理されない

分類Dev

状態ストアがreduxで正しく更新されない

分類Dev

React infinite rerender、useEffectの問題、設定された状態がトリガーされない

分類Dev

セルによってトリガーされたダイアログを開いた状態でJavaテーブルモデルを更新する

分類Dev

アプリを閉じた状態でのFirebase通知が正しい動作をトリガーしない

分類Dev

リンクが機能しない状態でアプリストアを開く

分類Dev

React componentWillReceivePropsは、redux状態が更新されたときにトリガーされない小道具を受け取ります

分類Dev

React-コンポーネントに関係のない状態を変更すると、最大更新深度エラーがトリガーされます

分類Dev

状態は変化していますが、遷移はXstateでトリガーされません

分類Dev

onAppearでトリガーされたときにシートが開かない

分類Dev

ui-routerは、親の状態が解決される前に子の状態をトリガーします

分類Dev

コンポーネントで状態が更新されない

分類Dev

react-bootstrap-typeaheadユーザーがヒントを選択しているときではなく、 `Enter`でコールバック(状態の更新)をトリガーするにはどうすればよいですか?

分類Dev

状態変更後にuseEffectがトリガーを取得しない

分類Dev

状態が期限切れになると点滅トリガー

分類Dev

ボタンが押された後にJqueryイベントをトリガーしないでください

分類Dev

兄弟によって状態変更がトリガーされたときに子コンポーネントが再レンダリングされない

分類Dev

UI-ルーターハイブリッド:NG2コンポーネントを含むNG1状態がトリガーされる前にNG2状態が機能しない

Related 関連記事

  1. 1

    ActiveMQjmsActivationSpecがトリガーされない状態でLibertyJMSを開く

  2. 2

    コンバーターがトリガーされていない状態でインデックスを表示

  3. 3

    Unityにアイコンが表示されない状態でアプリケーションを開く(Ubuntu 12.4)

  4. 4

    子の状態が角度で親の状態をトリガーしない

  5. 5

    Reduxの状態が変更されましたが、Reactが再レンダリングをトリガーしないのはなぜですか?

  6. 6

    Reduxの状態が変更されましたが、Reactが再レンダリングをトリガーしないのはなぜですか?

  7. 7

    Reduxの状態が変更されましたが、Reactが再レンダリングをトリガーしないのはなぜですか?

  8. 8

    指を離す前にUIButtonの選択された状態がトリガーされないのはなぜですか?

  9. 9

    状態の値を変更しても、REACTの入力要素のonChangeがトリガーされないのはなぜですか

  10. 10

    古い状態が新しい状態と等しい場合でも、同じ値でuseStateのセッターを呼び出すと、コンポーネントの更新がトリガーされるのはなぜですか?

  11. 11

    古い状態の値が新しい状態の値と等しい場合でも、同じ値でuseStateのセッターを呼び出すと、コンポーネントの更新がトリガーされるのはなぜですか。

  12. 12

    カラー状態リスト「イベント」がトリガーまたは処理されない

  13. 13

    状態ストアがreduxで正しく更新されない

  14. 14

    React infinite rerender、useEffectの問題、設定された状態がトリガーされない

  15. 15

    セルによってトリガーされたダイアログを開いた状態でJavaテーブルモデルを更新する

  16. 16

    アプリを閉じた状態でのFirebase通知が正しい動作をトリガーしない

  17. 17

    リンクが機能しない状態でアプリストアを開く

  18. 18

    React componentWillReceivePropsは、redux状態が更新されたときにトリガーされない小道具を受け取ります

  19. 19

    React-コンポーネントに関係のない状態を変更すると、最大更新深度エラーがトリガーされます

  20. 20

    状態は変化していますが、遷移はXstateでトリガーされません

  21. 21

    onAppearでトリガーされたときにシートが開かない

  22. 22

    ui-routerは、親の状態が解決される前に子の状態をトリガーします

  23. 23

    コンポーネントで状態が更新されない

  24. 24

    react-bootstrap-typeaheadユーザーがヒントを選択しているときではなく、 `Enter`でコールバック(状態の更新)をトリガーするにはどうすればよいですか?

  25. 25

    状態変更後にuseEffectがトリガーを取得しない

  26. 26

    状態が期限切れになると点滅トリガー

  27. 27

    ボタンが押された後にJqueryイベントをトリガーしないでください

  28. 28

    兄弟によって状態変更がトリガーされたときに子コンポーネントが再レンダリングされない

  29. 29

    UI-ルーターハイブリッド:NG2コンポーネントを含むNG1状態がトリガーされる前にNG2状態が機能しない

ホットタグ

アーカイブ