Wednesday, 22 November 2017

Interesting - java.lang.NoClassDefFoundError: com.ibm.xylem.utils.ErrorHandlerProvider

During an installation of IBM BPM Advanced 8.5.5 onto Red Hat Enterprise Linux 7.4 ( which, I know, is an unsupported combination ), I had an interesting experience.

This was the installation command: -

/opt/ibm/InstallationManager/eclipse/tools/imcl -input /mnt/ResponseFiles/installBPM855.rsp -acceptLicense

and this was the result: -

ERROR: java.lang.NoClassDefFoundError: com.ibm.xylem.utils.ErrorHandlerProvider

java.lang.NoClassDefFoundError: com.ibm.xylem.utils.ErrorHandlerProvider

com.ibm.oti.vm.VM.findClassOrNull(Native Method)
com.ibm.oti.vm.BootstrapClassLoader.loadClass(BootstrapClassLoader.java:62)
com.ibm.oti.vm.VM.findClassOrNull(Native Method)
com.ibm.oti.vm.BootstrapClassLoader.loadClass(BootstrapClassLoader.java:62)
com.ibm.xtq.xslt.jaxp.TransformerImpl.<init>(Unknown Source)
com.ibm.xtq.xslt.jaxp.TransformerImpl.<init>(Unknown Source)
com.ibm.xtq.xslt.jaxp.AbstractTransformerFactory.newTransformer(Unknown Source)
com.ibm.ws.persist.installregistries.PostSessionAction.saveDocument(PostSessionAction.java:496)
com.ibm.ws.persist.installregistries.PostSessionAction.syncFile(PostSessionAction.java:300)
com.ibm.ws.persist.installregistries.PostSessionAction.persistData(PostSessionAction.java:238)
com.ibm.ws.persist.installregistries.PostSessionAction.runPostInstall(PostSessionAction.java:161)
com.ibm.cic.agent.core.PostSessionManager.runActions(PostSessionManager.java:288)
com.ibm.cic.agent.core.PostSessionManager.runPostInstallActions(PostSessionManager.java:260)
com.ibm.cic.agent.core.PostSessionManager.run(PostSessionManager.java:113)
com.ibm.cic.agent.internal.core.Director.install(Director.java:661)
com.ibm.cic.agent.core.Agent.install(Agent.java:1796)
com.ibm.cic.agent.core.Agent.install(Agent.java:1737)
com.ibm.cic.agent.core.internal.commands.InstallCommand.execute(InstallCommand.java:244)
com.ibm.cic.agent.core.internal.commands.AbstractInstallCommand.execute(AbstractInstallCommand.java:336)
com.ibm.cic.agent.core.internal.commands.Input.executeCommands(Input.java:358)
com.ibm.cic.agent.core.application.HeadlessApplication.run(HeadlessApplication.java:599)
com.ibm.cic.agent.core.application.HeadlessApplication.run(HeadlessApplication.java:482)
com.ibm.cic.agent.core.application.HeadlessApplication.runAndReport(HeadlessApplication.java:492)
com.ibm.cic.agent.core.application.HeadlessApplication.runAgentNoStdout(HeadlessApplication.java:446)
com.ibm.cic.agent.core.application.HeadlessApplication.runAgent(HeadlessApplication.java:194)
com.ibm.cic.agent.core.application.HeadlessApplication.run(HeadlessApplication.java:151)
com.ibm.cic.agent.core.application.HeadlessApplication.runHeadlessApplication(HeadlessApplication.java:178)
com.ibm.cic.agent.internal.ui.AgentUIApplication.launch(AgentUIApplication.java:180)
com.ibm.cic.agent.internal.ui.AgentUIApplication.start(AgentUIApplication.java:83)
org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:353)
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:180)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
java.lang.reflect.Method.invoke(Method.java:611)
org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:629)
org.eclipse.equinox.launcher.Main.basicRun(Main.java:584)
org.eclipse.equinox.launcher.Main.run(Main.java:1438)
org.eclipse.equinox.launcher.Main.main(Main.java:1414)


Interestingly, IBM Installation Manager reckoned that things were installed: -

/opt/ibm/InstallationManager/eclipse/tools/imcl listInstalledPackages

com.ibm.cic.agent_1.7.2000.20140227_0303
com.ibm.bpm.ADV.v85_8.5.5000.20140604_1130
com.ibm.websphere.ND.v85_8.5.5002.20140408_1947


and yet: -

/opt/ibm/WebSphere/AppServer/bin/versionInfo.sh 

returned: -

WVER0010I: Copyright (c) IBM Corporation 2002, 2012; All rights reserved.
WVER0012I: VersionInfo reporter version 1.15.1.48, dated 2/8/12

