[logback-user] jndi db access in tomcat5.5
anton.tagunov at umail.ru
Tue Jul 15 12:41:26 CEST 2008
Diego> prepended by "java:comp/env", as this is the standard context for java
Diego> objects and the JNDIConnectionSource does not prepend the searched values with it.
Anton> Looks like a nice idea to me.
Anton> Will not be backwards compatible but logback is not version 1 yet.
Diego> In my company we have our own DataSourceLocator class that abstracts the
Diego> JNDI lookup and automagically prepends all searched keys with
Diego> "java:comp/env" but this is obviously custom behaviour.
Diego> There are two options here: document the need for the prefix in the
Diego> manual or add the prefix to all keys in the JNDIConnectionSource class.
Diego> I'd suggest the former option as the best one
Could you please create a Jira item for this?
Don't worry, if it's deemed a bad idea the
item shall be simply closed as 'WONT FIX'.
Diego> Another thing I got problems with was slf4j's jcl-over-slf4j-1.5.2.jar.
Diego> logback ... initialized too early when using jcl-over-slf4j, before tomcat
Diego> makes the JNDI resources available to the web application
Diego> ch.qos.logback.core.db.JNDIConnectionSource at 67c1a6 - Error while getting
Diego> data source javax.naming.NameNotFoundException:
Diego> javax.naming.NameNotFoundException: 'comp' can't be found in this context
Diego> at org.apache.naming.NamingContext.lookup(NamingContext.java:770)
Anton> Looks pretty weird to me. Diego what folder is jcl-over-slf4j-1.5.2.jar in?
Anton> Do you have another copy in shared tomcat libraries? Or together with tomcat own jars?
Diego> I tested including jcl-over-slf4j in both the webapp WEB-INF/lib dir and
Diego> in global tomcat common/lib. Got the same error both times.
Diego, could you please try this WITHOUT jcl-over-slf4j in common/lib?
99.99% probability that it's the root of the problem.
More information about the Logback-user