You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by simon <sk...@apache.org> on 2008/08/28 23:06:42 UTC

Re: cargo maven2 plugin causing exceptions during build because of commons-logging

Yes, hopefully Dennis' suggestion will work.

It does look like whatever environment this code is running in, it is
using a rather old version of commons-logging. The reported exception
only occurs in commons-logging 1.0.x. Version 1.1 of commons-logging was
released in May 2006 and 1.1.1 was released in Nov 2007, and neither of
these should ever throw an exception (though you might not get any
logging in this case, as there is clearly something weird going on with
classloader hierarchies).

Regards, Simon

On Thu, 2008-08-28 at 22:49 +0200, Dennis Lundberg wrote:
> The simplest thing to do is to put a commons-logging.properties into the
> classpath. The file should contain just one property to set the logging
> implementation to something other than log4j, like this:
> 
> org.apache.commons.logging.Log=org.apache.commons.logging.impl.SimpleLog
> 
> 
> Fhomasp wrote:
> > Hey,
> > 
> > I've been attempting to load a test environment in a Jetty container for
> > JSFUnit through the cargo-maven2-plugin.  
> > Sadly every time the deployment to Jetty is attempted there is a huge list
> > of exceptions caused by Commons-logging.
> > When using no logger at all stderr is used for output, causing the following
> > exceptionstack, which is roughly the same if I use Log4j:
> > 
> > [INFO] Building war:
> > C:\projects\trunk\vlafo\olympus\JSFUnitTest\target\JSFUnitTestWar-1.4.2.war
> > [INFO] [cargo:start {execution: start-container}]
> > [INFO] No container defined, using a default [jetty6x, embedded] container
> > [INFO] [beddedLocalContainer] Jetty 6.x Embedded starting...
> > 2008-08-26 15:49:14.375::INFO:  Logging to STDERR via
> > org.mortbay.log.StdErrLog
> > 2008-08-26 15:49:14.421::INFO:  jetty-6.1.1rc1
> > 2008-08-26 15:49:14.609::INFO:  Extract
> > jar:file:/C:/projects/trunk/vlafo/olympus/JSFUnitTest/target
> > /JSFUnitTestWar-1.4.2.war!/ to C:\DOCUME~1\DEVELO~
> > 1\LOCALS~1\Temp\Jetty_0_0_0_0_8080_JSFUnitTestWar-1.4.2.war__JSFUnitTestWar-1_4_2__aar4a7\webapp
> > 2008-08-26 15:49:19.046::WARN:  failed
> > org.mortbay.jetty.webapp.WebAppContext@58dfa6{/JSFUnitTestWar
> > -1.4.2,jar:file:/C:/projects/trunk/vlafo/olympus/J
> > SFUnitTest/target/JSFUnitTestWar-1.4.2.war!/}
> > java.lang.ExceptionInInitializerError
> >         at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
> > Method)
> >         at
> > sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:
> > 39)
> >         at
> > sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorIm
> > pl.java:27)
> >         at java.lang.reflect.Constructor.newInstance(Constructor.java:494)
> >         at java.lang.Class.newInstance0(Class.java:350)
> >         at java.lang.Class.newInstance(Class.java:303)
> >         at
> > org.mortbay.jetty.webapp.TagLibConfiguration.configureWebApp(TagLibConfiguration.java:239
> > )
> >         at
> > org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1188)
> >         at
> > org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:481)
> >         at
> > org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:434)
> >         at
> > org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
> >         at
> > org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:147)
> >         at
> > org.mortbay.jetty.handler.ContextHandlerCollection.doStart(ContextHandlerCollection.java:
> > 120)
> >         at
> > org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
> >         at
> > org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:147)
> >         at
> > org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
> >         at
> > org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:117)
> >         at org.mortbay.jetty.Server.doStart(Server.java:210)
> >         at
> > org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
> >         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:585)
> >         at
> > org.codehaus.cargo.container.jetty.internal.JettyExecutorThread.run(JettyExecutorThread.j
> > ava:68)
> > Caused by: org.apache.commons.logging.LogConfigurationException:
> > org.apache.commons.logging.LogConfi
> > gurationException: No suitable Log constructor [Lj
> > ava.lang.Class;@12305e8 for org.apache.commons.logging.impl.Log4JLogger
> > (Caused by java.lang.NoClass
> > DefFoundError: org/apache/log4j/Category) (Caused
> > by org.apache.commons.logging.LogConfigurationException: No suitable Log
> > constructor [Ljava.lang.Cla
> > ss;@12305e8 for org.apache.commons.logging.impl.Lo
> > g4JLogger (Caused by java.lang.NoClassDefFoundError:
> > org/apache/log4j/Category))
> >         at
> > org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.java:543)
> >         at
> > org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:235)
> >         at
> > org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:209)
> >         at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:351)
> >         at
> > org.apache.myfaces.webapp.StartupServletContextListener.<clinit>(StartupServletContextListener.java:44)
> >         ... 24 more
> > Caused by: org.apache.commons.logging.LogConfigurationException: No suitable
> > Log constructor [Ljava.
> > lang.Class;@12305e8 for org.apache.commons.logging
> > .impl.Log4JLogger (Caused by java.lang.NoClassDefFoundError:
> > org/apache/log4j/Category)
> >         at
> > org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(LogFactoryImpl.java:413)
> > 
> >         at
> > org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.java:529)
> >         ... 28 more
> > Caused by: java.lang.NoClassDefFoundError: org/apache/log4j/Category
> >         at java.lang.Class.getDeclaredConstructors0(Native Method)
> >         at java.lang.Class.privateGetDeclaredConstructors(Class.java:2357)
> >         at java.lang.Class.getConstructor0(Class.java:2671)
> >         at java.lang.Class.getConstructor(Class.java:1629)
> >         at
> > org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(LogFactoryImpl.java:410)
> > 
> > 
> > After some web searching I found an alternative for log4j or stderr, namely
> > slf4j.  However using this one still causes a similar exception stack:
> > 
> > [INFO] Generating war
> > C:\projects\trunk\vlafo\olympus\JSFUnitTest\target\JSFUnitTestWar-1.4.2.war
> > [INFO] Building war:
> > C:\projects\trunk\vlafo\olympus\JSFUnitTest\target\JSFUnitTestWar-1.4.2.war
> > [INFO] [cargo:start {execution: start-container}]
> > [INFO] No container defined, using a default [jetty6x, embedded] container
> > [INFO] [beddedLocalContainer] Jetty 6.x Embedded starting...
> > 2008-08-25 10:06:07.140::INFO:  Logging to STDERR via
> > org.mortbay.log.StdErrLog
> > 2008-08-25 10:06:07.171::INFO:  jetty-6.1.1rc1
> > 2008-08-25 10:06:08.484::INFO:  Extract
> > jar:file:/C:/projects/trunk/vlafo/olympus/JSFUnitTest/target
> > /JSFUnitTestWar-1.4.2.war!/ to C:\DOCUME~1\DEVELO~
> > 1\LOCALS~1\Temp\Jetty_0_0_0_0_8080_JSFUnitTestWar-1.4.2.war__JSFUnitTestWar-1_4_2__aar4a7\webapp
> > 2008-08-25 10:06:12.781::WARN:  failed
> > org.mortbay.jetty.webapp.WebAppContext@10bcb28{/JSFUnitTestWa
> > r-1.4.2,jar:file:/C:/projects/trunk/vlafo/olympus/
> > JSFUnitTest/target/JSFUnitTestWar-1.4.2.war!/}
> > java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory
> >         at
> > org.apache.commons.logging.impl.SLF4JLogFactory.getInstance(SLF4JLogFactory.java:155)
> >         at
> > org.apache.commons.logging.impl.SLF4JLogFactory.getInstance(SLF4JLogFactory.java:131)
> >         at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:351)
> >         at
> > org.apache.myfaces.webapp.StartupServletContextListener.<clinit>(StartupServletContextListener.java:44)
> >         at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
> > Method)
> >         at
> > sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:
> > 39)
> >         at
> > sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorIm
> > pl.java:27)
> >         at java.lang.reflect.Constructor.newInstance(Constructor.java:494)
> >         at java.lang.Class.newInstance0(Class.java:350)
> >         at java.lang.Class.newInstance(Class.java:303)
> >         at
> > org.mortbay.jetty.webapp.TagLibConfiguration.configureWebApp(TagLibConfiguration.java:239
> > )	
> > 
> > I'm at a loss on how to get this issue fixed.  If anyone knows what to do,
> > by all means let me know ;-)
> 
> 


