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 InterfaceByteContainer
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 InterfaceByteContainer
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 MethodensndRecord()
,rcvRecord()
odercall()
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 ObjektOltpMessage
dient als Container für den Nachrichteninhalt, der sich aus einem oder mehrerenOltpMessageRecord
-Objekten und/oder aus einem oder mehrerenOltpMessagePart
-Objekten zusammensetzt. Während ein OltpMessageRecord beliebig lang sein kann, darf einOltpMessagePart
32767 Bytes nicht übersteigen.OltpMessagePart
-Objekte werden von einer UTM-Partneranwendung auf Nachrichtenteile abgebildet.OltpMessageRecord-
Objekte undOltpMessagePart
-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 Aufrufsend...()
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 OperandenRESTART=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(...);