I need to connect a ActiveMQ-Listener to a broker outside the firewall through an HTTP/HTTPS-Proxy. I've searched everywhere but haven't found a solution how to set the proxy settings for the AcitveMQ-Client.
ActiveMQ is using Apache HttpClient but I don't know how to manipulate the creation of this client within ActiveMQ. The use of htttps.proxyHost and https.proxyPort is not used by the HttpClient.
Is there a way to set a global http/https proxy for all instances of HttpClient ?
ActiveMQ implements a RESTful API to messaging which allows any web capable device to publish or consume messages using a regular HTTP POST or GET.
All the kinds of clients and protocols which ActiveMQ supports use TCP as their transport layer. WebSockets specifically use TCP. Save this answer.
0 ActiveMQ has support for automatic wire protocol detection over TCP, SSL, NIO, and NIO SSL. OpenWire, STOMP, AMQP, and MQTT are supported.
Apache ActiveMQ Artemis is an asynchronous messaging system, an example of Message Oriented Middleware , we'll just call them messaging systems in the remainder of this book.
The ActiveMQ HttpClientTransport contains the following methods you can use to specify the proxy host and port:
public void setProxyHost(String proxyHost)
public void setProxyPort(int proxyPort)
For version 5.6+ you can also provide the proxy username and password:
public void setProxyUser(String proxyUser)
public void setProxyPassword(String proxyPassword)
To configure a JmsInvokerProxyFactoryBean:
<bean id="jmsClientFactory" class="org.apache.activemq.ActiveMQConnectionFactory">
<property name="brokerURL">
<value>http://myendpoint.somewhere.com:5186?proxyUser=fred&proxyPassword=ahoy&proxyHost=myproxyhost.somewhere.com&proxyPort=8081</value>
</property>
</bean>
<bean id="remotingService"
class="org.springframework.jms.remoting.JmsInvokerProxyFactoryBean">
<property name="serviceInterface" value="com.foo.CheckingAccountService"/>
<property name="connectionFactory" ref="jmsClientFactory"/>
<property name="queue" ref="queue"/>
</bean>
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With