There are a few specifics, when you run InterFormNG on the IBM i platform. The specifics are listed below:
•InterFormNG is installed on the IBM i by installing the Spool2XML product.
•The web service and the document processor service are started/stopped by starting/stopping the subsystem, IFORMNG/IFORMNG. This can be done via these options on the menu IFORMNG/IFORMNG:
10. Start IFORMNG subsystem
11. End IFORMNG subsystem
•If InterFormNG should start, when the IBM i is started (IPL'ed), then you will need to insert a start of the subsystem, IFORMNG/IFORMNG in the startup program referred to by the system value, QSTRUPPGM.
•A normal printer in InterFormNG refers to an output queue and library to which the printer is connected. This is described here.
•The actual printing require a printer connected via a writer job to the specific output queue - or you can print (as on other platforms) directly to printer via other connection types.
•These print data streams/mime types are NOT supported on the IBM i platform: Driver print and Postscript.
•There are several special meta data keys, that can be used for setting attributes of spooled files created by InterFormNG.
•It is possible to call a script, when you generate a PDF file. If you want to call the script on the IBM i, then you need to add a link to the program, that you would like to call. The link should be placed in /IFormNG/InterFormNG-shell/user/resources/script e.g. with this command:
ADDLNK OBJ('/QSYS.LIB/MYLIB.LIB/CPYXML.PGM')
NEWLNK('/IFormNG/InterFormNG-shell/user/resources/script/cpyxml.pgm')
The program can be based on the demo RPGLE source, CPYXML, which is placed in source file, IFORMNG/APISRC. The compiled program, IFORMNG/CPYXML can also be called for tests, but should not be used for production.
•No user objects including the programs called as scripts should be placed in the IFORMNG library.
•InterFormNG is installed with Spool2XML on the IBM i platform. So the Spool2XML section should be observed.
•This section should also be read.
Important: Version 2020R20 and future versions of InterFormNG only runs on Java 1.8. Previous versions of InterFormNG also ran on Java 1.7.
This means e.g. that you can only install and run this version (and future versions) on AS400/iSeries/IBM i, that runs V7R1 or higher.
InterFormNG runs on many platforms including IBM i, and those that upgrade OS400 to V7R4 should consider, how the Java version is selected as InterFormNG can point to Java 7. Java 7 cannot run on V7R4, so if InterFormNG refers to Java 7, then you might experience, that the IFORMNG subsystem starts up, but the jobs inside stop immediately. The explanation and solution is included below:
The Java version used for InterFormNG on the IBM I platform can be selected in three ways:
1) By the general system setup as described here: http://www-01.ibm.com/support/docview.wss?uid=nas8N1019917
2) By setting the path to Java in the data area, IFORMNG/JAVA_HOME you can override the general system setup.
3) Inside configuration files in the IFS inside the directory: /iformng/InterFormNG-shell
Inside this directory you can find the stream files: service-as400.sh and service-web-as400.sh. Inside of these files you can override both the general system setup and the data area. You can edit the stream files with Notepad. Inside these files you may have a line like this:
export -s JAVA_HOME=/QOpenSys/QIBM/ProdData/JavaVM/jdk70/64bit
If so, then InterFormNG will search for Java in this directory only, and if referring to Java 7, then nothing will happen..
A likely problem is, that the stream files refer to Java 7. You can now solve the issue in two ways:
1) Remove references to the Java version in the stream files by inserting a # in front of the export line, that selects the Java version – or removing the line – a backup of the stream file is highly recommended. Then the Java version is selected via either the data area or the system setup.
2) You can also correct the paths in the stream files to refer to Java 8 instead of Java 7.