Anfang des Inhaltsbereichs

Funktionsdokumentation Konfiguration des JMS-Sender-Adapters  Dokument im Navigationsbaum lokalisieren

Verwendung

Sie konfigurieren den JMS-Sender-Adapter, um JMS-Messages an die Integration Engine oder das PCK zu versenden. 

Integration

Die Adapterkonfiguration ist Teil der Festlegung eines Kommunikationskanals im Integration Server  oder im PCK  und wird auf dem Registerblatt Parameter vorgenommen. Zusätzlich zur Adapterkonfiguration können auf der Registerkarte Module im Modul-Prozessor generische Module angegeben werden, die den Adapter mit Zusatzfunktionen ausstatten.

Bedingung für Sendervereinbarung

Der Adapter ermittelt gemäß seiner Konfiguration die Payload der XI-Message. Die Informationen des Message-Header werden dagegen aus der zum Kommunikationskanal gehörenden Sendervereinbarung ermittelt.

Für die Definition der Sendervereinbarung ergeben sich für den Adapter folgende Bedingungen:

      Es muss genau eine Sendervereinbarung für den hier definierten Kommunikationskanal geben.

      In der Sendervereinbarung müssen mindestens der Interface-Name und der Sender-Service qualifiziert sein. Alle anderen Felder sind entsprechend den allgemeinen Regeln zur Definition von Sendervereinbarungen optional.

Voraussetzungen

       1.      Sie haben einen Kommunikationskanal angelegt oder einen bestehenden Kommunikationskanal geöffnet.

       2.      Sie haben auf der Registerkarte Parameter den Adaptertyp JMSausgewählt.

       3.      Sie haben den Adapter über den Auswahlknopf Sender als Sender-Adapter definiert.

Aktivitäten

Zur Konfiguration des Adapters machen Sie folgende Angaben:

Transport-Protokoll

SonicMQ JMS Provider

WebSphereMQ (MQ Series) (nicht-JMS)

Zugriff auf JMS-Provider mit JNDI

Administrierbare Objekte des JMS-Provider aus Datei lesen

Generischer Zugriff auf JMS-Provider

Message-Protokoll

JMS 1.x

Adapter-Engine

Wählen Sie die Adapter-Engine auf dem Integration Server oder eine dezentral installierte Adapter-Engine aus. Diese Auswahl ist im PCK nicht möglich.

Registerkarte Quelle

In Abhängigkeit vom gewählten Transport-Protokoll machen Sie Angaben zum jeweiligen JMS-Provider. Die Bedeutung der Parameter entnehmen Sie der jeweiligen JMS-Provider-Dokumentation. Siehe auch JMS-Provider-spezifische Einstellungen

Registerkarte Verarbeitung

JMS-Einstellungen

Parameter

Eingabe

Transaktionale JMS-Session

Falls eine transaktionale JMS-Session verwendet werden soll, setzen Sie das Kennzeichen. Eine transaktionale Session wird nach der Verarbeitung einer Message entweder mit COMMIT abgeschlossen oder im Fehlerfall mit ROLLBACK zurückgesetzt.

JMS-Queue-Benutzer

Benutzer für den Zugriff auf die JMS-Queue.

JMS-Queue-Kennwort

Kennwort mit Bestätigung für den Zugriff auf die JMS-Queue.

JMS-Message-Selector

Über den JMS-Message-Selector können Sie Bedingungen angeben, die eine JMS-Message in der angegebenen JMS-Queue erfüllen muss, damit sie vom Sender-Adapter verarbeitet wird.

Link auf externe Webseite

Weitere Informationen zum JMS-Message-Selector finden Sie im Internet unter java.sun.com/j2ee/sdk_1.3/techdocs/api/index.html und dort unter javax.jms und Message.

 

Einstellungen zur Korrelation

