Recently we had a customer using our eRPG SDK report with an error. It was happening when calling our #getData() subroutine that retrieves the value of a form field on a web page.
We found in his job log something that for some reason brought back some memories. It looked something like this:
Pointer not set for location referenced.
Suspected program QZHBCGI not found.
Object QZHBCGI in *LIBL type *PGM not found.
Exception recursion detected.
There were also messages logged in QSYSOPR regarding this as well.
A little searching found this very "nondescript" PTF cover letter.
We are having the customer apply this PTF before calling IBM for support and will report back if this solves the issue.
I just received an update from my customer on this. Apparently they have the PTF applied already.
IBM support is saying to try adding the library that the QZHBCGI object is in to the library list. QZHBCGI is a service program. The eRPG SDK service programs are created using binding directories pointing directly to this object (the library is stated in the Binding Directory).
A better option would be to copy the QZHBCGI object into their CGI library, but that still doesn't explain the fact that it's worked since V5Rx up until now (with that one issue from V5R3 to V5R4 mentioned previously that was fixed with a PTF and seems to be exactly the same problem as this).
So, again IBM support I don't believe is looking deep enough. They're focusing on one error in the job log which is that the QZHBCGI object is not found in *LIBL.
I will update when I hear more.
IBM has suggested they add the QHTTPSVR library (where QZHBCGI exists) to the library list or copying the object to their CGI library. Both which seem to work.
But... this shouldn't need to be done. It's worked fine for years. Seems like an ILE issue. Any why it's reporting QZHGCGI type *PGM (instead of *SRVPGM) is odd as well.