Azure Service Bus Java: AMQP via WebSockets met een proxy
Configureer de Java-berichtclient van Azure Service Bus met AMQP via WebSockets en de proxy-instellingen van de AMQP-bibliotheek.
De moderne Java-berichtclient van Azure Service Bus gebruikt AMQP. De builder ervan vereist AMQP_WEB_SOCKETS wanneer een proxy is geconfigureerd.
Met azure-messaging-servicebus 7.18.0 bouwt u de afzender als volgt:
var address = new java.net.Proxy(
java.net.Proxy.Type.HTTP,
new java.net.InetSocketAddress("proxy.example", 8080));
var proxy = new com.azure.core.amqp.ProxyOptions(
com.azure.core.amqp.ProxyAuthenticationType.BASIC,
address, proxyUser, proxyPassword);
var sender = new com.azure.messaging.servicebus.ServiceBusClientBuilder()
.connectionString(serviceBusConnectionString)
.transportType(com.azure.core.amqp.AmqpTransportType.AMQP_WEB_SOCKETS)
.proxyOptions(proxy)
.sender()
.queueName(queueName)
.buildClient();
De accountvariabelen authenticeren bij een proxy die Basic accepteert. De verbindingsreeks en de wachtrijnaam identificeren nog steeds de Service Bus-resource. Houd de gemaakte afzender aan voor de beoogde levensduur en sluit hem wanneer de toepassing klaar is.
Gebruik hier com.azure.core.amqp.ProxyOptions. De HTTP-stack van Azure heeft een andere, vergelijkbaar genoemde klasse voor proxyopties; dat is niet het type dat deze builder accepteert.
Dit configureert de berichtverbinding. Een toepassing die zelfstandig aangemaakte identiteitsreferenties gebruikt, moet mogelijk ook het HTTP-transport van het token daarvan configureren.
Oude voorbeelden van Azure SDK 0.9 verwijzen naar een andere clientgeneratie. Leid niet af dat de configuratieconstanten of algemene HTTP-eigenschappen daarvan de moderne AMQP-builder beschrijven.