Try http://code.google.com/p/gwt-log/ very good integration with log4j
Regards, Freller On Jul 19, 1:15 pm, AthlonRob <[email protected]> wrote: > Is there a simple way to add Log4J ability to GWT? > > I am using GWT with MyBatis (formerly iBatis) and am having a > problem. If I drop log4j-1.2.16.jar in to my classpath, as soon as I > obtain a MyBatis connection, it starts throwing exceptions: > > [WARN] Exception while dispatching incoming RPC call > com.google.gwt.user.server.rpc.UnexpectedException: Service method > 'public abstract project.shared.beans.AARBean > project.client.services.AARService.getAARFromServer(long) throws > java.lang.IllegalArgumentException' threw an unexpected exception: > java.lang.ExceptionInInitializerError > at > com.google.gwt.user.server.rpc.RPC.encodeResponseForFailure(RPC.java: > 378) > at > com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java: > 581) > at > com.google.gwt.user.server.rpc.RemoteServiceServlet.processCall(RemoteServi > ceServlet.java: > 188) > at > com.google.gwt.user.server.rpc.RemoteServiceServlet.processPost(RemoteServi > ceServlet.java: > 224) > at > com.google.gwt.user.server.rpc.AbstractRemoteServiceServlet.doPost(Abstract > RemoteServiceServlet.java: > 62) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:637) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) > at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java: > 487) > at > org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java: > 362) > at > org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java: > 216) > at > org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java: > 181) > at > org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java: > 729) > at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java: > 405) > at > org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java: > 152) > at > org.mortbay.jetty.handler.RequestLogHandler.handle(RequestLogHandler.java: > 49) > at > org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java: > 152) > at org.mortbay.jetty.Server.handle(Server.java:324) > at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java: > 505) > at org.mortbay.jetty.HttpConnection > $RequestHandler.content(HttpConnection.java:843) > at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:647) > at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211) > at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380) > at > org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java: > 395) > at org.mortbay.thread.QueuedThreadPool > $PoolThread.run(QueuedThreadPool.java:488) > Caused by: java.lang.ExceptionInInitializerError > at > org.apache.ibatis.session.SqlSessionFactoryBuilder.build(SqlSessionFactoryB > uilder.java: > 44) > at > project.server.data.ConnectionFactory.<init>(ConnectionFactory.java: > 59) > at > project.server.data.ConnectionFactory.getTheConnectionFactory(ConnectionFac > tory.java: > 86) > at project.server.data.AARDAO.<clinit>(AARDAO.java:13) > at > project.handlers.AARServiceImpl.getAARFromServer(AARServiceImpl.java: > 21) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) > at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) > at java.lang.reflect.Method.invoke(Unknown Source) > at > com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java: > 562) > ... 22 more > Caused by: org.apache.ibatis.logging.LogException: Error creating > logger for class interface java.sql.Connection. Cause: > java.lang.reflect.InvocationTargetException > at org.apache.ibatis.logging.LogFactory.getLog(LogFactory.java:43) > at > org.apache.ibatis.session.defaults.DefaultSqlSessionFactory.<clinit>(Defaul > tSqlSessionFactory.java: > 21) > ... 32 more > Caused by: java.lang.reflect.InvocationTargetException > at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native > Method) > at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown > Source) > at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown > Source) > at java.lang.reflect.Constructor.newInstance(Unknown Source) > at org.apache.ibatis.logging.LogFactory.getLog(LogFactory.java:41) > ... 33 more > Caused by: org.apache.commons.logging.LogConfigurationException: > org.apache.commons.logging.LogConfigurationException: No suitable Log > constructor [Ljava.lang.Class;@10f5104 for > org.apache.commons.logging.impl.Log4JLogger (Caused by > java.lang.NoClassDefFoundError: org/apache/log4j/Category) (Caused by > org.apache.commons.logging.LogConfigurationException: No suitable Log > constructor [Ljava.lang.Class;@10f5104 for > org.apache.commons.logging.impl.Log4JLogger (Caused by > java.lang.NoClassDefFoundError: org/apache/log4j/Category)) > at > org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.j > ava: > 543) > at > org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.j > ava: > 235) > at > org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.j > ava: > 209) > at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:351) > at > org.apache.ibatis.logging.commons.JakartaCommonsLoggingImpl.<init>(JakartaC > ommonsLoggingImpl.java: > 11) > ... 38 more > Caused by: org.apache.commons.logging.LogConfigurationException: No > suitable Log constructor [Ljava.lang.Class;@10f5104 for > org.apache.commons.logging.impl.Log4JLogger (Caused by > java.lang.NoClassDefFoundError: org/apache/log4j/Category) > at > org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(LogFactory > Impl.java: > 413) > at > org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.j > ava: > 529) > ... 42 more > Caused by: java.lang.NoClassDefFoundError: org/apache/log4j/Category > at java.lang.Class.getDeclaredConstructors0(Native Method) > at java.lang.Class.privateGetDeclaredConstructors(Unknown Source) > at java.lang.Class.getConstructor0(Unknown Source) > at java.lang.Class.getConstructor(Unknown Source) > at > org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(LogFactory > Impl.java: > 410) > ... 43 more > Caused by: java.lang.ClassNotFoundException: org.apache.log4j.Category > at java.net.URLClassLoader$1.run(Unknown Source) > at java.security.AccessController.doPrivileged(Native Method) > at java.net.URLClassLoader.findClass(Unknown Source) > at java.lang.ClassLoader.loadClass(Unknown Source) > at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) > at java.lang.ClassLoader.loadClass(Unknown Source) > ... 48 more > [ERROR] 500 - POST /aar (127.0.0.1) 57 bytes > Request headers > Host: 127.0.0.1:8888 > User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv: > 1.9.2) Gecko/20100115 Firefox/3.6 ( .NET CLR 3.5.30729) > Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/ > *;q=0.8 > Accept-Language: en-us,en;q=0.5 > Accept-Encoding: gzip,deflate > Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7 > Keep-Alive: 115 > Connection: keep-alive > Referer:http://127.0.0.1:8888/project/hosted.html?project > Cache-Control: no-cache > X-GWT-Permutation: HostedMode > X-GWT-Module-Base:http://127.0.0.1:8888/project/ > Content-Type: text/x-gwt-rpc; charset=utf-8 > Content-Length: 170 > Pragma: no-cache > Response headers > Content-Type: text/plain > > ...I'm in a situation where I need the debug logging output from > MyBatis, which seems to support Log4J OOTB, but it seems there's a > conflict with log4j in GWT's hosted mode, also out of the box? > > Any ideas? > > Rob -- You received this message because you are subscribed to the Google Groups "Google Web Toolkit" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
