Die hier beschriebene Methode verwenden Sie, wenn Sie für benutzerdefinierte Zeichensätze nicht wie in Benutzerdefinierte Zeichensätze verwenden beschrieben die JVM erweitern wollen, sondern die Erweiterung nur für BeanConnect gelten soll.
Wenn die vordefinierten Code-Tabellen Ihren Anforderungen nicht genügen, können Sie eigene Code-Tabellen erstellen. Eine Java-Beispiel-Source für eine benutzerdefinierte Code-Tabelle ist im Lieferumfang enthalten. Sie finden dieses Beispiel in der JavaDoc zu dem Package net.fsc.beanta.encoding in der Klasse Encoding.CustomEncoder.
Wenn Sie Klassen der eigenen Code-Tabellen verwenden, sollten Sie die Klassen zur Datei BeanConnect.rar
hinzufügen, um Probleme mit den Class Loaders zu vermeiden.
So wählen Sie die benötigte Code-Tabelle während des Deployments aus:
Geben Sie in der Konfigurations-Property
encoding
mitcustom:<my-code-table>
den Namen der gewünschten Tabelle an.Aktivieren Sie die Konfigurations-Property
encodingActive
, indem Sie die Einstellung true wählen.
So wählen Sie die gewünschte Code-Tabelle zur Laufzeit aus:
Aktivieren Sie im Java-Programm die gewünschte Code-Tabelle mit der Methode
setEncoding()
des InterfaceEISConnection
oder des InterfaceOltpMessageContext
wie folgt:OwnTable myTable = new OwnTable(); connection.setEncoding(new Encoding.CustomEncoder(myTable)); connection.setEncodingActive(true);
i | Aus Kompatibilitätsgründen wird nicht nur die Vorgehensweise, die für die Verwendung benutzerdefinierter Code-Tabellen beschrieben wurde, unterstützt, sondern auch die folgende Vorgehensweise, bei der die Konvertierung mit zwei Java-Programmen implementiert ist: OwnTable_ByteToChar myTableByteToChar = new OwnTable_ByteToChar(); OwnTable_CharToByte myTableCharToByte = new OwnTable_CharToByte(); setEncoding(new Encoding.Custom (myTableByteToChar,myTableCharToByte)); |
Diese Code-Tabellen unterstützen nur 1-Byte-Codierung. Das bedeutet, Codierungsquelle und -ziel für ein Zeichen kann nur ein Byte sein. Wenn Sie 2-Byte-Code-Tabellen benötigen, empfehlen wir Ihnen die Verwendung eines benutzerdefinierten Zeichensatzes, der alle Möglichkeiten der Code-Konvertierung bietet.