Encaminhar o transporte HTTP do ActiveMQ Classic através de um proxy
Use os parâmetros URI proxyHost e proxyPort do transporte HTTP, preservando o endpoint do broker e as suas credenciais JMS.
Use isto apenas para um broker que exponha o transporte HTTP do ActiveMQ Classic, com a implementação de transporte do cliente correspondente disponível. Um conector TCP ou uma página web de administração não são esse endpoint.
ActiveMQConnectionFactory factory = new ActiveMQConnectionFactory(
"http://broker.example:8081?proxyHost=proxy.example&proxyPort=8080");
broker.example:8081 é o destino do broker HTTP. proxy.example:8080 é o seu intermediário de encaminhamento. Os parâmetros de proxy continuam a ser opções de URI; não substituem o nome do host do broker. Se o transporte HTTP do broker for acessível publicamente e os intermediários públicos forem permitidos, a lista de proxies HTTP pode fornecer valores proxyHost/proxyPort candidatos para uma rota sem credenciais de proxy configuradas. Confirme o acesso ao host real do broker e à porta do transporte HTTP.
O ActiveMQ Classic 5.18.3 constrói a sua rota a partir de proxyHost/proxyPort e aceita proxyUser/proxyPassword, limitando as credenciais HTTP fornecidas a esse endpoint de proxy. Construa URIs autenticados através do tratamento de parâmetros da aplicação para que os caracteres reservados das credenciais permaneçam codificados.
A conta do intermediário é separada da conta do broker usada pelos métodos de ligação JMS. Mantenha esta fábrica configurada para a rota que lhe foi atribuída: alterar outro cliente HTTP noutro local da JVM não atualiza uma fábrica já construída com opções explícitas.