首页 > 解决方案 > wso2 从axis2.xml外部化jms代理IP

问题描述

我目前在 axis2.xml 中定义了 jms 代理 ip:

<transportReceiver name="jms" class="org.apache.axis2.transport.jms.JMSListener">
    <parameter name="default" locked="false">
        <parameter name="java.naming.provider.url" locked="false">failover:tcp://IP_OF_BROKER:61616</parameter>
        ...
    </parameter>
</transportReceiver>

并在代理服务中使用它:

<proxy name="MyJmsQueue" transports="jms">
...
</proxy>

如何将 jms 代理的 ip 和端口放在 axis2.xml 文件之外?

注意:我想要它的原因是axis2.xml包含许多不依赖于环境(测试、生产等)的“技术”配置。但是 jms 代理的 ip 和端口通常会发生变化(就像任何后端服务的 ip 和端口一样)。

标签: configurationwso2jmsexternalaxis2

解决方案


如果要从axis2 XML 文件外部化JMS 配置,可以使用JMS 入站协议。这是一种更简洁的实现方式,您可以通过 CAR 文件打包所有配置。您可以通过阅读官方文档找到有关 JMS 入站协议的更多详细信息和示例。


推荐阅读