You are viewing a plain text version of this content. The canonical link for it is here.
Posted to log4j-user@logging.apache.org by Raoul OPPLIGER <ro...@iware.ch> on 2005/06/05 17:45:54 UTC

TR : A error message with JdbcAppender

Hi Andreas,
 
I've downloaded a recent version of mysql-connector and I've tried your attatched program.
 
I get exactly the same error as before.
I send you my configuration file (attention: logger's name is different). This file is dynamic and it is constructed with the content of a database. So I use my mysql-connector to access to the database.
 
As I said you before, I don't have problem when all appenders are FileAppender but if one of then is a JdbcAppender, it is impossible to excecute "DOMConfigurator.configure"
 
I work with Oracle JDeveloper 10g but I've the same problem with the instruction
java -cp......
 
Thanks for your previous message.
 
Raoul

________________________________

De: Andreas Fester [mailto:Andreas.Fester@gmx.de]
Date: sam. 04.06.2005 19:04
À: Raoul OPPLIGER
Cc: Log4CXX User; log4j-user@logging.apache.org
Objet : Re: A error message with JdbcAppender



Hi Raoul,

seems that you hit the wrong mailing list :-) - log4cxx is for
the C++ port of log4j. To not loose context, I appended your full
original mail and forwarded it to log4j-user@logging.apache.org.

Although you said that mysql-connector-java-3.0.16-ga-bin.jar is
in your classpath those kind of problems are almost always
a misconfigured classpath. Please try the attached test program
with the also attached .xml configuration file -
When I start it (on Unix) with

   java -cp lib/log4j-1.2.9.jar:. LogTest

I get exactly your error, but when I start it with

   java -cp lib/mysql-connector-java-3.1.8-bin.jar:lib/log4j-1.2.9.jar:.
LogTest

I get a connection error (because I have no mysql database running),
but at least the driver was loaded.

Your mysql-connector 3.0.16 seems a bit out of date, I downloaded a
current one from the mysql homepage. I use log4j 1.2.9 with j2sdk 1.4.2.

HTH,

        Andreas

