IBM Support

ISCHandler.bat fails with "ERRORLEVEL was 1 from command."

Troubleshooting


Problem

ISCHandler command fails with java.lang.ClassCastException listing incompatible classes.

Symptom

The ISCHandler command output will with this failure:


Mon Sep 20 14:36:04 EDT 2010: deployISCWarRemote.main: Failed to update isclite application with WAR file:
C://IBM//WebSphere//AppServer//systemApps//isclite.ear//servicedeskIDD.war, Content URI: servicedeskIDD.war and Context Root:
/servicedeskIDD Error: com.ibm.ws.scripting.ScriptingException:
com.ibm.websphere.management.application.client.AppDeploymentException: AppDeploymentException: [null]
java.lang.ClassCastException:
org.eclipse.jst.j2ee.commonarchivecore.internal.impl.ArchiveImpl incompatible with
org.eclipse.jst.j2ee.commonarchivecore.internal.ModuleFile
java.lang.ClassCastException: java.lang.ClassCastException:
org.eclipse.jst.j2ee.commonarchivecore.internal.impl.ArchiveImpl incompatible with
org.eclipse.jst.j2ee.commonarchivecore.internal.ModuleFile
Return Code: -1

Standard Error Output for command:

Return Code: -1 Error recognized - Return Code for Command changed to: 1

ERRORLEVEL was 1 from command.

Exiting C:\ibm\SMP\jacl\solutions\deployISCWarRemote.bat at Mon 09/20/2010 14:36:05.37 with ERRORLEVEL 1
ISCHandler.bat encountered an error deploying the WAR file to the remote system.

ERRORLEVEL was 1.
returning value '1' to the Solution Install runtime at Mon 09/20/2010 14:36:05.38.

Cause

There is an incompatible version of Java in your system path.

Diagnosing The Problem

From the c:\ibm\SMP\jacl\solutions directory enter this command:

java -version

If it returns with the "'java' is not recorgnized..." error then you do not have this issue. If instead it returns a Java version this proves it will use this other Java instead of the one installed with our product. We use Java 1.5. If for example this returns 1.6, then that will definitely cause this failure.

Resolving The Problem

Do these steps:


1) Locate where the Java that is in the path. Use the path command then in order check each directory for the java.exe.

2) Temporarily disable this Java by renaming the exe files to have an exe.BAK extention. For example, java.exe will be renamed to java.exe.BAK. Here is the full list of the Java 1.5 exe files that if you find a matching name should be renamed.

ikeyman.exe
JaasLogon.exe
java.exe
javacpl.exe
javaw.exe
javaws.exe
jextract.exe
keytool.exe
kinit.exe
klist.exe
ktab.exe
pack200.exe
packager.exe
policytool.exe
rmid.exe
rmiregistry.exe
tnameserv.exe
unpack200.exe
unregbean.exe
wunregbean.exe

Note that most commonly you will only find a subset.

3) Confirm there is no other Java in the path by entering this commands and hoping that it is unable to run the java command:
cd \ibm\SMP\jacl\solutions
java -version

4) Run the ISCHandler.bat as you wished.

5) Rename the java exe file back.

Note: the Java exe files were listed because if they were installed in a directory that cannot be removed from the path (for example, C:\windows\system32), this would be the only option. If that is not the case then a quicker method would be to remove the directory from the PATH environment variable then add it back when you are done.

[{"Product":{"code":"SS6HJK","label":"Tivoli Service Request Manager"},"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Component":"--","Platform":[{"code":"PF033","label":"Windows"}],"Version":"7.1;7.2","Edition":"","Line of Business":{"code":"LOB59","label":"Sustainability Software"}}]

Document Information

Modified date:
27 February 2019

UID

swg21450485