java - 如何使用项目默认 yaml 配置消息传递 activemq -thorntail 或 swarm

标签 java wildfly-swarm thorntail wildfly-18

如何使用项目默认 yaml 配置消息传递 activemq - thorntail 或 swarm

我目前遇到以下异常

资源“/subsystem=messaging-activemq/connection-factory=RemoteConnectionFactory”所需的功能不可用: org.wildfly.messaging.activemq.connector.external.http-connector;此功能可能的注册点:

 messaging-activemq:
    connection-factories:
      InVmConnectionFactory:
        entries:
          - 'java:/ConnectionFactory'
        connectors:
          - 'in-vm'
      RemoteConnectionFactory:
        ha: true
        entries:
          - 'java:jboss/exported/jms/RemoteConnectionFactory'
        connectors:
          - 'http-connector'
    pooled-connection-factories:
      activemq-ra:
        entries:
          - 'java:/JmsXA'
          - 'java:jboss/DefaultJMSConnectionFactory'
        transaction: xa
    in-vm-connectors:
      in-vm:
        server-id: 0
    http-connectors:
      http-connector-throughput:
        params:
          batch-delay: 50

        socket-binding: http
        endpoint: http-acceptor-throughput
    servers:
      default:
        jms-queues:
          ExpiryQueue:
            entries:
              - 'java:/jms/queue/ExpiryQueue'
          DLQ:
            entries:
              - 'java:/jms/queue/DLQ'
          CsiDLQ:
            entries:
              - 'java:/jms/queue/CsiDLQ'
          CCDLQ:
            entries:
              - 'java:/jms/queue/CCDLQ'
          CCRequestQueue:
            entries:
              - 'java:/jms/queue/CCRequestQueue'
        address-settings:
          default:
            message-counter-history-day-limit: 10
            page-size-bytes: 2097152
            max-size-bytes: 10485760
            expiry-address: jms.queue.ExpiryQueue
            dead-letter-address: jms.queue.DLQ
            redistribution-delay: 1000
          CCRequestQueue:
            message-counter-history-day-limit: 10
            page-size-bytes: 2097152
            max-size-bytes: 10485760
            expiry-address: jms.queue.ExpiryQueue
            dead-letter-address: CCDLQ
            redistribution-delay: 1000
        security-settings:
          default:
            roles:
              guest:
                send: true
                delete-durable-queue: true
                create-non-durable-queue: true
                consume: true
        http-acceptors:
          http-acceptor-mq:
            http-listener: default
        http-connectors:
          http-connector-mq:
            socket-binding: http
            endpoint: http-acceptor
        cluster-password: ${jboss.messaging.cluster.password:CHANGEME}
        discovery-groups:
          activemq-discovery:
            jgroups-cluster: activemq-cluster
        broadcast-groups:
          activemq-broadcast:
            jgroups-cluster: activemq-cluster
            connectors:
              - 'http-connector'
        cluster-connections:
          activemq-cluster:
            cluster-connection-address: jms
            connector-name: http-connector
            discovery-group: activemq-discovery

启动时出现完全异常。

2020-04-08 14:55:27,032 ERROR [org.jboss.as.controller] (Controller Boot Thread) WFLYCTL0362: Capabilities required by resource '/subsystem=messaging-activemq/connection-factory=RemoteConnectionFactory' are not available:
    org.wildfly.messaging.activemq.connector.external.http-connector; Possible registration points for this capability: 
        /subsystem=messaging-activemq/connector=*
        /subsystem=messaging-activemq/in-vm-connector=*
        /subsystem=messaging-activemq/remote-connector=*
        /subsystem=messaging-activemq/http-connector=*
        /subsystem=messaging-activemq/server=*/connector=*
        /subsystem=messaging-activemq/server=*/in-vm-connector=*
        /subsystem=messaging-activemq/server=*/remote-connector=*
        /subsystem=messaging-activemq/server=*/http-connector=*
        /subsystem=messaging-activemq/server=*/http-acceptor=*
2020-04-08 14:55:27,036 FATAL [org.jboss.as.server] (Controller Boot Thread) WFLYSRV0056: Server boot has failed in an unrecoverable manner; exiting. See previous messages for details.

最佳答案

这对我有用......根据@Ladicek的上述评论

  messaging-activemq:
    in-vm-connectors:
      in-vm:
        server-id: 0
    http-connectors:
      http-connector:
        params:
          batch-delay: 50
        socket-binding: http
        endpoint: http-acceptor-throughput
    servers:
      default:
        jms-queues:
          ExpiryQueue:
            entries:
              - 'java:/jms/queue/ExpiryQueue'
          DLQ:
            entries:
              - 'java:/jms/queue/DLQ'
          CSIRequestQueue:
            entries:
              - 'java:/jms/queue/CSIRequestQueue'
          CsiDLQ:
            entries:
              - 'java:/jms/queue/CsiDLQ'
          CCDLQ:
            entries:
              - 'java:/jms/queue/CCDLQ'
          CCRequestQueue:
            entries:
              - 'java:/jms/queue/CCRequestQueue'
        address-settings:
          default:
            message-counter-history-day-limit: 10
            page-size-bytes: 2097152
            max-size-bytes: 10485760
            expiry-address: jms.queue.ExpiryQueue
            dead-letter-address: jms.queue.DLQ
            redistribution-delay: 1000
          CCRequestQueue:
            message-counter-history-day-limit: 10
            page-size-bytes: 2097152
            max-size-bytes: 10485760
            expiry-address: jms.queue.ExpiryQueue
            dead-letter-address: CCDLQ
            redistribution-delay: 1000
        security-settings:
          default:
            roles:
              guest:
                send: true
                delete-durable-queue: true
                create-non-durable-queue: true
                consume: true
        http-acceptors:
          http-acceptor-mq:
            http-listener: default
        http-connectors:
          http-connector-mq:
            socket-binding: http
            endpoint: http-acceptor
        cluster-password: ${jboss.messaging.cluster.password:CHANGEME}
        discovery-groups:
          activemq-discovery:
            jgroups-cluster: activemq-cluster
        broadcast-groups:
          activemq-broadcast:
            jgroups-cluster: activemq-cluster
            connectors:
              - 'http-connector'
        cluster-connections:
          activemq-cluster:
            cluster-connection-address: jms
            connector-name: http-connector
            discovery-group: activemq-discover

关于java - 如何使用项目默认 yaml 配置消息传递 activemq -thorntail 或 swarm,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61101739/

相关文章:

java - 使用 Hibernate EntityManager(与 Hibernate Core 相比)有什么缺点吗?

java.lang.OutOfMemory错误:Java heap Space error after building app in Jenkins

Eclipse 上的 Java Wildfly swarm

java - 如何配置 Thorntail 2.5.0.Final 以使用 Keycloak 中的 JWT token 授权用户?

java - Java Enum 上的 OpenAPI 和 @Schema 注释

java - RMI 异常 "error marshalling arguments"

java - jSSC 未向 Arduino 发送数据

java - Spring Cloud/Boot 与 Wildfly Swarm

java - 为 swagger UI wildfly swarm 指定 swagger.json url

java - Wildfly Swarm (Thorntail) 无法启动 - InvocationTargetException