Geschäftsobjektdefinitionen für JMS erstellen

Der Adapter für JMS sendet Ihr Dokument an InterChange Server (und empfängt es von dort) in Form eines Geschäftsobjekts für Nutzinformationen. Der Adapter für JMS ruft den Payload-Data-Handler auf, um dieses Geschäftsobjekt wie folgt zu verarbeiten, wenn er ein WebSphere Partner Gateway-Dokument empfängt bzw. sendet:

Daher müssen Sie die in Tabelle 56 gezeigten Geschäftsobjektdefinitionen erstellen, um die Struktur des Geschäftsobjekts für Nutzinformationen darzustellen, die der Adapter für JMS erwartet.

Tabelle 56. Geschäftsobjektdefinitionen für den Adapter für JMS
Bedingung Geschäftsobjektdefinition Weitere Informationen unter...
Wenn Sie für Ihre Nachricht 'Kein Paket' oder 'Back-End-Integrationspaket' verwenden und Ihre Dokumente keine Anhänge haben

Geschäftsobjekt für Nutzinformationen.

Struktur des Geschäftsobjekts für Nutzinformationen für JMS erstellen.
Wenn Sie für Ihr Dokument den Pakettyp 'Back-End-Integrationspaket' verwenden

Geschäftsobjekt zur Aufnahme der Nachrichtenheaderdaten:

  • Dynamisches Metaobjekt
  • Geschäftsobjekt für JMS-Eigenschaften
JMS-Headerinformationen erstellen.
Wenn das Dokument Anhänge enthält Sie müssen außerdem zusätzliche Geschäftsobjekte zur Darstellung der Anhänge erstellen. Anhangsbezogene Geschäftsobjektdefinitionen erstellen

Struktur des Geschäftsobjekts für Nutzinformationen für JMS erstellen

Die Struktur des Geschäftsobjekts für Nutzinformationen für das JMS-Transportprotokoll hängt wie folgt vom Pakettyp ab:

Anmerkung: Bei der Anforderungsverarbeitung kann das JMS-Transportprotokoll nur asynchrone Interaktionen unterstützen. Sie können ein Anforderungsgeschäftsobjekt senden, jedoch keine Antwort empfangen. Daher müssen Sie eine Geschäftsobjektdefinition für die Anforderung, jedoch nicht für eine Antwort erstellen.

JMS-Headerinformationen erstellen

Wenn Sie Dokumente senden oder empfangen, die 'Back-End-Integrationspaket' über das JMS-Transportprotokoll verwenden, muss Ihr Anforderungsgeschäftsobjekt angepasste Headerinformationen der Transportebene enthalten. Der Adapter für JMS erwartet, dass sich diese angepassten Headerinformationen in seinem dynamischen Metaobjekt befinden.

Abb. 24 zeigt die Geschäftsobjektstruktur, die der Adapter für JMS für ein Anfor- derungsgeschäftsobjekt verwendet, das ein WebSphere Partner Gateway-Dokument mit 'Back-End-Integrationspaket' darstellt.

Anmerkung: Das Handbuch Adapter for JMS User Guide enthält Informationen zu dieser Anforderungsgeschäftsobjektstruktur. Lesen Sie die Informationen in diesem Handbuch, wenn Sie Ihre Geschäftsobjektdefinitionen erstellen.
Abbildung 24. Beziehung zwischen dem Anforderungsgeschäftsobjekt und dem dynamischen JMS-Metaobjekt
Diese Abbildung zeigt ein Anforderungsgeschäftsobjekt, das auf ein Geschäftsobjekt vom Typ JMSDynMO_BusObj verweist, das seinerseits auf ein Geschäftsobjekt vom Typ JMSProps_BusObj verweist, das die Header der Transportebene darstellt.