[Fatal Error] :-1:-1: Premature end of file.
[Fatal Error] :-1:-1: Premature end of file.
[Fatal Error] :-1:-1: Premature end of file.
[Fatal Error] :-1:-1: Premature end of file.
[Fatal Error] :-1:-1: Premature end of file.
--------------------------------------------------------------------------------
IBM WebSphere Product Installation Status Report
--------------------------------------------------------------------------------

Report at date and time 22 November 2017 20:49:02 GMT

Installation
--------------------------------------------------------------------------------
Product Directory        /opt/ibm/WebSphere/AppServer
Version Directory        /opt/ibm/WebSphere/AppServer/properties/version
DTD Directory            /opt/ibm/WebSphere/AppServer/properties/version/dtd
Log Directory            

Product List
--------------------------------------------------------------------------------
BPMPC                    installed
ND                       installed

Installed Product
--------------------------------------------------------------------------------
Premature end of file.


I uninstalled WAS and BPM: -

/opt/ibm/InstallationManager/eclipse/tools/imcl uninstallAll

Uninstalled com.ibm.bpm.ADV.v85_8.5.5000.20140604_1130 from the /opt/ibm/WebSphere/AppServer directory.
Uninstalled com.ibm.websphere.ND.v85_8.5.5002.20140408_1947 from the /opt/ibm/WebSphere/AppServer directory.

cleared down the /opt/ibm/WebSphere directory: -

rm -Rf /opt/ibm/WebSphere

and tried again: -

/opt/ibm/InstallationManager/eclipse/tools/imcl -input /mnt/ResponseFiles/installBPM855.rsp -acceptLicense

ERROR: java.lang.NoClassDefFoundError: com.ibm.xylem.utils.ErrorHandlerProvider

java.lang.NoClassDefFoundError: com.ibm.xylem.utils.ErrorHandlerProvider

com.ibm.oti.vm.VM.findClassOrNull(Native Method)
com.ibm.oti.vm.BootstrapClassLoader.loadClass(BootstrapClassLoader.java:62)
com.ibm.oti.vm.VM.findClassOrNull(Native Method)
com.ibm.oti.vm.BootstrapClassLoader.loadClass(BootstrapClassLoader.java:62)
com.ibm.xtq.xslt.jaxp.TransformerImpl.<init>(Unknown Source)
com.ibm.xtq.xslt.jaxp.TransformerImpl.<init>(Unknown Source)
com.ibm.xtq.xslt.jaxp.AbstractTransformerFactory.newTransformer(Unknown Source)
com.ibm.ws.persist.installregistries.PostSessionAction.saveDocument(PostSessionAction.java:496)
com.ibm.ws.persist.installregistries.PostSessionAction.syncFile(PostSessionAction.java:300)
com.ibm.ws.persist.installregistries.PostSessionAction.persistData(PostSessionAction.java:238)
com.ibm.ws.persist.installregistries.PostSessionAction.runPostInstall(PostSessionAction.java:161)
com.ibm.cic.agent.core.PostSessionManager.runActions(PostSessionManager.java:288)
com.ibm.cic.agent.core.PostSessionManager.runPostInstallActions(PostSessionManager.java:260)
com.ibm.cic.agent.core.PostSessionManager.run(PostSessionManager.java:113)
com.ibm.cic.agent.internal.core.Director.install(Director.java:661)
com.ibm.cic.agent.core.Agent.install(Agent.java:1796)
com.ibm.cic.agent.core.Agent.install(Agent.java:1737)
com.ibm.cic.agent.core.internal.commands.InstallCommand.execute(InstallCommand.java:244)
com.ibm.cic.agent.core.internal.commands.AbstractInstallCommand.execute(AbstractInstallCommand.java:336)
com.ibm.cic.agent.core.internal.commands.Input.executeCommands(Input.java:358)
com.ibm.cic.agent.core.application.HeadlessApplication.run(HeadlessApplication.java:599)
com.ibm.cic.agent.core.application.HeadlessApplication.run(HeadlessApplication.java:482)
com.ibm.cic.agent.core.application.HeadlessApplication.runAndReport(HeadlessApplication.java:492)
com.ibm.cic.agent.core.application.HeadlessApplication.runAgentNoStdout(HeadlessApplication.java:446)
com.ibm.cic.agent.core.application.HeadlessApplication.runAgent(HeadlessApplication.java:194)
com.ibm.cic.agent.core.application.HeadlessApplication.run(HeadlessApplication.java:151)
com.ibm.cic.agent.core.application.HeadlessApplication.runHeadlessApplication(HeadlessApplication.java:178)
com.ibm.cic.agent.internal.ui.AgentUIApplication.launch(AgentUIApplication.java:180)
com.ibm.cic.agent.internal.ui.AgentUIApplication.start(AgentUIApplication.java:83)
org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:353)
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:180)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
java.lang.reflect.Method.invoke(Method.java:611)
org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:629)
org.eclipse.equinox.launcher.Main.basicRun(Main.java:584)
org.eclipse.equinox.launcher.Main.run(Main.java:1438)
org.eclipse.equinox.launcher.Main.main(Main.java:1414)


