FTP Caractères spéciaux MF vs Java


Nous faisons un programme de modernisation hérité VSAM/Mainframe vers JAVA. L'un des modules du système hérité génère un fichier et le fichier est FTPed par st vers Microsoft windows Server. Le fichier contient des symboles ]|![¢^qui sur FTP se traduit en Ù^/!›µ.

Cependant, lorsque nous faisons la même fonctionnalité en Java via le client FTP Apache Commons, les caractères spéciaux sont conservés tels quels]|![¢^. Pas de traduction qui s'est passé. L'exigence est de garder la traduction telle quelle comme le module en aval ne vont pas être mis à niveau dans un proche avenir.

Quelqu'un a rencontré ce problème sur la façon dont du côté Java nous pouvons faire cette traduction ce que Mainframe est capable de réaliser pendant FTP?

ftp = new FTPClient();
ftp.addProtocolCommandListener(new PrintCommandListener(new PrintWriter(System.out)));
int reply;
ftp.connect(host);
reply = ftp.getReplyCode();
if (!FTPReply.isPositiveCompletion(reply)) {
    ftp.disconnect();
    throw new Exception("Exception in connecting to FTP Server");
}
ftp.login(user, pwd);
ftp.site("SBD=(IBM-1140,ISO8859-1)") //not working ftp says not recognised

Au moment où il exécute le code du site(networkpage, characterpage), il dit non reconnu.Le sbd est la commande zos site, tout le monde connaît le client ftp java correspondant.

Author: Rohan Meher, 2016-10-06

1 answers

J'ai eu un problème similaire. Donc, au lieu d'utiliser ftp.site que j'ai utilisé

ftp.sendCommand("site sbdataconn=AAAA.BBBB.CCC");

AAAA.BBBB.CCC est l'ensemble de données mainframe avec FB, Lrecl 256 contenant la référence de traduction.

Changer l'instruction ftp en

ftp.sendCommand("site sbdataconn=(IBM-1140,ISO8859-1)");
 0
Author: Dinesh, 2016-10-08 13:56:46