Re: cargo maven2 plugin causing exceptions during build because of commons-logging

Posted by Dennis Lundberg <de...@apache.org>.
Fhomasp wrote:
> Hey,
> 
> Thanks for your replies.
> 
> The thing with the older commons-logging implementations is because of
> dependencies, configured through maven2, on older programming logic. 
> Because of these dependencies there's at least two versions of commons
> logging in my classpath.  

There must be another reason for this. Maven 2 will only put one version
of an artifact on the classpath, provided they have the same
groupId/artifactId. For a view of your projects dependency tree use this
command:

mvn dependency:tree

> 
> On the brightside though.  I added the library jcl104-overslf4j 1.1.0, which
> allows my project to build.  There's still an error going but it's native to
> the internal architecture here.
> 
> So thanks :)
> 
> 
> 
> Simon Kitching wrote:
>> Yes, hopefully Dennis' suggestion will work.
>>
>> It does look like whatever environment this code is running in, it is
>> using a rather old version of commons-logging. The reported exception
>> only occurs in commons-logging 1.0.x. Version 1.1 of commons-logging was
>> released in May 2006 and 1.1.1 was released in Nov 2007, and neither of
>> these should ever throw an exception (though you might not get any
>> logging in this case, as there is clearly something weird going on with
>> classloader hierarchies).
>>
>> Regards, Simon
>>
>> On Thu, 2008-08-28 at 22:49 +0200, Dennis Lundberg wrote:
>>> The simplest thing to do is to put a commons-logging.properties into the
>>> classpath. The file should contain just one property to set the logging
>>> implementation to something other than log4j, like this:
>>>
>>> org.apache.commons.logging.Log=org.apache.commons.logging.impl.SimpleLog
>>>
>>>
>>> Fhomasp wrote:
>>>> Hey,
>>>>
>>>> I've been attempting to load a test environment in a Jetty container
>>> for
>>>> JSFUnit through the cargo-maven2-plugin.  
>>>> Sadly every time the deployment to Jetty is attempted there is a huge
>>> list
>>>> of exceptions caused by Commons-logging.
>>>> When using no logger at all stderr is used for output, causing the
>>> following
>>>> exceptionstack, which is roughly the same if I use Log4j:
>>>>
>>>> [INFO] Building war:
>>>>
>>> C:\projects\trunk\vlafo\olympus\JSFUnitTest\target\JSFUnitTestWar-1.4.2.war
>>>> [INFO] [cargo:start {execution: start-container}]
>>>> [INFO] No container defined, using a default [jetty6x, embedded]
>>> container
>>>> [INFO] [beddedLocalContainer] Jetty 6.x Embedded starting...
>>>> 2008-08-26 15:49:14.375::INFO:  Logging to STDERR via
>>>> org.mortbay.log.StdErrLog
>>>> 2008-08-26 15:49:14.421::INFO:  jetty-6.1.1rc1
>>>> 2008-08-26 15:49:14.609::INFO:  Extract
>>>> jar:file:/C:/projects/trunk/vlafo/olympus/JSFUnitTest/target
>>>> /JSFUnitTestWar-1.4.2.war!/ to C:\DOCUME~1\DEVELO~
>>>>
>>> 1\LOCALS~1\Temp\Jetty_0_0_0_0_8080_JSFUnitTestWar-1.4.2.war__JSFUnitTestWar-1_4_2__aar4a7\webapp
>>>> 2008-08-26 15:49:19.046::WARN:  failed
>>>> org.mortbay.jetty.webapp.WebAppContext@58dfa6{/JSFUnitTestWar
>>>> -1.4.2,jar:file:/C:/projects/trunk/vlafo/olympus/J
>>>> SFUnitTest/target/JSFUnitTestWar-1.4.2.war!/}
>>>> java.lang.ExceptionInInitializerError
>>>>         at
>>> sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
>>>> Method)
>>>>         at
>>>>
>>> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:
>>>> 39)
>>>>         at
>>>>
>>> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorIm
>>>> pl.java:27)
>>>>         at
>>> java.lang.reflect.Constructor.newInstance(Constructor.java:494)
>>>>         at java.lang.Class.newInstance0(Class.java:350)
>>>>         at java.lang.Class.newInstance(Class.java:303)
>>>>         at
>>>>
>>> org.mortbay.jetty.webapp.TagLibConfiguration.configureWebApp(TagLibConfiguration.java:239
>>>> )
>>>>         at
>>>>
>>> org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1188)
>>>>         at
>>>>
>>> org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:481)
>>>>         at
>>>> org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:434)
>>>>         at
>>>>
>>> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
>>>>         at
>>>>
>>> org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:147)
>>>>         at
>>>>
>>> org.mortbay.jetty.handler.ContextHandlerCollection.doStart(ContextHandlerCollection.java:
>>>> 120)
>>>>         at
>>>>
>>> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
>>>>         at
>>>>
>>> org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:147)
>>>>         at
>>>>
>>> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
>>>>         at
>>>>
>>> org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:117)
>>>>         at org.mortbay.jetty.Server.doStart(Server.java:210)
>>>>         at
>>>>
>>> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
>>>>         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:585)
>>>>         at
>>>>
>>> org.codehaus.cargo.container.jetty.internal.JettyExecutorThread.run(JettyExecutorThread.j
>>>> ava:68)
>>>> Caused by: org.apache.commons.logging.LogConfigurationException:
>>>> org.apache.commons.logging.LogConfi
>>>> gurationException: No suitable Log constructor [Lj
>>>> ava.lang.Class;@12305e8 for org.apache.commons.logging.impl.Log4JLogger
>>>> (Caused by java.lang.NoClass
>>>> DefFoundError: org/apache/log4j/Category) (Caused
>>>> by org.apache.commons.logging.LogConfigurationException: No suitable
>>> Log
>>>> constructor [Ljava.lang.Cla
>>>> ss;@12305e8 for org.apache.commons.logging.impl.Lo
>>>> g4JLogger (Caused by java.lang.NoClassDefFoundError:
>>>> org/apache/log4j/Category))
>>>>         at
>>>>
>>> org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.java:543)
>>>>         at
>>>>
>>> org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:235)
>>>>         at
>>>>
>>> org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:209)
>>>>         at
>>> org.apache.commons.logging.LogFactory.getLog(LogFactory.java:351)
>>>>         at
>>>>
>>> org.apache.myfaces.webapp.StartupServletContextListener.<clinit>(StartupServletContextListener.java:44)
>>>>         ... 24 more
>>>> Caused by: org.apache.commons.logging.LogConfigurationException: No
>>> suitable
>>>> Log constructor [Ljava.
>>>> lang.Class;@12305e8 for org.apache.commons.logging
>>>> .impl.Log4JLogger (Caused by java.lang.NoClassDefFoundError:
>>>> org/apache/log4j/Category)
>>>>         at
>>>>
>>> org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(LogFactoryImpl.java:413)
>>>>         at
>>>>
>>> org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.java:529)
>>>>         ... 28 more
>>>> Caused by: java.lang.NoClassDefFoundError: org/apache/log4j/Category
>>>>         at java.lang.Class.getDeclaredConstructors0(Native Method)
>>>>         at
>>> java.lang.Class.privateGetDeclaredConstructors(Class.java:2357)
>>>>         at java.lang.Class.getConstructor0(Class.java:2671)
>>>>         at java.lang.Class.getConstructor(Class.java:1629)
>>>>         at
>>>>
>>> org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(LogFactoryImpl.java:410)
>>>>
>>>> After some web searching I found an alternative for log4j or stderr,
>>> namely
>>>> slf4j.  However using this one still causes a similar exception stack:
>>>>
>>>> [INFO] Generating war
>>>>
>>> C:\projects\trunk\vlafo\olympus\JSFUnitTest\target\JSFUnitTestWar-1.4.2.war
>>>> [INFO] Building war:
>>>>
>>> C:\projects\trunk\vlafo\olympus\JSFUnitTest\target\JSFUnitTestWar-1.4.2.war
>>>> [INFO] [cargo:start {execution: start-container}]
>>>> [INFO] No container defined, using a default [jetty6x, embedded]
>>> container
>>>> [INFO] [beddedLocalContainer] Jetty 6.x Embedded starting...
>>>> 2008-08-25 10:06:07.140::INFO:  Logging to STDERR via
>>>> org.mortbay.log.StdErrLog
>>>> 2008-08-25 10:06:07.171::INFO:  jetty-6.1.1rc1
>>>> 2008-08-25 10:06:08.484::INFO:  Extract
>>>> jar:file:/C:/projects/trunk/vlafo/olympus/JSFUnitTest/target
>>>> /JSFUnitTestWar-1.4.2.war!/ to C:\DOCUME~1\DEVELO~
>>>>
>>> 1\LOCALS~1\Temp\Jetty_0_0_0_0_8080_JSFUnitTestWar-1.4.2.war__JSFUnitTestWar-1_4_2__aar4a7\webapp
>>>> 2008-08-25 10:06:12.781::WARN:  failed
>>>> org.mortbay.jetty.webapp.WebAppContext@10bcb28{/JSFUnitTestWa
>>>> r-1.4.2,jar:file:/C:/projects/trunk/vlafo/olympus/
>>>> JSFUnitTest/target/JSFUnitTestWar-1.4.2.war!/}
>>>> java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory
>>>>         at
>>>>
>>> org.apache.commons.logging.impl.SLF4JLogFactory.getInstance(SLF4JLogFactory.java:155)
>>>>         at
>>>>
>>> org.apache.commons.logging.impl.SLF4JLogFactory.getInstance(SLF4JLogFactory.java:131)
>>>>         at
>>> org.apache.commons.logging.LogFactory.getLog(LogFactory.java:351)
>>>>         at
>>>>
>>> org.apache.myfaces.webapp.StartupServletContextListener.<clinit>(StartupServletContextListener.java:44)
>>>>         at
>>> sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
>>>> Method)
>>>>         at
>>>>
>>> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:
>>>> 39)
>>>>         at
>>>>
>>> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorIm
>>>> pl.java:27)
>>>>         at
>>> java.lang.reflect.Constructor.newInstance(Constructor.java:494)
>>>>         at java.lang.Class.newInstance0(Class.java:350)
>>>>         at java.lang.Class.newInstance(Class.java:303)
>>>>         at
>>>>
>>> org.mortbay.jetty.webapp.TagLibConfiguration.configureWebApp(TagLibConfiguration.java:239
>>>> )	
>>>>
>>>> I'm at a loss on how to get this issue fixed.  If anyone knows what to
>>> do,
>>>> by all means let me know ;-)
>>>
>>
>>
> 