Legen Sie fest, nach welchem Algorithmus die Message-ID einer neuen XI-Message erstellt werden soll. Voraussetzung für die Wahl einer ID ist, dass es sich um einen GUID (Globally Unique Identifier) nach ISO-11578 handelt.

Hinweis

Ist die Message-ID kein GUID, dann wird die Message-Verarbeitung fehlschlagen. Dies kann zu Message-Duplikaten führen, falls die ID nicht eindeutig ist. Es kann außerdem zu einer GUIDFormatException führen, falls der GUID nicht der Norm ISO-11578 entspricht.

       XI-Message-ID setzen auf:

       GUID (empfohlener Wert)

       JMSMessageID (Eindeutigkeit ist JMS-Provider-abhängig)

       JMSCorrelationID (Eindeutigkeit ist JMS-Sender-abhängig)

       JMSProperty (Eindeutigkeit ist JMS-Sender-abhängig)

Geben Sie den Namen der JMS Property ein. Dieser Wert wird für die XI-Message-ID gesetzt.

Sind JMSCorrelationID oder JMSProperty in der JMS-Message nicht gesetzt, dann wird automatisch eine Message-ID generiert.

      Haben Sie JMSMessageID, JMSCorrelationID oder JMSProperty gewählt und ist in diesen Feldern eine JMS Message-ID hinterlegt, dann sollten Sie die ('ID:') ID-Markierung von JMSMessageID entfernen. Setzen Sie das Kennzeichen.

Dies ist notwendig, weil die JMS-Spezifikation vorschreibt, dass jede JMS-Message-ID mit der Kennung 'ID:' beginnt. Das widerspricht jedoch der Norm ISO-11578.

      XI-Conversation-ID (ConversationID) setzen auf:

       Kein Wert

Mit dieser Einstellung erreichen Sie, dass die XI-Conversation-ID nicht gesetzt wird.

       JMSMessageID (Eindeutigkeit ist JMS-Provider-abhängig)

       JMSCorrelationID (Eindeutigkeit ist JMS-Sender-abhängig)

       JMSProperty (Eindeutigkeit ist JMS-Sender-abhängig)

Geben Sie den Namen der JMS Property ein. Dieser Wert wird für die XI-Message-ID gesetzt.

       Gesicherte JMSCorrelationID der Anfrage

Hier wird die gesicherte JMSCorrelationID des Requests verwendet.

Weitere Informationen zur ConversationID finden Sie unter: Bestandteile der XI-Message , dort unter ConversationID und RefToMessageID.

XI-Einstellungen

Parameter

Eingabe

Mapping der Message

Wenn die gesamte Message in der JMS-Payload enthalten sein soll, wählen Sie Gesamte Message = JMS-Payload.

Wenn nur die Payload der Message in die JMS-Payload eingestellt werden soll, dann wählen Sie Message-Payload = JMS-Payload.

Quality-of-Service

Gibt an, wie eine Message durch die Integration Engine/das PCK verarbeitet werden soll.

      Exactly Once (asynchrone Verarbeitung mit garantierter einmaliger Ausführung)

      Exactly Once In Order (asynchrone Verarbeitung über Queues, d.h. eine garantierte einmalige Ausführung unter Beibehaltung der Reihenfolge aufeinander folgender Nachrichten).

       Geben Sie die Queue-ID an.

       Geben Sie den verarbeitenden J2EE Cluster-Server (Cluster-ID) an.

Durch diese Angabe werden Überholvorgänge in der JMS-Queue verhindert. Die gültige Cluster-ID finden Sie auf dem J2EE-Server – Administrator unter Server.

Hinweis

Wenn Sie die Cluster-ID nicht angeben, wird der EOIO-Kanal automatisch auf einem anderen aktiven Knoten aktiviert. Diese Konfiguration bietet in einer Clusterumgebung eine Ausfallsicherung für Knoten durch den Adapter.

Zeitraum der Duplikatprüfung für EO(IO) in Sek.

