2016-08-02 6 views
0

Die Channel-Klasse (Java-Client) bietet drei Methoden zum Veröffentlichen einer Nachricht, alle mit dem Parameter Routingschlüssel. Der Headeraustausch benötigt den Routingschlüssel nicht.Was ist der geeignete Wert für den Routingschlüssel für Header-Austausch in RabbitMQ?

Wenn ich einen Null-Wert für den Routingschlüssel übergeben, wird die folgende Ausnahme zurückgegeben: "java.lang.IllegalStateException: Ungültige Konfiguration: 'routingKey' muss nicht null sein."

Wenn ich jedoch eine leere Zeichenfolge übergeben, funktioniert es. Die Frage ist also: Ist es richtig, eine leere Zeichenfolge zu verwenden?

Antwort

0

Ja, es ist richtig, eine leere Zeichenfolge zu verwenden. Der Routing-Schlüssel wird nicht von Header-Austauschen verwendet, wie in der AMQP-Protokollspezifikation definiert.

Wahrscheinlich wird eine Ausnahme ausgelöst, weil der Treiber nichts über die Einrichtung weiß und es viel sicherer ist, alle Fehler, einschließlich möglicher Fehler, auf der Client-Seite zu behandeln.

Verwandte Themen