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.

Gerelateerde artikelen