Stellen Sie sicher, dass Ihre Geschäftsobjektstruktur ein dynamisches untergeordnetes Metaobjekt enthält, indem Sie die folgenden Schritte ausführen:

  1. Erstellen Sie eine Geschäftsobjektdefinition, die die JMS-Eigenschaften enthält, die für das Back-End-Integrationspaket erforderlich sind.
  2. Erstellen Sie eine Geschäftsobjektdefinition für das dynamische Metaobjekt.
  3. Ändern Sie die Geschäftsobjektdefinition für Ihr Anforderungsgeschäftsobjekt, so dass sie ein Attribut für das dynamische Metaobjekt enthält.

Jeder dieser Schritte wird in den folgenden Abschnitten beschrieben.

Geschäftsobjekt für JMS-Eigenschaften erstellen

Ein Geschäftsobjekt für JMS-Eigenschaften enthält JMS-Eigenschaften, die für die vom Back-End-Integrationspaket benötigten Header der Transportebene erforderlich sind. Es kann außerdem das Attribut content-type, das den Content-Type-Header angibt, der in der Anforderungsnachricht einzufügen ist, und das Attribut content-length enthalten, das die Länge der Nachricht in Byte angibt. Die einzelnen gültigen Transportheaderfelder werden in Tabelle 5 beschrieben.

Zur Erstellung einer Geschäftsobjektdefinition für JMS-Eigenschaften führen Sie die folgenden Schritte aus:

  1. Erstellen Sie innerhalb der Geschäftsobjektdefinition ein Attribut für jedes einzelne Headerfeld der Transportebene.

    Alle Attribute müssen den Attributtyp 'Zeichenfolge' haben. Bei JMS-Nachrichten werden in den Namen der Transportheaderfelder an Stelle von Silbentrennungsstrichen Unterstreichungszeichen verwendet (siehe hierzu Tabelle 57).

  2. Fügen Sie für jedes Attribut in der Geschäftsobjektdefinition für JMS-Eigenschaften anwendungsspezifische Informationen hinzu, um den Zweck des zugeordneten Attributs anzugeben.

    Diese anwendungsspezifischen Informationen auf Attributebene müssen folgendes Format haben:

    name=JMSeigenschaft;type=string

    Dabei ist JMSeigenschaft einer der Werte in der Spalte JMS-Eigenschaftsname in Tabelle 57.

  3. Für jedes der Attribute in der Geschäftsobjektdefinition für JMS-Eigenschaften können Sie einen Standardwert hinzufügen, um den allgemeinen (bzw. einzig gültigen) Wert für das entsprechende Feld der Transportebene anzugeben.
Tabelle 57. Attribute für die Geschäftsobjektdefinition für JMS-Eigenschaften
Transportheaderfeld JMS-Eigenschaftsname
x-aux-sender-id x_aux_sender_id
x-aux-receiver-id x_aux_receiver_id
x-aux-protocol x_aux_protocol
x-aux-protocol-version x_aux_protocol_version
x-aux-process-type x_aux_process_type
x-aux-process-version x_aux_process_version
x-aux-create-datetime x_aux_create_datetime
x-aux-msg-id x_aux_msg_id
x-aux-production x_aux_production
x-aux-system-msg-id x_aux_system_msg_id
x-aux-payload-root-tag x_aux_payload_root_tag
x-aux-process-instance-id x_aux_process_instance_id
x-aux-event-status-code x_aux_event_status_code
x-aux-third-party-bus-id x_aux_third_party_bus_id
x-aux-transport-retry-count x_aux_transport_retry_count
content-type content_type
content-length content_length
Anmerkung: Tabelle 57 enthält keine vollständige Liste der Header, die für die Back-End-Integration erforderlich sind. Eine vollständige Liste sowie eine Beschreibung der Header finden Sie im Abschnitt Inhalt des Headers der Transportebene. Stellen Sie sicher, dass Sie in den Feldnamen des Transportheaders Silbentrennungsstriche durch Unterstreichungszeichen ersetzen.

