Troubleshooting Developer environment issues after upgrading to Java 8

Review the following information if you encounter an error after you migrate your WebSphere Commerce Developer environment to use IBM SDK, Java Technology Edition, Version 8.

db2jcct2 library not found in java.library.path error, encountered when running the ACP utility

Sample error

com.ibm.db2.jcc.am.SqlException: [jcc][10389][12245][4.7.85] Failure in loading native library db2jcct2, java.lang.UnsatisfiedLinkError: db2jcct2 (Not found in java.library.path): ERRORCODE=-4472, SQLSTATE=null
at com.ibm.db2.jcc.am.dd.a(dd.java:660)
at com.ibm.db2.jcc.am.dd.a(dd.java:60)
at com.ibm.db2.jcc.am.dd.a(dd.java:94)
at com.ibm.db2.jcc.t2.a.a(a.java:37)
at com.ibm.db2.jcc.t2.T2Configuration.<clinit>(T2Configuration.java:94)
at com.ibm.db2.jcc.am.o.a(o.java:26)
at com.ibm.db2.jcc.am.o.c(o.java:48)
at com.ibm.db2.jcc.DB2Administrator.getCataloguedDatabases(DB2Administrator.java:60)
at com.ibm.commerce.util.DB2Local2Global.convertAlias(DB2Local2Global.java:76)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:90)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:55)
at java.lang.reflect.Method.invoke(Method.java:508)
at com.ibm.commerce.util.AllDBConnector.db2GlobalSpec(AllDBConnector.java:2321)
at com.ibm.commerce.util.AllDBConnector.connectDb2(AllDBConnector.java:2168)
at com.ibm.commerce.util.AllDBConnector.doConnect(AllDBConnector.java:1865)
at com.ibm.commerce.util.AllDBConnector.connect(AllDBConnector.java:1454)
at com.ibm.commerce.util.AllDBConnector.connectOrFail(AllDBConnector.java:1411)
at com.ibm.wca.IdResGen.IdResolve.obtainConnection(IdResolve.java:619)
at com.ibm.wca.IdResGen.IdResolve.perform(IdResolve.java:202)
at com.ibm.wca.IdResGen.IdResolve.execute(IdResolve.java:334)
at com.ibm.wca.IdResGen.IdResolve.execute(IdResolve.java:358)
at com.ibm.wca.IdResGen.IdResolve.main(IdResolve.java:433)

Solution

This error can be resolved through using the jdbc4 URL to run the acpload utility:
acpload.bat <jdbc:db2://db2server:50000/mydb> <dbuser> <dbpassword> <input_filename> <schema_name>
For example:
acpload.bat "jdbc:db2://localhost:50000/mall" dbuser dbuserpwd defaultAccessControlPolicies.xml

Undefined superclass error, encountered when building the LOBTools project

Sample error

undefined superclass wcfButton for class wcfPunchOutEditServiceButton

Solution

  1. Backup the contents of the RAD95\SDP\dropins\wcde\eclipse\plugins directory.
  2. Remove the following Java archive files, and subdirectory from this directory:
    1. com.ibm.commerce.toolkit.internal.openlaszlo.migration_.jar*
    2. com.ibm.commerce.toolkit.internal.openlaszlo.migration.validation_.jar*
    3. com.ibm.commerce.toolkit.internal.openlaszlo_* (directory)
  3. Place a copy of these removed files into the directory from before the Java 8 migration.
  4. Close Rational Application Developer.
  5. From the command prompt within the RAD_installdir, run the following command:
    eclipse.exe -clean
  6. Open Rational Application Developer.
  7. Rebuild the LOBTools project.

APAR failed to install due to java.io.IOException

Sample log

C:\IBM\WCDE_ENT70\properties\version\update\config\toolkit.native.commerce.base\updateStoreArchives.xml:79: The following error occurred while executing this line:
C:\IBM\WCDE_ENT70\properties\version\update\config\toolkit.native.commerce.base\updateStoreArchives.xml:109: The following error occurred while executing this line:
C:\IBM\WCDE_ENT70\properties\version\update\config\toolkit.native.commerce.base\updateStoreArchives.xml:153: Execute failed: java.io.IOException: Cannot run program "w:\IBM\SDP9502\runtimes\base_v7\java\bin\jar.exe" (in directory "C:\IBM\WCDE_ENT70\starterstores\temp-fep"): CreateProcess error=2, The system cannot find the file specified.
	at com.ibm.ws.install.ni.ismp.utils.ISMPLogUtils.logException(ISMPLogUtils.java:46)
	at com.ibm.ws.install.ni.ismp.actions.InstallNIFMaintenance.execute(InstallNIFMaintenance.java:105)
	at com.ibm.ws.install.ismp.actions.InstallListOfMaintenances.execute(InstallListOfMaintenances.java:69)
	at com.installshield.wizard.RunnableWizardBeanContext.run(RunnableWizardBeanContext.java:20)
Caused by: java.io.IOException: The following error occurred while executing this line:

Solution

Ensure that the updateStoreArchives.xml files are pointing to the new WebSphere Application Server V8.5.5 home directory. For more information, see steps 13 and 14.

Missing server level configurations such as namespace binding or datasource definitions

Solution

Ensure that you restored the previous WebSphere Application Server profile configurations into your new profile. For more information, see steps 1 and 8.