Fix (APAR): PI23168
Status: Fix
Release: 8.5.5.3
Operating System: AIX,HP-UX,Linux,Solaris,Windows
Supersedes Fixes:
CMVC Defect: xxxxxx
Byte size of APAR: 462128
Date: 2014-11-25
Abstract: java.lang.classnotfoundexception in data sources after upgrading to liberty profile 8.5.5.2
Description/symptom of problem:
PI23168 resolves the following problem:
ERROR DESCRIPTION:
After upgrading to WebSphere Application Server Liberty Edition
8.5.5.2, datasources may throw an exception like the following:
Could not find datasource: jdbc/eIntake
javax.naming.NamingException: CWWKN0008E: An object could not
be
obtained for name jdbc/datasource.
at
com.ibm.ws.jndi.internal.WSContext.resolveObject(WSContext.java:
125)
at
com.ibm.ws.jndi.internal.WSContext.lookup(WSContext.java:306)
at
com.ibm.ws.jndi.internal.WSContext.lookup(WSContext.java:301)
at
org.apache.aries.jndi.DelegateContext.lookup(DelegateContext.jav
a:161)
Caused by: java.lang.ClassNotFoundException:
oracle.jdbc.pool.OracleConnectionPoolDataSource
at
com.ibm.ws.classloading.internal.AppClassLoader.findClassCommonL
ibraryClassLoaders(AppClassLoader.java:403)
at
com.ibm.ws.classloading.internal.AppClassLoader.findClass(AppCla
ss Loader.java:232)
at java.lang.ClassLoader.loadClass(Unknown Source)
at
com.ibm.ws.classloading.internal.AppClassLoader.loadClass(AppCla
ssLoader.java:378)
at
com.ibm.ws.jdbc.internal.JDBCDriverService$1.run(JDBCDriverServi
ce.java:226)
This is due to a defect in which an ID generated for nested
library elements is the same across different
elements causing only one of them to be loaded.
LOCAL FIX:
Set an ID on the nested element. As this will
produce a warning from the WebSphere Developer Tools also move
the elements to the top level and using a libraryRef
inside the element to reference them
PROBLEM SUMMARY
USERS AFFECTED:
All users of IBM WebSphere Application
Server Liberty Profile 8.5.5.3 using nested
libraries
PROBLEM DESCRIPTION:
ClassNotFoundExceptions occur where
nested libraries are in use
RECOMMENDATION:
None
Internal IDs generated for nested library elements in server.xml
are the same across different elements causing only one of them
to be loaded. This therefore leads to ClassNotFoundExceptions.
For example when using configuration such as:
the two nested libraries end up with the same internal ID which
leads to problems when class loading.
PROBLEM CONCLUSION:
The Liberty profile server has been changed so that unique IDs
are generated for each nested library element in the server
configuration.
The fix for this APAR is currently targeted for inclusion in fix
pack 8.5.5.4. Please refer to the Recommended Updates page for
delivery information:
http://www.ibm.com/support/docview.wss?rs=180&uid=swg27004980
Directions to apply fix:
NOTE: Mark with an X the:
1) Release the fix applies to
2) The Editions that apply
3) And then DELETE THIS NOTE
Fix applies to Editions:
Release 8.0
__ Application Server (Express or BASE)
__ Network Deployment (ND)
__ Edge Components
__ Developer
Install Fix to all WebSphere installations unless special instructions are included below.
Special Instructions: None
NOTE:
The user must:
* Logged in with the same authority level when unpacking a fix, fix pack or refresh pack.
* Be at V1.4.3 or newer of the Installation Manager. Certain iFixes may require a newer version of the Installation Manager and the Installation Manager will inform you during the installation process if a newer version is required.
The IBM Information Center can provide details, if needed, on the use of the Installation Manager to apply the iFixes.
http://publib.boulder.ibm.com/infocenter/install/v1r4/index.jsp. Shutdown WebSphere Application Server before applying the iFixes. Restart WebSphere Application Server after applying the iFixes.
Directions to remove fix:
The IBM Information Center can provide details, if needed, on the use of the Installation Manager to remove the iFixes.
http://publib.boulder.ibm.com/infocenter/install/v1r4/index.jsp. Shutdown WebSphere Application Server before removing the iFixes. Restart WebSphere Application Server after removing the iFixes.
Directions to re-apply fix:
1) Shutdown WebSphere Application Server.
2) Follow the Fix instructions to apply the fix.
3) Restart WebSphere Application Server.
Additional Information: