FAQ : Frequently Asked Questions
FAQ Table of contents
blue line
1. Q:  What if my System i runs with system value QCCSID 65535?

A:  System value QCCSID 65535 inhibits automatic character conversion from a CCSID to another CCSID. That is general a big problem with CGI programs.
For instance, the external HTML of a CGI program is not translated to the CCSID of the CGI job when loaded in memory from it. If this HTML contains special characters, these characters are pratically corrupted and when output-ted to the browser they may cause problems, such as external HTML sections not found or some piece of Javascript no longer running.

Fortunately, CGIDEV2 service program cares for this problem. The service program checks the job CCSID and, if it is found to be 65535, it is changed to its default value.

However, this may be not enough.
The HTTP server assumes that the CGI is running with the CCSID of system value QCCSID, and this can also cause problems in character conversion.

In order to have your HTTP instance jobs running with a CCSID other than the one specified in system value QCCSID, you may
  • either(re)start your HTTP instance by specifying the desired CCSID value desired CCSID value through the "Instance startup value" fsccsid. Example:
    STRTCPSVR SERVER(*HTTP) HTTPSVR(instance_name '-fsccsid nnn')
    where nnn is the desired CCSID value (example: 37 for US English, 280 for Italian language)
  • or add to the HTTP instance the directive
    CGIJOBCCSID nnn
    where nnn is the desired CCSID value (example: 37 for US English, 280 for Italian language).
    This directive
    • can be a global one (set at the beginning of the HTTP directives)
    • or be specified at library directory level.
      For instance, if your CGI library is named MYCGILIB, you may insert it in that library directory section as follow:
      ScriptAlias /mycgilibp/  /QSYS.LIB/MYCGILIB.LIB/
      <Directory /QSYS.LIB/MYCGILIB.LIB/>
       CGIJOBCCSID nnn
      </Directory>
blue line