How to solve a TIRM158E "getCodePage" error.

Document ID : KB000029403
Last Modified Date : 14/02/2018
Show Technical Document Details

This error can potentially occur when a Gen Web Client calls any type of Gen Server load module

TIRM158E: A communication error was encountered on the client.         

[Function: CFBDynamicMessage;;getCodePage]codePageBytes is NULL, for IBM-943C       

 

The error is resolved by adding the following entries to the codepage.properies file;

Cp943C=932

IBM-943C=932

 

However, is there any other recommended way to solve the error?

 

Answer:

The codepage.properties file is used not only to tell Gen which codepage is used in setting data in CFB but also for other various processes,so editing that file is not recommended.

 

The recommended resolution is to edit the CFBDynamicMessageEncodingExit.java user exit. That forces the JVM to use a specific codepage encoding for data sent to the server in the CFB (Common Format Buffer). 

 

In this example of changing user exit CFBDynamicMessageEncodingExit.java, the JVM will be forced to encode with MS932.                     

                                                                          

In function serverEncoding comment out all current lines and add this line:

return "MS932";                                                           

Rebuild the Gen runtime using mkjavart.bat and redeploy it with the default codepage.properties file.