In Abb. 24 enthält die Geschäftsobjektdefinition JMSProps_BusObj Attribute für die verschiedenen Headerfelder der Transportebene. Diese Attribute haben alle anwendungsspezifische Informationen auf Attributebene zur Angabe des Namens des zugehörigen Protokollheaders. Zum Beispiel sind für das Attribut x_aux_sender_id die anwendungsspezifischen Informationen wie folgt definiert:

name=x_aux_sender_id;type=string

Dynamisches JMS-Metaobjekt erstellen

Dieses dynamische Metaobjekt enthält ein untergeordnetes Geschäftsobjekt mit Konfigurationsdaten für den Adapter für JMS. Zur Erstellung einer Geschäftsobjektdefinition für ein dynamisches Metaobjekt führen Sie die folgenden Schritte aus:

  1. Erstellen Sie ein Attribut mit dem Namen JMSProperties, dessen Attribut die Geschäftsobjektdefinition für das Geschäftsobjekt für JMS-Eigenschaften ist (siehe Geschäftsobjekt für JMS-Eigenschaften erstellen).
  2. Fügen Sie nach Bedarf weitere Konfigurationseigenschaften hinzu. Eine Liste der gültigen Attribute für das dynamische Metaobjekt finden Sie im Handbuch Adapter for JMS User Guide. Lesen Sie in diesem Handbuch die Informationen zur Erstellung von Attributen, um das dynamische Metaobjekt zu konfigurieren.

Damit der Adapter für JMS mit WebSphere Partner Gateway arbeiten kann, muss die Geschäftsobjektdefinition für das dynamische Metaobjekt das Attribut JMSProperties enthalten, dessen Attributtyp die Geschäftsobjektdefinition des Geschäftsobjekts für JMS-Eigenschaften ist (siehe Geschäftsobjekt für JMS-Eigenschaften erstellen). Zum Beispiel enthält die Geschäftsobjektdefinition JMSDynMO_BusObj in Abb. 24 Attribute für die verschiedenen Konfigurationseigenschaften (nicht gezeigt) sowie das Attribut JMSProperties.

Anforderungsgeschäftsobjektdefinition ändern

Zum Einfügen der Geschäftsobjektstruktur in Ihr Anforderungsgeschäftsobjekt müssen Sie die folgenden Änderungen an Ihrer Anforderungsgeschäftsobjektdefinition vornehmen:

  1. Fügen Sie Ihrer Anforderungsgeschäftsobjektdefinition ein Attribut hinzu, in dem das untergeordnete dynamische Metaobjekt enthalten ist.

    Der Attributtyp für dieses Attribut ist die Geschäftsobjektdefinition für das dynamische Metaobjekt (siehe Dynamisches JMS-Metaobjekt erstellen).

  2. Fügen Sie den anwendungsspezifischen Informationen auf Geschäftsobjektebene Ihrer Anforderungsgeschäftsobjektdefinition den Tag cw_mo_conn hinzu, um das Attribut anzugeben, in dem das dynamische Metaobjekt enthalten ist.

    Der Tag cw_mo_conn hat folgendes Format:

    cw_mo_conn=dynamischesMetaObjAttr

    Dabei ist dynamischesMetaObjAttr der Name des Attributs in dem Anforde- rungsgeschäftsobjekt, in dem das dynamische Metaobjekt enthalten ist.

In Abb. 24 wurde der Anforderungsgeschäftsobjektdefinition HUB_JMSRequest_BusObj zum Beispiel ein Attribut mit dem Namen JMSDynMO hinzugefügt. Dieses Attribut enthält das dynamische Metaobjekt, das ein untergeordnetes Geschäftsobjekt des Typs JMSDynMO_BusObj ist. Darüber hinaus wurden die anwendungsspezifischen Informationen des Anforderungsgeschäftsobjekts modifiziert, um den folgenden Tag cw_mo_conn zur Angabe dieses dynamischen Metaobjekts einzufügen:

cw_mo_conn=JMSDynMO

Copyright IBM Corp. 2003, 2005