Here is an interesting problem several of us have been wrestling with this week:
1. In order for record-level i/o using the IBM Java toolbox to use the native access paths in websphere servlets on an as/400, you have to use usrprf QTMHHTTP in the toolbox connection. (This was covered in my email several weeks ago. The bottom line was the websphere instance runs under QTMHHTTP and the toolbox native access requires the connection to use the same usrprf as the job in which it is running.)
2. If you want to use commitment control with your record-level i/o in websphere, you will have to use any usrprf EXCEPT QTMHHTTP. If we use usrprf QTMHHTTP and try method KeyedFile.startCommitmentControl(KeyedFile.COMMIT_LOCK_LEVEL_ALL), we get a "CPF8366 Commitment definition *N not created" message. If you use any other usrprf, the commitment control works fine - commits, rollbacks, everything.
Problem #2 seems to be tied to how sql server mode works? Maybe there is something I can put in a websphere properties file?
The ideal solution seems to be for the toolbox to remove the restriction that the toolbox userid must match the userid of the job in which it is running to use the native access methods instead of going through the tcp/ip stack. This requirement seems overly restrictive to me. Once the toolbox recognizes that it is running locally on an as/400, it should use the native access methods, period (unless I specify AS400.setMustUseSockets(true)). Why should it matter what userid I am using in the toolbox?
Any thoughts? Has anyone else run into this problem?
As an Amazon Associate we earn from qualifying purchases.
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.