Für die Prüfung doppelter Messages müssen IDs auf der Datenbank gesichert werden. Damit die Größe der Datenbank nicht unnötig wächst, müssen diese IDs nach einiger Zeit gelöscht werden.

Geben Sie in Sekunden an, wann die IDs gelöscht werden sollen (z. B. nach einem Tag, wenn Sie täglich das Message-Monitoring kontrollieren).

Einstellungen für die Fehlerbehandlung

Parameter

Eingabe

Warten nach Message-Fehler (ms)

Geben Sie die Anzahl der Millisekunden an, die bei einem Verarbeitungsfehler gewartet werden soll, bis weitere Messages verarbeitet werden.

Eine gewisse Wartezeit kann beispielsweise bei transaktionaler Verarbeitung sinnvoll sein, da fehlerhafte Messages nach einem ROLLBACK in der Queue stehen bleiben.

Warten bis zur neuen Verbindung (ms)

Geben Sie einen Zeitraum an, nachdem bei einem JMS-seitigen Verbindungsfehler versucht werden soll, die Verbindung neu aufzubauen.

Das Zeitintervall wird in Millisekunden angegeben. Bei einem Wert von -1 wird nicht versucht, die Verbindung neu aufzubauen.

Hinweis

Diese Funktion setzt voraus, dass Ihr JMS-Provider die Registrierung eines ExceptionListener unterstützt.

 

Registerkarte Erweitert

Adapterspezifische Message-Attribute

      Um Adapterattribute im Message-Header der XI-Message abzulegen, wählen Sie Adapterspezifische Message-Attribute setzen.

      Um die folgenden Attribute in den XI-Message-Header zu übernehmen, setzen Sie das jeweilige Kennzeichen:

Name

Technischer Name

Korrelations-ID der JMS-Message

DCJMSCorrelationID

Auslieferungsmodus der JMS-Message

DCJMSDeliveryMode

Destination der JMS-Message

DCJMSDestination

JMS-Message-Ablauf

DCJMSExpiration

JMS-Message-ID

DCJMSMessageID

JMS-Message-Priorität

DCJMSPriority

JMS-Kennung für wiederholte Auslieferung

DCJMSRedelivered

ReplyTo-Destination der JMS-Message

DCJMSReplyTo

Zeitstempel der JMS-Message

DCJMSTimestamp

JMS-Message-Typ

DCJMSType

Verwendeter JMS-Message-Selector

DCJMSMessageSelector

Verwendete JMS-Message-Queue

DCJMSMessageQueue

JMS-Benutzer

DCJMSUser

      Möchten Sie zusätzliche JMS-Message-Attribute setzen, wählen Sie Zusätzliche JMS-Message-Eigenschaften (Maximum 10) spezifizieren.

      Geben Sie in der Tabelle die Namen der JMS-Message-Eigenschaften an, deren Werte in den Message-Header der XI-Message übernommen werden sollen.

Die technischen Namen der zusätzlichen Attribute lauten DCJMSMessageProperty0, DCJMSMessageProperty1, ..., DCJMSMessageProperty9.

Sie können in der Tabelle mehr als zehn Eigenschaften eingeben. Es werden jedoch nur die ersten zehn berücksichtigt.

Der Attributnamensraum für den Adapter ist: http://sap.com/xi/XI/System/JMS.

Adapterstatus

Setzen Sie den Adapter auf Aktiv, um ihn für den Message-Austausch einzusetzen.

Weitere Parameter

Um zusätzliche Einstellungen vorzunehmen, oder die Standardeinstellungen zu verändern, verwenden Sie die Parameter und Werte in der Tabelle:

Folgende Parameter können z.B. gesetzt werden:

Name

Wert

JMSMessageClass

com.ibm.jms.JMSMessage

JMS.Message.method.setStringProperty

java.lang.String XAppId, java.lang.String myapp

Weitere JMS-Parameter können für alle JMS-Provider gesetzt werden.

 

 

 

 

Ende des Inhaltsbereichs