Raoul OPPLIGER wrote:
> I use log4j with a xml configuration file.
> 
> I don't have problems when I use FileAppender but when I introduce a
> jdbcAppender in my config file
> 
> <appender name="system_system_3_database"
> class="org.apache.log4j.jdbc.JDBCAppender">
>    <param name="URL" value="jdbc:mysql://localhost/OSP"/>
>    <param name="driver" value="com.mysql.jdbc.Driver"/>
>    <param name="user" value="root"/>
>    <param name="password" value=""/>
>    <param name="sql" value="insert into ........."/>
>    <layout class="org.apache.log4j.PatternLayout">
>       <param name="ConversionPattern" value="%d - %c -%-4r [%t] %-5p %c
> %x - %m%n "/>
>    </layout>
> </appender>
> I've the following message with DOMConfigurator
> (mysql-connector-java-3.0.16-ga-bin.jar is in my project CLASSPATH)
> 
> log4j:ERROR Failed to load driver
> java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
>  at java.net.URLClassLoader$1.run(URLClassLoader.java:199)
>  at java.security.AccessController.doPrivileged(Native Method)
>  at java.net.URLClassLoader.findClass(URLClassLoader.java:187)
>  at java.lang.ClassLoader.loadClass(ClassLoader.java:289)
>  at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
>  at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302)
>  at java.lang.Class.forName0(Native Method)
>  at java.lang.Class.forName(Class.java:141)
>  at org.apache.log4j.jdbc.JDBCAppender.setDriver(JDBCAppender.java:336)
>  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>  at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>  at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>  at java.lang.reflect.Method.invoke(Method.java:324)
>  at
> org.apache.log4j.config.PropertySetter.setProperty(PropertySetter.java:196)
>  at
> org.apache.log4j.config.PropertySetter.setProperty(PropertySetter.java:155)
>  at
> org.apache.log4j.xml.DOMConfigurator.setParameter(DOMConfigurator.java:530)
>  at
> org.apache.log4j.xml.DOMConfigurator.parseAppender(DOMConfigurator.java:182)
>  at
> org.apache.log4j.xml.DOMConfigurator.findAppenderByName(DOMConfigurator.java:140)
>  at
> org.apache.log4j.xml.DOMConfigurator.findAppenderByReference(DOMConfigurator.java:153)
>  at
> org.apache.log4j.xml.DOMConfigurator.parseChildrenOfLoggerElement(DOMConfigurator.java:415)
>  at
> org.apache.log4j.xml.DOMConfigurator.parseCategory(DOMConfigurator.java:335)
>  at org.apache.log4j.xml.DOMConfigurator.parse(DOMConfigurator.java:781)
>  at
> org.apache.log4j.xml.DOMConfigurator.doConfigure(DOMConfigurator.java:666)
>  at
> org.apache.log4j.xml.DOMConfigurator.doConfigure(DOMConfigurator.java:616)
>  at
> org.apache.log4j.xml.DOMConfigurator.doConfigure(DOMConfigurator.java:584)
>  at org.apache.log4j.xml.DOMConfigurator.configure(DOMConfigurator.java:687)
>  at ch.consultas.osp.webcrawling.Log.initialize(Log.java:72)
>  at mypackage1.Hello.main(Hello.java:20)
> log4j:ERROR Failed to load driver
> java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
>  at java.net.URLClassLoader$1.run(URLClassLoader.java:199)
>  at java.security.AccessController.doPrivileged(Native Method)
>  at java.net.URLClassLoader.findClass(URLClassLoader.java:187)
>  at java.lang.ClassLoader.loadClass(ClassLoader.java:289)
>  at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
>  at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302)
>  at java.lang.Class.forName0(Native Method)
>  at java.lang.Class.forName(Class.java:141)
>  at org.apache.log4j.jdbc.JDBCAppender.setDriver(JDBCAppender.java:336)
>  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>  at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>  at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>  at java.lang.reflect.Method.invoke(Method.java:324)
>  at
> org.apache.log4j.config.PropertySetter.setProperty(PropertySetter.java:196)
>  at
> org.apache.log4j.config.PropertySetter.setProperty(PropertySetter.java:155)
>  at
> org.apache.log4j.xml.DOMConfigurator.setParameter(DOMConfigurator.java:530)
>  at
> org.apache.log4j.xml.DOMConfigurator.parseAppender(DOMConfigurator.java:182)
>  at
> org.apache.log4j.xml.DOMConfigurator.findAppenderByName(DOMConfigurator.java:140)
>  at
> org.apache.log4j.xml.DOMConfigurator.findAppenderByReference(DOMConfigurator.java:153)
>  at
> org.apache.log4j.xml.DOMConfigurator.parseChildrenOfLoggerElement(DOMConfigurator.java:415)
>  at
> org.apache.log4j.xml.DOMConfigurator.parseCategory(DOMConfigurator.java:335)
>  at org.apache.log4j.xml.DOMConfigurator.parse(DOMConfigurator.java:781)
>  at
> org.apache.log4j.xml.DOMConfigurator.doConfigure(DOMConfigurator.java:666)
>  at
> org.apache.log4j.xml.DOMConfigurator.doConfigure(DOMConfigurator.java:616)
>  at
> org.apache.log4j.xml.DOMConfigurator.doConfigure(DOMConfigurator.java:584)
>  at org.apache.log4j.xml.DOMConfigurator.configure(DOMConfigurator.java:687)
>  at ch.consultas.osp.webcrawling.Log.initialize(Log.java:72)
>  at mypackage1.Hello.main(Hello.java:20)
> Debugger disconnected from local process.
> Process exited.
> 
> Can you help me?
> 
> Raoul

--
Andreas Fester
mailto:Andreas.Fester@gmx.de
WWW: http://littletux.homelinux.org
ICQ: 326674288



Re: TR : A error message with JdbcAppender

Posted by Andreas Fester <An...@gmx.de>.
Hi Raoul,

just to be sure:

- Which operating system are you using (I suppose some
   flavour of MS-Windows)?
- Which java version are you using (java -version)?
- Which log4j version are you using?

I replaced the logger name in my test program with
"system.system" and "system.monitoring" and used your
log4j.xml file, and in both cases the jdbc driver was
loaded. So, I am still convinced that it is an issue
with your CLASSPATH ;-)

Regards,

	Andreas

Raoul OPPLIGER wrote:
[...]
> I get exactly the same error as before. I send you my configuration
> file (attention: logger's name is different). This file is dynamic
> and it is constructed with the content of a database. So I use my
> mysql-connector to access to the database.
[...]

-- 
Andreas Fester
mailto:Andreas.Fester@gmx.de
WWW: http://littletux.homelinux.org
ICQ: 326674288

---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-user-unsubscribe@logging.apache.org
For additional commands, e-mail: log4j-user-help@logging.apache.org