Troubleshooting
Problem
When trying to add a 3rd party appender (e.g. biz.minaret.log4j.DateFileAppender) in TDI environment, below error is thrown at server startup: "ERROR Could not instantiate appender named "Default".
Symptom
TDI Server startup shows following messages:
Fri Aug 26 16:24:21 CST 2011 CTGDIC076I Local development server launched ... Fri Aug 26 16:24:22 CST 2011 .
Fri Aug 26 16:24:22 CST 2011 log4j:ERROR Could not instantiate class biz.minaret.log4j.DatedFileAppender].
Fri Aug 26 16:24:22 CST 2011 java.lang.ClassNotFoundException:
biz. minaret.log4j.DatedFileAppender
Fri Aug 26 16:24:22 CST 2011 at java.lang.Class.forName(Class.java:130)
Fri Aug 26 16:24:22 CST 2011 at org.apache.log4j.helpers.Loader.
loadClass(Loader.java:179)
Fri Aug 26 16:24:22 CST 2011 at org.apache.log4j.helpers.
OptionConverter.instantiateByClassName(OptionConverter.java:320)
Fri Aug 26 16:24:22 CST 2011 at org.apache.log4j.helpers.
OptionConverter.instantiateByKey(OptionConverter.java:121)
Fri Aug 26 16:24:22 CST 2011 at org.apache.log4j.PropertyConfigurator.
parseAppender(PropertyConfigurator.java:664)
Fri Aug 26 16:24:22 CST 2011 at org.apache.log4j.PropertyConfigurator.
parseCategory(PropertyConfigurator.java:647)
Fri Aug 26 16:24:22 CST 2011 at org.apache.log4j.PropertyConfigurator.
configureRootCategory(PropertyConfigurator.java:544)
Fri Aug 26 16:24:22 CST 2011 at org.apache.log4j.PropertyConfigurator.
doConfigure(PropertyConfigurator.java:440)
Fri Aug 26 16:24:22 CST 2011 at org.apache.log4j.PropertyConfigurator.
doConfigure(PropertyConfigurator.java:476)
Fri Aug 26 16:24:22 CST 2011 at org.apache.log4j.helpers.
OptionConverter.selectAndConfigure(OptionConverter.java:471)
Fri Aug 26 16:24:22 CST 2011 at org.apache.log4j.LogManager.<clinit>
(LogManager.java:125)
Fri Aug 26 16:24:22 CST 2011 at java.lang.J9VMInternals.initializeImpl
(Native Method)
Fri Aug 26 16:24:22 CST 2011 at java.lang.J9VMInternals.initialize
(J9VMInternals.java:196)
Fri Aug 26 16:24:22 CST 2011 at org.apache.log4j.Logger.getLogger
(Logger.java:105)
Fri Aug 26 16:24:22 CST 2011 at com.ibm.di.loader.IDILoader.
locateInstallDir(IDILoader.java:220)
Fri Aug 26 16:24:22 CST 2011 at com.ibm.di.loader.IDILoader.run
(IDILoader.java:510)
Fri Aug 26 16:24:22 CST 2011 at com.ibm.di.loader.IDILoader.main
(IDILoader.java:180)
Fri Aug 26 16:24:22 CST 2011 log4j:ERROR Could not instantiate appender
named "Default".
Cause
TDI initializes Log4j before we have had a change to set up loader which looks through the jars directory, and hence we get exception "java.lang.ClassNotFoundException"
Environment
Windows, TDI 7.0, TDI 7.1
Resolving The Problem
1. Ensure that 3rd party jar file is present at TDI_HOME_DIR%\jars.
2. Modify "ibmdisrv.bat" to include the jar (e.g. "datedFileAppender-1.0.2.jar") in classpath like below:
"%TDI_JAVA_PROGRAM%" -classpath "%TDI_HOME_DIR%\jars/log4j-datedFileAppender-1.0.2.jar;%TDI_HOME_DIR%\IDILoader.jar" %ENV_VARIABLES% com.ibm.di.loader.IDILoader com.ibm.di.server.RS %*
3. Restart TDI.
In case we apply latest fix pack, changes made to "ibmdisrv.bat" will only be preserved, if respective fix pack does not have any modifications in "ibmdisrv.bat".
Historical Number
15872;999;616
Product Synonym
ITDI;TDI;Tivoli Directory Integrator
Was this topic helpful?
Document Information
Modified date:
16 June 2018
UID
swg21515869