[ 
http://issues.apache.org/jira/browse/IBATIS-193?page=comments#action_12330943 ] 

Dimiter Kapitanov commented on IBATIS-193:
------------------------------------------

Hello Sven,

You are right - there was commons-logging.properties in the classpath, which 
rely on Log4J.
This is the reason. Thank you !

All the best,
Dimiter

> Hidden jar dependicity for iBatis DBL 2.1.5
> -------------------------------------------
>
>          Key: IBATIS-193
>          URL: http://issues.apache.org/jira/browse/IBATIS-193
>      Project: iBatis for Java
>         Type: Bug
>   Components: SQL Maps
>     Versions: 2.1.5
>  Environment: JDK 1.4.2
> Tomcat 4.1.x
>     Reporter: Dimiter Kapitanov
>     Priority: Minor

>
> This issue occurs only if you have commons-logging.jar in your classpath (but 
> NO log4j.jar !) : 
> java.lang.NoClassDefFoundError
>       at 
> com.ibatis.sqlmap.engine.builder.xml.SqlMapConfigParser.<init>(SqlMapConfigParser.java:53)
>       at 
> com.ibatis.sqlmap.engine.builder.xml.SqlMapConfigParser.<init>(SqlMapConfigParser.java:40)
>       at 
> com.ibatis.sqlmap.client.SqlMapClientBuilder.buildSqlMapClient(SqlMapClientBuilder.java:78)
>       at astarot.persist.Helper.initPersistance(Helper.java:94)
>       at dsk.jt.JTLogic.configureApplication(JTLogic.java:137)
>       at dsk.jt.JTLogic.<init>(JTLogic.java:43)
>       at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
>       at 
> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
>       at 
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
>       at java.lang.reflect.Constructor.newInstance(Constructor.java:274)
>       at java.lang.Class.newInstance0(Class.java:308)
>       at java.lang.Class.newInstance(Class.java:261)
>       at astarot.dominator.web.ActionServlet.init(ActionServlet.java:169)
>       at javax.servlet.GenericServlet.init(GenericServlet.java:256)
>       at 
> org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:935)
>       at 
> org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:668)
>       at 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:210)
>       at 
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
>       at 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
>       at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>       at 
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
>       at 
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
>       at 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
>       at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>       at 
> org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2422)
>       at 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
>       at 
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
>       at 
> org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:171)
>       at 
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
>       at 
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:163)
>       at 
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
>       at 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
>       at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>       at 
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
>       at 
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
>       at 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
>       at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>       at 
> org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:199)
>       at 
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:828)
>       at 
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:700)
>       at 
> org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:584)
>       at 
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
>       at java.lang.Thread.run(Thread.java:534)
> The row in astarot.persist.Helper where exception occurs is :
> SqlMapClient mapper = SqlMapClientBuilder.buildSqlMapClient(reader, props);
> This exception won't occur if you have both commons-logging.jar and log4j.jar 
> in the classpath, or even only log4j.jar.
> All is OK in case you do not have both jars (but then logging is off).
> I have looked in sources but was not able to find the reason. 
> Take this report (and the workaround) as time saver, if someone comes in same 
> situation.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira

Reply via email to