Pour les données provenant d'un système d'information
d'entreprise externe, vous pouvez créer des API qui transforment les
données de type chaîne au format de langue bidirectionnelle pris en
charge et les données envoyées à partir de
WebSphere ESB
vers un système d'information d'entreprise externe au format bidirectionnel
utilisé par ce système.
Avant de commencer
Pour plus d'informations sur la prise en charge des
langues bidirectionnelles, reportez-vous à la section
Localisation. Servez-vous du tableau de
cette section pour déterminer la valeur correcte de la chaîne d'entrée ou
de sortie à utiliser lors de la conversion de données de type chaîne
d'un format dans un autre.
Pour créer une API permettant de transformer
le format de langue bidirectionnelle des objets de type chaîne, procédez comme
suit.
Procédure
- Il convient d'inclure toutes les classes bidirectionnelles contenant l'implémentation du moteur bidirectionnel. Exemple :
import com.ibm.bidiTools.bdlayout.*;
- Définissez les chaînes de manière à ce qu'elles contiennent l'objet données à convertir, ainsi que les valeurs des formats d'entrée et de sortie.
Le format d'entrée correspond au format bidirectionnel dans lequel l'objet est actuellement stocké. Le format de sortie est le format bidirectionnel dans lequel vous voulez stocker l'objet chaîne.
Exemple :
String strIn = new String("Bonjour à tous");
String formatIn = "ILYNN";
String formatOut = "VLYNN";
- Appelez la fonction BidiStringTransformation. Exemple :
String strOut = BiDiStringTransformation(strIn, formatIn, formatOut);
String BiDiStringTransformation(String strIn, String formatIn, String formatOut) {
- Testez si la chaîne d'entrée est nulle. Exemple :
if (strIn == null) return null;
- Exécutez la transformation. Exemple :
BidiFlagSet flagsIn;
BidiFlagSet flagsOut;
formatIn = formatIn.toUpperCase();
formatOut = formatOut.toUpperCase();
if (formatIn != null)
flagsIn = new BidiFlagSet(formatIn.toCharArray());
else
flagsIn = new BidiFlagSet();
if (formatOut != null)
flagsOut = new BidiFlagSet(formatOut.toCharArray());
else
flagsOut = new BidiFlagSet();
if (flagsIn.equals(flagsOut)) return strIn;
String strOut = BiDiStringTransformation(strIn, flagsIn, flagsOut);
return strOut;
}