The embedded ActiveMQ in ServiceMix is configured to use network multicasts to discover other broker instances on the network. Sometimes, multicasts are disabled by policy, causing this exception:
ERROR - BrokerService - Failed to start ActiveMQ JMS Message Broker. Reason: java.net.SocketException: error setting options
The solution is to disable the multicast feature for ActiveMQ. In conf/activemq.xml, change...
<transportConnectors>
<transportConnector uri="tcp://localhost:61616" discoveryUri="multicast://default"/>
</transportConnectors>
<networkConnectors>
<networkConnector uri="multicast://default"/>
</networkConnectors>
... to ...
<transportConnectors>
<transportConnector uri="tcp://localhost:61616"/>
</transportConnectors>
<networkConnectors>
</networkConnectors>
ERROR - BrokerService - Failed to start ActiveMQ JMS Message Broker. Reason: java.net.SocketException: error setting options
The solution is to disable the multicast feature for ActiveMQ. In conf/activemq.xml, change...
<transportConnectors>
<transportConnector uri="tcp://localhost:61616" discoveryUri="multicast://default"/>
</transportConnectors>
<networkConnectors>
<networkConnector uri="multicast://default"/>
</networkConnectors>
... to ...
<transportConnectors>
<transportConnector uri="tcp://localhost:61616"/>
</transportConnectors>
<networkConnectors>
</networkConnectors>
本文解决因网络策略禁用多播导致ServiceMix中ActiveMQ启动失败的问题。通过配置activemq.xml文件来关闭多播特性。
4780

被折叠的 条评论
为什么被折叠?



