IBM Support

PM43711; 7.0.0.17: EJBDeploy fails Caused by LogConfigurationException

Download


Abstract

EJBDeploy fails to generate the deployment code if the application contains common-logging code and makes use of custom mappings.

Download Description

PM43711 resolves the following problem:

ERROR DESCRIPTION:
EJBDeploy may fail with the following error:

Caused by: rg.apache.commons.logging.LogConfigurationException:
Class org.apache.commons.logging.impl.Jdk
14Logger does not implement Log
at
org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor
(LogFactoryImpl.java:416)

at
org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFa
ctoryImpl.java:525)

... 76 more
Caused by: org.apache.commons.logging.LogConfigurationException:
Class org.apache.commons.logging.impl.Jdk14Logger does not
implement Log
at
org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor
(LogFactoryImpl.java:412)

... 77 more


LOCAL FIX:

PROBLEM SUMMARY

USERS AFFECTED:
All users of the IBM WebSphere Application Server EJBDeploy tool.

PROBLEM DESCRIPTION:
EJBDeploy fails to generate the deployment code if the application contains common-logging code and makes use of custom mappings.

RECOMMENDATION:
None

The problem was caused by limitation places on classloader by commons logging described in
http://wiki.apache.org/commons/Logging/FrequentlyAskedQuestions

In the EJBDeploy scenario multiple classloaders are loading the
LogFactory:
[LogFactory from java.net.URLClassLoader@1905488275] [ENV] Class
org.apache.commons.logging.LogFactory was loaded via classloader
java.net.URLClassLoader@1905488275
[LogFactory from java.net.URLClassLoader@1905488275] [ENV]
Ancestry of classloader which loaded
org.apache.commons.logging.LogFactory is
java.net.URLClassLoader@1905488275 ==
'java.net.URLClassLoader@71937193'
[LogFactory from java.net.URLClassLoader@1905488275] [ENV]
Ancestry of classloader which loaded
org.apache.commons.logging.LogFactory is ClassLoader
tree:java.net.URLClassLoader@1905488275 --?
org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader@1446729
--?
org.eclipse.osgi.baseadaptor.BaseAdaptor$ParentClassLoader@16565
--? BOOT

PROBLEM CONCLUSION:
The limitation can be worked around by restoring the context classloader of the EJBDeploy thread after all the EJBDeploy code generation but before RMIC is called upon the generated code. That
way the commons-logging library and custom converter can be used.

The fix for this APAR is currently targeted for inclusion in fix pack 7.0.0.21. Please refer to the Recommended Updates page for delivery information:
http://www-01.ibm.com/support/docview.wss?rs=180&uid=swg27004980

Prerequisites

Please download the UpdateInstaller below to install this fix.

[{"PRLabel":"UpdateInstaller","PRLang":"US English","PRSize":"7250000","PRPlat":{"label":"AIX","code":"PF002"},"PRURL":"http://www.ibm.com/support/docview.wss?rs=180&uid=swg21205991"}]

Installation Instructions

Please review the readme.txt for detailed installation instructions.

[{"INLabel":"Readme","INLang":"US English","INSize":"8407","INURL":"ftp://public.dhe.ibm.com/software/websphere/appserv/support/fixes/PM43711/readme.txt"}]
On
[{"DNLabel":"7.0.0.17-WS-WAS-IFPM43711","DNDate":"30 Aug 2011","DNLang":"US English","DNSize":"1094985","DNPlat":{"label":"AIX","code":"PF002"},"DNURL":"http://www.ibm.com/support/fixcentral/quickorder?fixids=7.0.0.17-WS-WAS-IFPM43711&product=ibm%2FWebSphere%2FWebSphere+Application+Server&source=dbluesearch","DNURL_FTP":"ftp://public.dhe.ibm.com/software/websphere/appserv/support/fixes/PM43711/7.0.0.17-WS-WAS-IFPM43711.pak","DDURL":"http://public.dhe.ibm.com:7618;sw_websphere;appserv/support/fixes/PM43711/7.0.0.17-WS-WAS-IFPM43711.pak"}]

Technical Support

Contact IBM Support using SR (http://www.ibm.com/software/support/probsub.html), visit the WebSphere Application Server support web site (http://www.ibm.com/software/webservers/appserv/was/support/), or contact 1-800-IBM-SERV (U.S. only).

[{"Product":{"code":"SSEQTP","label":"WebSphere Application Server"},"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Component":"EJBDeploy (WSAD)","Platform":[{"code":"PF002","label":"AIX"},{"code":"PF010","label":"HP-UX"},{"code":"PF012","label":"IBM i"},{"code":"PF016","label":"Linux"},{"code":"PF027","label":"Solaris"},{"code":"PF033","label":"Windows"}],"Version":"7.0.0.17","Edition":"Base","Line of Business":{"code":"LOB45","label":"Automation"}}]

Document Information

Modified date:
15 June 2018

UID

swg24030845