I’m doing a project using webMethods IS6.0 on IBM AIX.
There is an interface requirement to transfer the files between IS v6.0 and EP system of the customer.
The files are named in various languages such as English, Korean and so on.
I’m trying to get a file named in Korean language from the EP system running FTP server, but can not get any result.
On the other hand, the English file name is finely working.
For this job, I’m using the built-in service of pub.client:ftp.
I guess there might be some problems in webMethod built-in ftp service.
Can anybody help me in figuring this out?
Thanks a lot in advance.
Have you tried to use the “encoding” optional parameter in the pub.client.ftp:login or pub.client:ftp service?
The default value is usually what the default JVM encoding is on your IS server app. Mine is iso-8859-1. I think that you need to set this to the correct IANA-registered character set in order for this to work. I believe that this may be UTF-8, UTF-16 or UTF-32. For more info on Unicode support of Korean Language please see: [url=“FAQ - Chinese and Japanese”]http://www.unicode.org/faq/han_cjk.html[/url]
Unfortunately, I do not have any real experience with this but in theory, this should work correctly since Java generally handles different languages.
This is webMethods FTPSession.java Code( in the client.jar )
ftpOut = new PrintWriter(new OutputStreamWriter(sock.getOutputStream(), "8859_1"), true);
ftpIn = new BufferedReader(new InputStreamReader(sock.getInputStream(), "8859_1"));
webMethods used fixed Char Code(8859_1).
but, I don’t know how to make the client.jar package.
I changed char code to EUC-KR and I compiled FTPSession.java.
But I got some error message.
FTPSession.java:311: class$ is reserved for internal use
static Class class$(String class$)
^
FTPSession.java:311: class$ is reserved for internal use
static Class class$(String class$)
^
FTPSession.java:792: cannot resolve symbol
symbol : variable ProxyInputs
location: class com.wm.net.FTPSession.ProxyInputs
pi.ProxyInputs.setupProxyInputs();
^
3 errors
I think the compilation errors that you are seeing indicate that the code you modified was not designed to be modified by end-users. My advice is to report this issue with webMethods and have them look into this issue with you if the “encoding” parameter described above does not work.
In general, it is not advisable to modify code in the client.jar. Doing so causes it to become out-of-sync with the vendor released code, making it difficult when you perform upgrades, new installs, or enhancements.