Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

Connection-Interfaces (Übersicht)

&pagelevel(5)&pagelevel

BeanConnect stellt folgende Connection-Interfaces bereit:

  • EISConnection

  • EISOltpConnection

  • EISUpicConnection (nur wenn der EIS Partner eine UTM-Anwendung ist)

Das Interface EISOltpConnection erweitert das Interface EISConnection durch die Bereitstellung von zusätzlichen Leistungsmerkmalen wie z.B. asynchrone Kommunikation (weitere Einzelheiten siehe „Weitere Funktionalität des Interface EISOltpConnection").

Das Interface EISUpicConnection erweitert das Interface EISConnection durch die Bereitstellung von zusätzlichen Leistungsmerkmalen, wie z.B. Merkmale von Datenstrukturen (weitere Einzelheiten siehe „Weitere Funktionalität des Interfaces EISUpicConnection").

Es wird empfohlen, die Interfaces EISOltpConnection und EISUpicConnection nur dann zu verwenden, wenn Sie auch deren zusätzlich angebotenen Funktionen nutzen möchten.

Kommunikationsmethoden des Interfaces EISConnection

Das Interface EISConnection wird von einer Reihe von Interfaces erweitert. Jedes von ihnen stellt für Outbound-Kommunikation zwischen der EJB und der EIS-Anwendung Methoden bereit. Für den Datenaustausch sind dies die Methoden snd(), rcv(), call() sowie verschiedene Varianten von snd() und rcv() wie rcvRecord() oder sndString().

Die von diesen Interfaces angebotenen Kommunikationsmethoden unterscheiden sich durch das Datenformat, auf dem die Methoden basieren:

  • Für Byte-Array-orientierten Zugriff auf EIS-Anwendungen:

    EISConnectionByteArray 

  • Für Byte-Container-orientierten Zugriff auf EIS-Anwendungen:

    EISConnectionByteContainer

    Eine Anwendung kann das Interface EISConnectionByteContainer verwenden und das Interface ByteContainer implementieren, wenn sie mit einem Service in der Partneranwendung strukturierte Objekte austauschen möchte, die Text und binäre Informationen enthalten. In der Klasse, die das Interface ByteContainer implementiert, muss eine Code-Konvertierung für die Textinformation dieses Objekts durchgeführt werden.

    Durch die Bereitstellung eines passenden ByteContainer-Objektes wird die Konvertierung von Byte-Streams in Strings während der Ausführung der Methoden sndRecord(), rcvRecord() oder call() durchgeführt. Objekte, die Sie mit Cobol2Java erzeugen, verwenden diese Funktion (siehe Cobol2Java). 

  • Für OLTP-Message-orientierten Zugriff auf EIS-Anwendungen:

    EISConnectionOltpMessage

    Über dieses Interface werden Objekte des Typs OltpMessage mit der EIS-Anwendung ausgetauscht. Das Objekt OltpMessage dient als Container für den Nachrichteninhalt, der sich aus einem oder mehreren OltpMessageRecord-Objekten und/oder aus einem oder mehreren OltpMessagePart-Objekten zusammensetzt. Während ein OltpMessageRecord beliebig lang sein kann, darf ein OltpMessagePart 32767 Bytes nicht übersteigen. OltpMessagePart-Objekte werden von einer UTM-Partneranwendung auf Nachrichtenteile abgebildet.

    OltpMessageRecord-Objekte und OltpMessagePart-Objekte akzeptieren folgende Datentypen:

    • byte[]

    • String

    • ByteContainer 

  • Für String-orientierten Zugriff auf EIS-Anwendungen:

    EISConnectionString

Für die Code-Konvertierung während des Kommunikationsprozesses steht das Interface EncodingDef zur Verfügung.

Weitere Einzelheiten zu diesen Interfaces finden Sie in der JavaDoc zu BeanConnect.

Weitere Funktionalität des Interface EISOltpConnection

Das Interface EISOltpConnection erweitert das Interface EISConnection um folgende zusätzliche Funktionalität:

  • Methoden speziell für die asynchrone Kommunikation (siehe „Asynchrone Kommunikation“ im Kommunikation unter Verwendung von Connection-Interfaces): setDelayTime(), getDelayTime()

  • Methode setEndConversation().
    Diese Methode legt fest, ob die EIS Partneranwendung die aktuelle Conversation mit dem nächsten Aufruf send...() beenden darf oder nicht.

Damit Sie die zusätzliche, vom Interface EISOltpConnection bereitgestellte Funktionalität verwenden können, müssen Sie das Objekt EISConnection, das Sie mit dem Aufruf getConnection() vom Objekt EISConnectionFactory erhalten, auf den Typ EISOltpConnection casten:

con = (EISOltpConnection)cf.getConnection(...);

Weitere Funktionalität des Interfaces EISUpicConnection

Das Interface EISUpicConnection ist nur relevant, wenn der EIS Partner eine UTM-Anwendung ist. Es erweitert das Interface EISConnection um folgende zusätzliche Funktionalität:

  • „Emulation“ von Terminalfunktionen

    UTM-Conversations, die für Terminals programmiert wurden, können ebenfalls mit Hilfe von BeanConnect angesprochen werden. Die “Emulation” von Terminalfunktionen ist nur mit dem Interface EISUpicConnection möglich. Terminalfunktionen wie z.B. Funktionstasten und Cursorpositionen können über dieses Interface genutzt werden. 

  • Verwendung von Formatnamen (Formatkennzeichen), beim Senden oder Empfangen von Daten

    Beim Datenaustausch zwischen dem Resource Adapter und der UTM-Partneranwendung können auch Formatnamen (Formatkennzeichen) versendet werden. Zusammen mit den Benutzerdaten kann der Resource Adapter somit Datenstrukturinformationen an den UTM-Partner senden oder von ihm empfangen. Diese Funktion wird nur unterstützt, wenn der gewünschte Service das KDCS-Interface verwendet. 

  • Restart-Funktion

    Die UTM-Partneranwendung führt einen automatischen Service-Restart für Benutzerkennungen durch, die über die Steueranweisung USER in Verbindung mit dem Operanden RESTART=YES definiert wurden. 

  • Methode isInTransaction(), um den Transaktionsstatus beim EIS Partner abzufragen.

Damit Sie die von dem Interface EISUpicConnection zusätzlich bereitgestellte Funktionalität verwenden können, müssen Sie das Objekt EISConnection (das Sie mit dem Aufruf getConnection() vom Objekt EISConnectionFactory erhalten) in den Typ EISUpicConnection umwandeln:

con = (EISUpicConnection)cf.getConnection(...);