Please enable JavaScript to view this site.

InterFormNG2 Manual

Navigation: Troubleshooting

Troubleshooting AS400 specifics

Scroll Prev Top Next More

This section covers issues, that can be met in regards to the IBM i platform (AS400 iSeries). Non IBM i related troubleshooting is found in the section, Troubleshooting.

 

The issues covered are:

 

1.Problem when loading a spooled file

2.The NG2SERVER job does not start in the IFORMNG2 subsystem

3.Monitor an output queue: InterFormNG2 does not create a data queue

4.User authority considerations for IBM i

5.User profile for connecting to the IBM i

6.User profile for netserver access

 

 

Problem when loading a spooled file

This section can help you, if you see this error in the log while loading a spooled file: com/ibm/as400/data/ProgramCallDocument.setTimeOut(I)V in file /QIBM/ProdData/OS400/jt400/lib/jt400Native.jar.

If you see this error message, then you are using an older AS400 with a jt400Native.jar file, that should be updated. You can solve the problem in these ways:

a.Recommended: You can upgrade your java to the latest version by installing the latest OS400 PTFs (cumulative package).

b.You can also remove the reference to the jt400Native.jar file in the stream file (in the IFS) as covered here.

 

 

The NG2SERVER job does not start in the IFORMNG2 subsystem

The NG2SERVER job needs to run in the IFORMNG2 subsystem, if you want to run InterFormNG2 on the AS400/iSeries/IBM i platform. If this job does not start with the subsystem, then you should run the command IFORMNG2/IFORMNG2 and here select option 92. Change NG2 installation:

 

 

                      Configure IFORMNG2 Startup (NG2SETUP)                     

                                                                                

 Type choices, press Enter.                                                     

                                                                                

 IBM I Queue Monitor  . . . . . . > *ACTIVE       *ACTIVE, *INACTIVE, *SAME     

 NG2-Server (Output generator)  . > *ACTIVE       *ACTIVE, *INACTIVE, *SAME     

 CommandLine to NG2 . . . . . . . > *ACTIVE       *ACTIVE, *INACTIVE, *SAME     

 QIBM_QSH_CMD_OUTPUT - *JOB . . . > NONE                                        

                                                                                

                                                                                

 JAVA_HOME Blank=System default   > '/QOpenSys/QIBM/ProdData/JavaVM/jdk80/64bit'

                                                                                

                                                                                

                                                                             

 

 

On the screen above you can verify two things:

1.The value for the line: NG2-Server (output generator) must be *ACTIVE. This indicates, that the InterFormNG2 server will be started the next time, that the IFORMNG2 subsystem is started.

2.The value for the line: JAVA_HOME. This should contain the path to the 64bit version of Java 8. The recommended value is shown above.

 

 

 

Monitor an output queue: InterFormNG2 does not create a data queue

If you setup InterFormNG2 to monitor an output queue in a workflow via the input type: From IBM i output queue, then InterFormNG2 should do two things:

1.A data queue is to be created in the same library as the monitored output queue.

2.The data queue is to be assigned to the monitored output queue.

 

If the InterFormNG2 workflow does not start and the status is error, then it can be, that the data queue does not exist or perhaps it is not assigned to the output queue.

 

You can verify from an IBM i command line, if the data queue and output queue exists with the command:

 

WRKOBJ OBJ(<library>/<output queue>) e.g. as: WRKOUTQ OBJ(QUSRSYS/PRT01).

 

This should result in a list of at least these two objects:

 

Opt  Object      Type      Library 

     PRT01       *DTAQ     QUSRSYS 

     PRT01       *OUTQ     QUSRSYS 

 

If the data queue does not exist, then you should verify:

 

1.Do you have an active connection to the IBM i?

2.Perhaps the user used for the connection does not have sufficient authority to create the data queue?

3.Is there a reference to an error in the system log at the time, when the workflow was created/changed? Perhaps the user profile is lacking authrity?

 

You can verify the connection to the IBM i, if you sign on as a system administrator and then select the system settings.

 

Under the Other settings you find the setup of the connection to the IBM i machine like below:

 

NG2IBMiConnection0001

Here you can consider to connect as another user than the iformng2 user profile, if e.g. you have a restricted environment. You can test if the user is able to sign on with the 'TEST CONNECTION' icon in the bottom and you need of course to save any changes with the SAVE icon in the bottom right.

 

Apart from normal authority restrictions the option to create the data queue can also be locked down via an Exit point in OS400. The exit points can be seen with the command: WRKREGINF.

The exit point relevant for creation of the data queue is: QIBM_QZHQ_DATA_QUEUE. The advice is NOT to change settings of the exit point if this is preventing the creation, but instead to contact your system administrator. Perhaps a third party tool is used for maintaining the exit points or special company rules apply.

 

If you do a dummy change of

 

User authority considerations for IBM i

When you run InterFormNG2 on the IBM i platform, then the default setup is to run InterFormNG2 as the user profile, IFORMNG2, which is created during the installation. This user profile is delivered with the special authority, *SPLCTL (spool control), which ensures, that the user can access all spooled files on the IBM i.

 

The user profile used must at least have use authority to the objects in the IFORMNG2 library and write authority to the directory, /IFORMNG2 in the IFS, where core InterFormNG2 is running.

 

 

User profile for connecting to the IBM i

If you connect to the IBM i machine via the global system settings, then you need to ensure, that InterFormNG2 is always able to sign on with the registered user profile and password. You should consider to disable password expiration for this user profile to avoid any issues when the password runs out. You can set that with this command:

CHGUSRPRF USRPRF(<user>) PWDEXPITV(*NOMAX),

where <user> is the used user profile.

 

 

User profile for connection to the IBM i needs netserver access

If you run InterFormNG2 on another server, then the user profile, that is used for connecting to the IBM i, needs netserver access to the IBM i. That not only require, that the Netserver of the IBM i is running, but it also requires, that the user profile is not disabled for Netserver access, which should not be confused with a normal disabled user profile, which you can see directly on the DSPUSRPRF command like below:

 

NG2TroubleshootAS4001

 

If the user is disabled like above then it is probably also disabled for Netserver access, but not the other way around..

 

You can verify if a user profile is disabled for Netserver access  - and enable the user, but this is not at all as simple.

 

Enable a user profile for Netserver access

 

Here are the steps to go through:

 

First sign on to IBM i Navigator via your browser by specifying the ip-address or hostname of the IBM i followed by colon and port 2001 like e.g.: https://ip-address:2001 or http://ip-address:2001

 

Then you sign on and double click on the server:

 

AS400TRoubleshootAS402

 

 

And now you see this view on the left:

 

AS400TRoubleshootAS403

 

 

Now you need to click this icon and select Servers and TCP/IP Servers as highlighted above:

 

AS400TRoubleshootAS404