-- 
Dennis Lundberg

Re: cargo maven2 plugin causing exceptions during build because of commons-logging

Posted by Fhomasp <th...@realsoftware.be>.
Hey,

Thanks for your replies.

The thing with the older commons-logging implementations is because of
dependencies, configured through maven2, on older programming logic. 
Because of these dependencies there's at least two versions of commons
logging in my classpath.  

On the brightside though.  I added the library jcl104-overslf4j 1.1.0, which
allows my project to build.  There's still an error going but it's native to
the internal architecture here.

So thanks :)



Simon Kitching wrote:
> 
> Yes, hopefully Dennis' suggestion will work.
> 
> It does look like whatever environment this code is running in, it is
> using a rather old version of commons-logging. The reported exception
> only occurs in commons-logging 1.0.x. Version 1.1 of commons-logging was
> released in May 2006 and 1.1.1 was released in Nov 2007, and neither of
> these should ever throw an exception (though you might not get any
> logging in this case, as there is clearly something weird going on with
> classloader hierarchies).
> 
> Regards, Simon
> 
> On Thu, 2008-08-28 at 22:49 +0200, Dennis Lundberg wrote:
>> The simplest thing to do is to put a commons-logging.properties into the
>> classpath. The file should contain just one property to set the logging
>> implementation to something other than log4j, like this:
>> 
>> org.apache.commons.logging.Log=org.apache.commons.logging.impl.SimpleLog
>> 
>> 
>> Fhomasp wrote:
>> > Hey,
>> > 
>> > I've been attempting to load a test environment in a Jetty container
>> for
>> > JSFUnit through the cargo-maven2-plugin.  
>> > Sadly every time the deployment to Jetty is attempted there is a huge
>> list
>> > of exceptions caused by Commons-logging.
>> > When using no logger at all stderr is used for output, causing the
>> following
>> > exceptionstack, which is roughly the same if I use Log4j:
>> > 
>> > [INFO] Building war:
>> >
>> C:\projects\trunk\vlafo\olympus\JSFUnitTest\target\JSFUnitTestWar-1.4.2.war
>> > [INFO] [cargo:start {execution: start-container}]
>> > [INFO] No container defined, using a default [jetty6x, embedded]
>> container
>> > [INFO] [beddedLocalContainer] Jetty 6.x Embedded starting...
>> > 2008-08-26 15:49:14.375::INFO:  Logging to STDERR via
>> > org.mortbay.log.StdErrLog
>> > 2008-08-26 15:49:14.421::INFO:  jetty-6.1.1rc1
>> > 2008-08-26 15:49:14.609::INFO:  Extract
>> > jar:file:/C:/projects/trunk/vlafo/olympus/JSFUnitTest/target
>> > /JSFUnitTestWar-1.4.2.war!/ to C:\DOCUME~1\DEVELO~
>> >
>> 1\LOCALS~1\Temp\Jetty_0_0_0_0_8080_JSFUnitTestWar-1.4.2.war__JSFUnitTestWar-1_4_2__aar4a7\webapp
>> > 2008-08-26 15:49:19.046::WARN:  failed
>> > org.mortbay.jetty.webapp.WebAppContext@58dfa6{/JSFUnitTestWar
>> > -1.4.2,jar:file:/C:/projects/trunk/vlafo/olympus/J
>> > SFUnitTest/target/JSFUnitTestWar-1.4.2.war!/}
>> > java.lang.ExceptionInInitializerError
>> >         at
>> sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
>> > Method)
>> >         at
>> >
>> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:
>> > 39)
>> >         at
>> >
>> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorIm
>> > pl.java:27)
>> >         at
>> java.lang.reflect.Constructor.newInstance(Constructor.java:494)
>> >         at java.lang.Class.newInstance0(Class.java:350)
>> >         at java.lang.Class.newInstance(Class.java:303)
>> >         at
>> >
>> org.mortbay.jetty.webapp.TagLibConfiguration.configureWebApp(TagLibConfiguration.java:239
>> > )
>> >         at
>> >
>> org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1188)
>> >         at
>> >
>> org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:481)
>> >         at
>> > org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:434)
>> >         at
>> >
>> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
>> >         at
>> >
>> org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:147)
>> >         at
>> >
>> org.mortbay.jetty.handler.ContextHandlerCollection.doStart(ContextHandlerCollection.java:
>> > 120)
>> >         at
>> >
>> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
>> >         at
>> >
>> org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:147)
>> >         at
>> >
>> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
>> >         at
>> >
>> org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:117)
>> >         at org.mortbay.jetty.Server.doStart(Server.java:210)
>> >         at
>> >
>> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
>> >         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:585)
>> >         at
>> >
>> org.codehaus.cargo.container.jetty.internal.JettyExecutorThread.run(JettyExecutorThread.j
>> > ava:68)
>> > Caused by: org.apache.commons.logging.LogConfigurationException:
>> > org.apache.commons.logging.LogConfi
>> > gurationException: No suitable Log constructor [Lj
>> > ava.lang.Class;@12305e8 for org.apache.commons.logging.impl.Log4JLogger
>> > (Caused by java.lang.NoClass
>> > DefFoundError: org/apache/log4j/Category) (Caused
>> > by org.apache.commons.logging.LogConfigurationException: No suitable
>> Log
>> > constructor [Ljava.lang.Cla
>> > ss;@12305e8 for org.apache.commons.logging.impl.Lo
>> > g4JLogger (Caused by java.lang.NoClassDefFoundError:
>> > org/apache/log4j/Category))
>> >         at
>> >
>> org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.java:543)
>> >         at
>> >
>> org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:235)
>> >         at
>> >
>> org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:209)
>> >         at
>> org.apache.commons.logging.LogFactory.getLog(LogFactory.java:351)
>> >         at
>> >
>> org.apache.myfaces.webapp.StartupServletContextListener.<clinit>(StartupServletContextListener.java:44)
>> >         ... 24 more
>> > Caused by: org.apache.commons.logging.LogConfigurationException: No
>> suitable
>> > Log constructor [Ljava.
>> > lang.Class;@12305e8 for org.apache.commons.logging
>> > .impl.Log4JLogger (Caused by java.lang.NoClassDefFoundError:
>> > org/apache/log4j/Category)
>> >         at
>> >
>> org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(LogFactoryImpl.java:413)
>> > 
>> >         at
>> >
>> org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.java:529)
>> >         ... 28 more
>> > Caused by: java.lang.NoClassDefFoundError: org/apache/log4j/Category
>> >         at java.lang.Class.getDeclaredConstructors0(Native Method)
>> >         at
>> java.lang.Class.privateGetDeclaredConstructors(Class.java:2357)
>> >         at java.lang.Class.getConstructor0(Class.java:2671)
>> >         at java.lang.Class.getConstructor(Class.java:1629)
>> >         at
>> >
>> org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(LogFactoryImpl.java:410)
>> > 
>> > 
>> > After some web searching I found an alternative for log4j or stderr,
>> namely
>> > slf4j.  However using this one still causes a similar exception stack:
>> > 
>> > [INFO] Generating war
>> >
>> C:\projects\trunk\vlafo\olympus\JSFUnitTest\target\JSFUnitTestWar-1.4.2.war
>> > [INFO] Building war:
>> >
>> C:\projects\trunk\vlafo\olympus\JSFUnitTest\target\JSFUnitTestWar-1.4.2.war
>> > [INFO] [cargo:start {execution: start-container}]
>> > [INFO] No container defined, using a default [jetty6x, embedded]
>> container
>> > [INFO] [beddedLocalContainer] Jetty 6.x Embedded starting...
>> > 2008-08-25 10:06:07.140::INFO:  Logging to STDERR via
>> > org.mortbay.log.StdErrLog
>> > 2008-08-25 10:06:07.171::INFO:  jetty-6.1.1rc1
>> > 2008-08-25 10:06:08.484::INFO:  Extract
>> > jar:file:/C:/projects/trunk/vlafo/olympus/JSFUnitTest/target
>> > /JSFUnitTestWar-1.4.2.war!/ to C:\DOCUME~1\DEVELO~
>> >
>> 1\LOCALS~1\Temp\Jetty_0_0_0_0_8080_JSFUnitTestWar-1.4.2.war__JSFUnitTestWar-1_4_2__aar4a7\webapp
>> > 2008-08-25 10:06:12.781::WARN:  failed
>> > org.mortbay.jetty.webapp.WebAppContext@10bcb28{/JSFUnitTestWa
>> > r-1.4.2,jar:file:/C:/projects/trunk/vlafo/olympus/
>> > JSFUnitTest/target/JSFUnitTestWar-1.4.2.war!/}
>> > java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory
>> >         at
>> >
>> org.apache.commons.logging.impl.SLF4JLogFactory.getInstance(SLF4JLogFactory.java:155)
>> >         at
>> >
>> org.apache.commons.logging.impl.SLF4JLogFactory.getInstance(SLF4JLogFactory.java:131)
>> >         at
>> org.apache.commons.logging.LogFactory.getLog(LogFactory.java:351)
>> >         at
>> >
>> org.apache.myfaces.webapp.StartupServletContextListener.<clinit>(StartupServletContextListener.java:44)
>> >         at
>> sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
>> > Method)
>> >         at
>> >
>> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:
>> > 39)
>> >         at
>> >
>> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorIm
>> > pl.java:27)
>> >         at
>> java.lang.reflect.Constructor.newInstance(Constructor.java:494)
>> >         at java.lang.Class.newInstance0(Class.java:350)
>> >         at java.lang.Class.newInstance(Class.java:303)
>> >         at
>> >
>> org.mortbay.jetty.webapp.TagLibConfiguration.configureWebApp(TagLibConfiguration.java:239
>> > )	
>> > 
>> > I'm at a loss on how to get this issue fixed.  If anyone knows what to
>> do,
>> > by all means let me know ;-)
>> 
>> 
> 
> 
> 

-- 
View this message in context: http://www.nabble.com/cargo-maven2-plugin-causing-exceptions-during-build-because-of-commons-logging-tp19197018p19214533.html
Sent from the Commons - Issues mailing list archive at Nabble.com.