【问题标题】:Access ActiveMQ with reverse proxy enabled启用反向代理访问 ActiveMQ
【发布时间】:2020-02-03 23:10:27
【问题描述】:

目标是通过安全公司网络内的 Java 代码将消息发布/发送到 ActiveMQ。

我在 AWS Cloud EC2 机器中配置了 ActiveMQ(控制台访问:IPAddress:8161)。我也可以通过 Java 代码使用 AWS IPAddress 和端口号 61616 (IPAddress:61616) 发布消息。

但现在我需要从公司网络内部发布消息。它是安全的,不能直接访问 AWS IPAddress。

所以我们为

创建反向代理
IPAddress:8161 to activemq-ui.testdemo.com

IPAddress:61616 to activemq-api.testdemo.com

现在我可以使用 activemq-ui.testdemo.com 从我们的公司网络访问 ActiveMQ 控制台。但无法通过 Java 代码访问 activemq-api.testdemo.com

低于错误:

SEVERE: Error Message: javax.jms.JMSException: Could not connect to broker URL: tcp://activemq-api.demo.com. Reason:
  java.lang.IllegalArgumentException: port out of range:-1

错误看起来像是在 URL 中需要端口号。但不确定要为此传递什么。

谁能帮助我了解如何在企业网络中访问 ActiveMQ API?

【问题讨论】:

  • 包含生产者和消费者的代码似乎端口设置不正确
  • 你有该错误的完整堆栈跟踪吗?

标签: java activemq


【解决方案1】:

您需要在错误告诉您的连接 URI 上提供客户端应尝试连接的端口,例如:

tcp://activemq-api.demo.com:80 

客户端不会尝试猜测或推断您希望它使用的端口,因此该字段是强制性的。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-05-13
    • 1970-01-01
    • 1970-01-01
    • 2020-11-11
    • 2015-04-27
    • 1970-01-01
    • 2022-08-12
    • 1970-01-01
    相关资源
    最近更新 更多