17.5 C
New York
Sunday, June 4, 2023

JSPM Support with NW04s (Java Support Package Manager)

Java Support Package Manager (JSPM) in SPS04 and SPS05 does not support a patch process on iSeries.

This tutorial explains about all distinctive characteristic of patch process for Java Support Packages within SAP NetWeaver release 2004s on iSeries.

Installing and Starting JSPM

Question: I am not able to import Support Packages into my system because my system has JSPM version lower than SPS06.

Solution: As iSeries before SPS06 does not support JSPM therefore first you need to deploy JSPM version SPS06 manually with Software Deployment Manager (SDM).

For more information about using SDM, see SAP Help Portal at help.sap.com -> Documentation -> SAP NetWeaver -> SAP NetWeaver 2004s -> SAP Library -> SAP NetWeaver Library -> SAP NetWeaver by Key Capability -> Application Platform -> Java Technology in SAP Web Application Server -> Java Development Manual -> Core Development Tasks -> Deployment: Putting It All Together -> Software Deployment Manager.

After deployment of JSPM version SPS06 gets finished you need to perform some additional manual actions, as described below.

Question: I want to import Support Packages in my system but I have JSPM version lower than SPS09 in my system.


adjust authorities of the go script:

logon as ADM

start the QSHELL environment with command QSH

cd /usr/sap///j2ee/JSPM

chmod 755 go

if your current user is not the owner of “go”, log on with the owning user profile (check with ls -l in QSHELL) and run chmod again

prevent JSPM from starting the GUI on your iSeries host automatically:

file /usr/sap///j2ee/JSPM/param/jspm_config.txt (or /usr/sap///j2ee/JSPM/deploy/param/jspm_config.txt if JSPM’s bootstrapping process has not yet already copied the deployed files with the very first run) contains a property /dialog/SDTServerConnection/SDTGui/launch. Therefore change its value from true to false.

Starting JSPM:

There are two scripts which are involved in starting JSPM on iSeries:

On the iSeries host you start the JSPM server process with the command

QSH CMD(‘/usr/sap///j2ee/JSPM/go’)

This script indicates that the server is waiting for a GUI process to connect.

If your JSPM is at SPS15 or higher, the JSPM job will be submitted to the instance’s subsystem. If you want to avoid the submission and run the JSPM in your interactive job, you can use

QSH CMD(‘/usr/sap// /j2ee/JSPM/go -nosubmit’)

However, the default behaviour of submitting the JSPM into the instance subsystem is more recommended.

If you want to use the submit feature and are not yet at SPS15, you can replace your script /usr/sap///j2ee/JSPM/go with the file attached to this note.

On Windows, you start the GUI using script

usrsapj2eeJSPMStartGui.bat .

As this by default connects to localhost therefore you will see an error message and have to specify the host to which you want to connect on the first screen.

What are the Recommendations?


Update JSPM to the latest available version before importing any packages. So that you can avoid to run into well known problems, e.g. the ones described further down in this note.

Please do not import any package which requires to restart the system if you use an IGS version lower than patch level 2. In the older versions of IGS not all processes can be stopped which leads to locks and breaks the JSPM procedure. In JSPM patch level you can deploy any recent IGS package regularly.

You can install a higher IGS level at any time. following 937000

Kernel Package:

Support of updating the kernel package is given with JSPM. But, due to some restrictions and faults mentioned below it is recommended to use the kernel tools LODSAPKRN and APYSAP for this issue because it is more convenient and have a proven quality over time. 912575 explains in detail how to proceed.

In some rare cases, outdated versions of property files cause problems at system start after a new kernel is applied. In order to avoid this kind of issues please delete the following files as long as the system is up; these files will be recreated the next time the system is started:

  • /SDM/Program/config/sdm_jstartup.properties.vmprop
  • /j2ee/cluster/instance.properties.vmprop

Support Package Stack

Question: While using JSPM and I want to apply a complete Support Package Stack to my system but it is asking me you to apply the Kernel package separately.

Solution: This is because applying a complete SPS starts with patching the Kernel. For avoiding the problems described above in the part ‘Kernel package’ apply the Kernel first in a separate step.

Therefore you can Exclude the kernel package from the package stack and Import it with the standard tools after. After importing the Kernel you will able to run the whole SPS.

Troubleshooting for specific packages or package levels; known problems:

Kernel package

Question: Getting Array Out Of Bounds Exception in class Os4SapcarArchiveHandler

Solution: This is because the class needs to do a temporary mapping between kernel library name and package name. The version information in the package name is used for this purpose.

To resolve this issue keep the full name for packages SAPEXE< x>.SAR, SAPEXEC1.SAR, SAPEXEDB.SAR while downloading them from the service market place to your EPS inbox.

Question: After I deployed the name of the currently applied kernel the library has changed.

Solution: This issue is caused because the kernel library which you used at the beginning of the patch procedure is locked by at least the active session of the JSPM process, therefore this library cannot be renamed. JSPM creates a new kernel library according to the pattern KRN with a two digit.

You can solve this by following steps:

  • Check the name of your current library after deployment by logging on onto a new session and using command DSPLIBL.
  • Rename the library and after that update your file system using RMVSAP and APYSAP for the renamed library.

Question: After deployment of the kernel package the system is not starting, JSPM shows status not deployed. Repeating the broken deployment gives an error with command CPYF, Below is the error log:

/usr/sap//JCnn/j2ee/JSPM/log/log_ /CPYF_nn.err

With the message:

CPF2874: Both to-file and from-file members are the same.

Solution: This is because JSPM does not recognize that the copy of the binaries which are already succeeded and tries to copy an object onto itself.

Please follow the below steps to resolve this problem:

End JSPM and restart the system. Do not to finish the broken deployment of component kernel. Choose new Deployment, JSPM will now recognize the new Kernel status.

Question: The system does not start after deployming the kernel package, even when I try to start it manually. In the log files we can find the following error messages in /usr/sap//JCnn/work/dev_bootstrap:

[Thr 772] SigIGenAction (pid=31895)

[Thr 772] SigIRegisterRoutine: handler for signal 14 installed (SIG_DFL)

[Thr 772] SigIUnblock: signal 15 was in UNBLOCKED mode

Signal 15 encountered.

=> 64 bit R/3 Kernel

Solution: Because of the changes in the kernel the new system could not use the old vm-property files.

Below are the steps to resolve this error

Delete the following files:

  • /SDM/Program/config/sdm_jstartup.properties.vmprop
  • /j2ee/cluster/instance.properties.vmprop

Start the system manually, the property files will be recreated during the system start.

When the system is up and running you can continue with the JSPM process


Question: JSPM breaks with error

Cannot initialize application data.

In file config/BOOTSTRAP.xml in the JSPM directory you find the tag WIN.

Solution: When you first try to start JSPM server you run script go.bat on Windows. This script initializes the BOOTSTRAP.xml with platform information. JSPM is not able to recover from this even if you start the correct go script on your iSeries host later.

To resolve this problem Edit file BOOTSTRAP.xml and change the tag to OS4.

Then start the go script on your iSeries host as explained above in section I/

Question: JSPM is not working correctly on version lower than SPS15 in i5/OS V6R1.

If you do a java -version, you will see JDK 5.0 as default JDK.

Solution: Exchange the file /usr/sap//< Central instance name>/j2ee/JSPM/go with the one attached to this note. After that JSPM will work with the JDK that is configured for the SAP system by using the environment variable JAVA_HOME. R3INLPGM needs to be at least at patch level #19. This can be checked by verifying that the environment variable JAVA_HOME is set if you are logged on as ADM or OFR.

Related Articles

Latest Articles