WebSphere Message Broker Version 8.0.0.5 Betriebssysteme: AIX, HP-Itanium, Linux, Solaris, Windows, z/OS

Sehen Sie sich die Informationen zur aktuellen Produktversion im IBM Integration Bus Version 9.0 an.

Ergebnisse der Brokerverwaltung mit dem aktuellsten Beendigungscode in einer Konfigurationsmanager-Proxy-Anwendung überprüfen

Ermitteln Sie mithilfe des aktuellsten Beendigungscode das Ergebnis einer Anforderung, die von Ihrer Anwendung an das Objekt gestellt wurde.

Bei den meisten Methoden in der CMP-API, aus denen sich eine Statusänderung ergibt, wird kein Rückkehrcode geliefert, anhand dessen der Erfolg oder Fehlschlag einer bestimmten Aktion ersichtlich wird. Für diese Methoden müssen Sie einen anderen Code schreiben, damit das Ergebnis der Aktion ersichtlich wird. Unter der Voraussetzung, dass die verwalteten Objekte nicht von mehreren Threads gemeinsam verwendet werden, kann das folgende Codefragment dazu verwendet werden, das Ergebnis einer Anforderung zum Modifizieren der ausführlichen Beschreibung eines Brokers festzustellen. Dabei ist b eine Instanz des Broker-Proxys-Objekts:
GregorianCalendar oldCCTime =
                         b.getTimeOfLastCompletionCode();
b.setLongDescription(newDesc);
GregorianCalendar newCCTime = oldCCTime;
while ((newCCTime == null) || (newCCTime.equals(oldCCTime))) {
  newCCTime = b.getTimeOfLastCompletionCode());
  Thread.sleep(1000);
}
CompletionCodeType ccType = b.getLastCompletionCode();
if (ccType == CompletionCodeType.success) {
  // etc.
}

In diesem Beispiel ermittelt die Anwendung zunächst mit der Methode getTimeOfLastCompletionCode(), wann zuletzt eine Aktion auf dem Broker beendet wurde. Mit dieser Methode wird die Uhrzeit zurückgegeben, zu der die Topologie zuletzt einen Beendigungscode bzw., falls kein Rückkehrcode empfangen wurde, einen Nullwert empfangen hat. Die Anwendung aktualisiert die Eigenschaft LongDescription des Brokers und überwacht dann fortlaufend die Topologie auf Ergebnisse, die vom Befehl setLongDescription() an den Konfigurationsmanager-Proxy zurückgegeben werden. Wenn die Ergebnisse geliefert werden, unterbricht die Steuerung die while-Schleife und der letzte Beendigungscode wird ermittelt.

Dieser Algorithmus eignet sich weder für Multithread-Anwendungen noch zur Feststellung des Ergebnisses von Befehlen, da die Konfigurationsmanager-Proxy-Anwendung warten muss, wenn der Broker die Anforderung verarbeitet.

Wenn Sie eine effizientere Anwendung und eine Anwendung wünschen, die sich besser für eine Multithread-Umgebung eignet, codieren Sie die Alternativlösung, bei der Benachrichtigungen über die verwalteten Objekte genutzt werden; weitere Informationen finden Sie im Abschnitt Ergebnisse der Brokerverwaltung mit Objektbenachrichtigung in einer Konfigurationsmanager-Proxy-Anwendung überprüfen.

Eigenschaftsänderungen können auch synchron mit der Methode BrokerProxy.setSynchronous() durchgeführt werden. Wenn Sie synchrone Eigenschaftsänderungen vornehmen, liefern Methoden wie beispielsweise setLongDescription() erst dann ein Ergebnis, wenn die Änderung vom Broker verarbeitet wurde. Sie finden weitere Informationen zu synchronen Eigenschaftsänderungen in der Beschreibung der Methode BrokerProxy.setSynchronous()) in den Javadoc-Informationen zur CMP-API.

Bemerkungen | Marken | Downloads | Bibliothek | Support | Feedback

Copyright IBM Corporation 1999, 2014Copyright IBM Corporation 1999, 2014.

        
        Letzte Aktualisierung:
        
        Letzte Aktualisierung: 2015-02-28 16:21:15


TaskthemaTaskthema | Version 8.0.0.5 | ae33080_