Which is weird :-(

So that may be tomorrow's challenge - either to persist, or to switch to a supported version of RHEL.

What fun !

*UPDATE* Solved it !

Having previously used IBM Installation Manager 1.7.2 ( which comes with BPM 8.5.5 which shipped in mid-2014 ), I switched up to IBM Installation Manager 1.8.6.1.

Having done this, the installation completed successfully: -

/opt/ibm/InstallationManager/eclipse/tools/imcl -input /mnt/ResponseFiles/installBPM855.rsp -acceptLicense

Installed com.ibm.bpm.ADV.v85_8.5.5000.20140604_1130 to the /opt/ibm/WebSphere/AppServer directory.
Installed com.ibm.websphere.ND.v85_8.5.5002.20140408_1947 to the /opt/ibm/WebSphere/AppServer directory.
WARNING: A supported operating system was not detected. Support for your operating system might have been added after the release of the product. See the detailed system requirements Web pages http://www.ibm.com/support/docview.wss?uid=swg27023005 for more information about supported operating systems. You can continue with the installation, but the installation or product operation might not succeed without applying maintenance. Go to the product support Web pages http://www.ibm.com/support/docview.wss?uid=swg27006649 to obtain the latest maintenance packages to apply after installation.
WARNING: A supported operating system was not detected. Support for your operating system might have been added after the release of the product. See the WebSphere Application Server detailed system requirements Web pages - http://www.ibm.com/support/docview.wss?rs=180&&uid=swg27006921 for more information about supported operating systems. You can continue with the installation, but the installation or product operation might not succeed without applying maintenance. Go to the product support Web pages - http://www.ibm.com/support/docview.wss?rs=180&&uid=swg27004980 to obtain the latest maintenance packages to apply after installation.

Note the warning about an unsupported operating system - this comes from WebSphere Application Server 8.5.5.2, which again ships with BPM 8.5.5.

Similarly, versionInfo.sh worked: -

/opt/ibm/WebSphere/AppServer/bin/versionInfo.sh 
WVER0010I: Copyright (c) IBM Corporation 2002, 2012; All rights reserved.
WVER0012I: VersionInfo reporter version 1.15.1.48, dated 2/8/12

--------------------------------------------------------------------------------
IBM WebSphere Product Installation Status Report
--------------------------------------------------------------------------------

Report at date and time 23 November 2017 08:16:54 GMT

Installation
--------------------------------------------------------------------------------
Product Directory        /opt/ibm/WebSphere/AppServer
Version Directory        /opt/ibm/WebSphere/AppServer/properties/version
DTD Directory            /opt/ibm/WebSphere/AppServer/properties/version/dtd
Log Directory            /home/wasadmin/var/ibm/InstallationManager/logs

Product List
--------------------------------------------------------------------------------
BPMPC                    installed
ND                       installed

Installed Product
--------------------------------------------------------------------------------
Name                  IBM Business Process Manager Advanced
Version               8.5.5.0
ID                    BPMPC
Build Level           20140604-091948
Build Date            6/4/14
Package               com.ibm.bpm.ADV.v85_8.5.5000.20140604_1130
Architecture          x86-64 (64 bit)
Installed Features    Business Process Manager Advanced Process Server Non-production License

Installed Product
--------------------------------------------------------------------------------
Name                  IBM WebSphere Application Server Network Deployment
Version               8.5.5.2
ID                    ND
Build Level           cf021414.01
Build Date            4/8/14
Package               com.ibm.websphere.ND.v85_8.5.5002.20140408_1947
Architecture          x86-64 (64 bit)
Installed Features    IBM 64-bit WebSphere SDK for Java
                      WebSphere Application Server Full Profile
                      EJBDeploy tool for pre-EJB 3.0 modules
                      Embeddable EJB container
                      Stand-alone thin clients and resource adapters

--------------------------------------------------------------------------------
End Installation Status Report
--------------------------------------------------------------------------------

which is nice.

Bottom line, DON'T PANIC

No comments:

Note to self - use kubectl to query images in a pod or deployment

In both cases, we use JSON ... For a deployment, we can do this: - kubectl get deployment foobar --namespace snafu --output jsonpath="{...