Re: ioko cache component

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

Re: ioko cache component

Ben Gidley
Administrator
Hi,

Your problem is with dependencies...

Both Tapestry 5 and ioko-commons use SLF4J which can use a range of logging
systems. However some of the libraries ioko-commons depend on use
apache-commons.

You need to include the following dependency and will route apache commons
logging over slf4j logging. We don't include this by default - as if had
chosen to use slf4j routed into apache-commons logging you would get a
circular loop!

<dependency>
  <groupId>org.slf4j</groupId>
  <artifactId>jcl-over-slf4j</artifactId>
  <version>1.6.1</version>
</dependency>

This will send the common logging statements into SLF4j.

Presuming you have stuck with the defaults - this will then route them into
log4j.


On Thu, Mar 31, 2011 at 9:47 PM, ARD Marx Tobias <[hidden email]
> wrote:

>  Hi Ben!
>
>
>
> I am having problems with the mailing list – I can only send mails but
> can’t reply or receive messages – so I am always checking markmail for
> reply….
>
>
>
> Regarding the error with the cache component, I am getting this stack
> trace:
>
>
>
> ERROR] ioc.Registry Error invoking constructor
> uk.co.ioko.tapestry.caching.services.ContentCacheImpl(String) (at
> ContentCacheImpl.java:55) via
> uk.co.ioko.tapestry.caching.services.CacheModule.bind(ServiceBinder) (at
> CacheModule.java:36) (for service 'ContentCache'):
> org/apache/commons/logging/LogFactory
>
> [ERROR] ioc.Registry Operations trace:
>
> [ERROR] ioc.Registry [ 1] Realizing service ContentCache
>
> [ERROR] ioc.Registry [ 2] Invoking
> uk.co.ioko.tapestry.caching.services.ContentCacheImpl(String) (at
> ContentCacheImpl.java:55) via
> uk.co.ioko.tapestry.caching.services.CacheModule.bind(ServiceBinder) (at
> CacheModule.java:36)
>
> [ERROR] CacheModule.ContentCache Construction of service ContentCache
> failed: Error invoking constructor
> uk.co.ioko.tapestry.caching.services.ContentCacheImpl(String) (at
> ContentCacheImpl.java:55) via
> uk.co.ioko.tapestry.caching.services.CacheModule.bind(ServiceBinder) (at
> CacheModule.java:36) (for service 'ContentCache'):
> org/apache/commons/logging/LogFactory
>
> org.apache.tapestry5.ioc.internal.OperationException: Error invoking
> constructor uk.co.ioko.tapestry.caching.services.ContentCacheImpl(String)
> (at ContentCacheImpl.java:55) via
> uk.co.ioko.tapestry.caching.services.CacheModule.bind(ServiceBinder) (at
> CacheModule.java:36) (for service 'ContentCache'):
> org/apache/commons/logging/LogFactory
>
>                 at
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.logAndRethrow(OperationTrackerImpl.java:102)
>
>                 at
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:69)
>
>                 at
> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:68)
>
>                 at
> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1063)
>
>                 at
> org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator.createObject(OperationTrackingObjectCreator.java:49)
>
>                 at
> org.apache.tapestry5.ioc.internal.SingletonServiceLifecycle.createService(SingletonServiceLifecycle.java:29)
>
>                 at
> org.apache.tapestry5.ioc.internal.LifecycleWrappedServiceCreator.createObject(LifecycleWrappedServiceCreator.java:46)
>
>                 at
> org.apache.tapestry5.ioc.internal.AdvisorStackBuilder.createObject(AdvisorStackBuilder.java:60)
>
>                 at
> org.apache.tapestry5.ioc.internal.InterceptorStackBuilder.createObject(InterceptorStackBuilder.java:52)
>
>                 at
> org.apache.tapestry5.ioc.internal.RecursiveServiceCreationCheckWrapper.createObject(RecursiveServiceCreationCheckWrapper.java:60)
>
>                 at
> org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator$1.invoke(OperationTrackingObjectCreator.java:45)
>
>                 at
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:65)
>
>                 at
> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:68)
>
>                 at
> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1063)
>
>                 at
> org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator.createObject(OperationTrackingObjectCreator.java:49)
>
>                 at
> org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.obtainObjectFromCreator(JustInTimeObjectCreator.java:68)
>
>                 at
> org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.createObject(JustInTimeObjectCreator.java:57)
>
>                 at
> $ContentCache_12f0c260d6d.delegate($ContentCache_12f0c260d6d.java)
>
>                 at
> $ContentCache_12f0c260d6d.getContent($ContentCache_12f0c260d6d.java)
>
>                 at
> uk.co.ioko.tapestry.caching.components.Cache.setupRender(Cache.java:93)
>
>                 at
> uk.co.ioko.tapestry.caching.components.Cache$MethodAccess_setupRender_12f0c260d6f.invoke(Cache$MethodAccess_setupRender_12f0c260d6f.java)
>
>                 at
> org.apache.tapestry5.internal.transform.RenderPhaseMethodWorker$Invoker.invoke(RenderPhaseMethodWorker.java:117)
>
>                 at
> org.apache.tapestry5.internal.transform.RenderPhaseMethodWorker$RenderPhaseMethodAdvice.advise(RenderPhaseMethodWorker.java:86)
>
>                 at
> org.apache.tapestry5.internal.services.AbstractComponentMethodInvocation.proceed(AbstractComponentMethodInvocation.java:86)
>
>                 at
> uk.co.ioko.tapestry.caching.components.Cache.setupRender(Cache.java)
>
>                 at
> org.apache.tapestry5.internal.structure.ComponentPageElementImpl$SetupRenderPhase.invokeComponent(ComponentPageElementImpl.java:215)
>
>                 at
> org.apache.tapestry5.internal.structure.ComponentPageElementImpl$AbstractPhase.invoke(ComponentPageElementImpl.java:176)
>
>                 at
> org.apache.tapestry5.internal.structure.ComponentPageElementImpl$SetupRenderPhase.render(ComponentPageElementImpl.java:222)
>
>                 at
> org.apache.tapestry5.internal.services.RenderQueueImpl.run(RenderQueueImpl.java:72)
>
>                 at
> org.apache.tapestry5.internal.services.PageRenderQueueImpl.render(PageRenderQueueImpl.java:127)
>
>                 at
> $PageRenderQueue_12f0c260dd7.render($PageRenderQueue_12f0c260dd7.java)
>
>                 at
> $PageRenderQueue_12f0c260dcf.render($PageRenderQueue_12f0c260dcf.java)
>
>                 at
> org.apache.tapestry5.internal.services.MarkupRendererTerminator.renderMarkup(MarkupRendererTerminator.java:37)
>
>                 at
> org.apache.tapestry5.beanvalidator.BeanValidatorModule$2.renderMarkup(BeanValidatorModule.java:133)
>
>                 at
> $MarkupRenderer_12f0c260dd9.renderMarkup($MarkupRenderer_12f0c260dd9.java)
>
>                 at
> org.apache.tapestry5.services.TapestryModule$29.renderMarkup(TapestryModule.java:2089)
>
>                 at
> $MarkupRenderer_12f0c260dd9.renderMarkup($MarkupRenderer_12f0c260dd9.java)
>
>                 at
> org.apache.tapestry5.services.TapestryModule$28.renderMarkup(TapestryModule.java:2073)
>
>                 at
> $MarkupRenderer_12f0c260dd9.renderMarkup($MarkupRenderer_12f0c260dd9.java)
>
>                 at
> org.apache.tapestry5.services.TapestryModule$27.renderMarkup(TapestryModule.java:2055)
>
>                 at
> $MarkupRenderer_12f0c260dd9.renderMarkup($MarkupRenderer_12f0c260dd9.java)
>
>                 at
> org.apache.tapestry5.services.TapestryModule$26.renderMarkup(TapestryModule.java:2040)
>
>                 at
> $MarkupRenderer_12f0c260dd9.renderMarkup($MarkupRenderer_12f0c260dd9.java)
>
>                 at
> org.apache.tapestry5.services.TapestryModule$25.renderMarkup(TapestryModule.java:2026)
>
>                 at
> $MarkupRenderer_12f0c260dd9.renderMarkup($MarkupRenderer_12f0c260dd9.java)
>
>                 at
> org.apache.tapestry5.services.TapestryModule$24.renderMarkup(TapestryModule.java:2008)
>
>                 at
> $MarkupRenderer_12f0c260dd9.renderMarkup($MarkupRenderer_12f0c260dd9.java)
>
>                 at
> org.apache.tapestry5.services.TapestryModule$23.renderMarkup(TapestryModule.java:1989)
>
>                 at
> $MarkupRenderer_12f0c260dd9.renderMarkup($MarkupRenderer_12f0c260dd9.java)
>
>                 at
> $MarkupRenderer_12f0c260dd6.renderMarkup($MarkupRenderer_12f0c260dd6.java)
>
>                 at
> org.apache.tapestry5.internal.services.PageMarkupRendererImpl.renderPageMarkup(PageMarkupRendererImpl.java:47)
>
>                 at
> $PageMarkupRenderer_12f0c260dd4.renderPageMarkup($PageMarkupRenderer_12f0c260dd4.java)
>
>                 at
> org.apache.tapestry5.internal.services.PageResponseRendererImpl.renderPageResponse(PageResponseRendererImpl.java:67)
>
>                 at
> $PageResponseRenderer_12f0c260d36.renderPageResponse($PageResponseRenderer_12f0c260d36.java)
>
>                 at
> org.apache.tapestry5.internal.services.PageRenderRequestHandlerImpl.handle(PageRenderRequestHandlerImpl.java:64)
>
>                 at
> org.apache.tapestry5.services.TapestryModule$36.handle(TapestryModule.java:2326)
>
>                 at
> $PageRenderRequestHandler_12f0c260d38.handle($PageRenderRequestHandler_12f0c260d38.java)
>
>                 at
> $PageRenderRequestHandler_12f0c260d32.handle($PageRenderRequestHandler_12f0c260d32.java)
>
>                 at
> org.apache.tapestry5.internal.services.ComponentRequestHandlerTerminator.handlePageRender(ComponentRequestHandlerTerminator.java:48)
>
>                 at
> org.apache.tapestry5.services.InitializeActivePageName.handlePageRender(InitializeActivePageName.java:47)
>
>                 at
> $ComponentRequestHandler_12f0c260d33.handlePageRender($ComponentRequestHandler_12f0c260d33.java)
>
>                 at
> $ComponentRequestHandler_12f0c260d17.handlePageRender($ComponentRequestHandler_12f0c260d17.java)
>
>                 at
> org.apache.tapestry5.internal.services.PageRenderDispatcher.dispatch(PageRenderDispatcher.java:45)
>
>                 at
> $Dispatcher_12f0c260d19.dispatch($Dispatcher_12f0c260d19.java)
>
>                 at
> $Dispatcher_12f0c260d14.dispatch($Dispatcher_12f0c260d14.java)
>
>                 at
> org.apache.tapestry5.services.TapestryModule$RequestHandlerTerminator.service(TapestryModule.java:321)
>
>                 at
> org.apache.tapestry5.internal.services.RequestErrorFilter.service(RequestErrorFilter.java:26)
>
>                 at
> $RequestHandler_12f0c260d15.service($RequestHandler_12f0c260d15.java)
>
>                 at
> org.apache.tapestry5.services.TapestryModule$4.service(TapestryModule.java:984)
>
>                 at
> $RequestHandler_12f0c260d15.service($RequestHandler_12f0c260d15.java)
>
>                 at
> org.apache.tapestry5.services.TapestryModule$3.service(TapestryModule.java:974)
>
>                 at
> $RequestHandler_12f0c260d15.service($RequestHandler_12f0c260d15.java)
>
>                 at
> org.apache.tapestry5.internal.services.StaticFilesFilter.service(StaticFilesFilter.java:90)
>
>                 at
> $RequestHandler_12f0c260d15.service($RequestHandler_12f0c260d15.java)
>
>                 at
> org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:90)
>
>                 at
> org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:80)
>
>                 at
> org.apache.tapestry5.ioc.internal.util.ConcurrentBarrier.withRead(ConcurrentBarrier.java:85)
>
>                 at
> org.apache.tapestry5.internal.services.CheckForUpdatesFilter.service(CheckForUpdatesFilter.java:103)
>
>                 at
> $RequestHandler_12f0c260d15.service($RequestHandler_12f0c260d15.java)
>
>                 at
> $RequestHandler_12f0c260d0b.service($RequestHandler_12f0c260d0b.java)
>
>                 at
> org.apache.tapestry5.services.TapestryModule$HttpServletRequestHandlerTerminator.service(TapestryModule.java:272)
>
>                 at
> org.apache.tapestry5.internal.gzip.GZipFilter.service(GZipFilter.java:53)
>
>                 at
> $HttpServletRequestHandler_12f0c260d0d.service($HttpServletRequestHandler_12f0c260d0d.java)
>
>                 at
> org.apache.tapestry5.internal.services.IgnoredPathsFilter.service(IgnoredPathsFilter.java:62)
>
>                 at
> $HttpServletRequestFilter_12f0c260d0a.service($HttpServletRequestFilter_12f0c260d0a.java)
>
>                 at
> $HttpServletRequestHandler_12f0c260d0d.service($HttpServletRequestHandler_12f0c260d0d.java)
>
>                 at
> org.apache.tapestry5.services.TapestryModule$2.service(TapestryModule.java:928)
>
>                 at
> $HttpServletRequestHandler_12f0c260d0d.service($HttpServletRequestHandler_12f0c260d0d.java)
>
>                 at
> $HttpServletRequestHandler_12f0c260d08.service($HttpServletRequestHandler_12f0c260d08.java)
>
>                 at
> org.apache.tapestry5.TapestryFilter.doFilter(TapestryFilter.java:147)
>
>                 at
> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
>
>                 at
> org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
>
>                 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:726)
>
>                 at
> org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
>
>                 at
> org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:206)
>
>                 at
> org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
>
>                 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.headerComplete(HttpConnection.java:828)
>
>                 at
> org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:514)
>
>                 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.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:450)
>
> Caused by: java.lang.RuntimeException: Error invoking constructor
> uk.co.ioko.tapestry.caching.services.ContentCacheImpl(String) (at
> ContentCacheImpl.java:55) via
> uk.co.ioko.tapestry.caching.services.CacheModule.bind(ServiceBinder) (at
> CacheModule.java:36) (for service 'ContentCache'):
> org/apache/commons/logging/LogFactory
>
>                 at
> org.apache.tapestry5.ioc.internal.ConstructorServiceCreator.createObject(ConstructorServiceCreator.java:76)
>
>                 at
> org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator$1.invoke(OperationTrackingObjectCreator.java:45)
>
>                 at
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:65)
>
>                 ... 105 more
>
> Caused by: java.lang.NoClassDefFoundError:
> org/apache/commons/logging/LogFactory
>
>                 at
> net.sf.ehcache.CacheManager.<clinit>(CacheManager.java:71)
>
>                 at
> uk.co.ioko.tapestry.caching.services.ContentCacheImpl.<init>(ContentCacheImpl.java:61)
>
>                 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:513)
>
>                 at
> org.apache.tapestry5.ioc.internal.ConstructorServiceCreator.createObject(ConstructorServiceCreator.java:62)
>
>                 ... 107 more
>
> Caused by: java.lang.ClassNotFoundException:
> org.apache.commons.logging.LogFactory
>
>                 at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
>
>                 at java.security.AccessController.doPrivileged(Native
> Method)
>
>                 at
> java.net.URLClassLoader.findClass(URLClassLoader.java:188)
>
>                 at
> org.mortbay.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:366)
>
>                 at
> org.mortbay.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:337)
>
>                 at
> java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
>
>                 ... 114 more
>
> [ERROR] pages.Index Render queue error in SetupRender[Index:cache]:
> Exception constructing service 'ContentCache': Error invoking constructor
> uk.co.ioko.tapestry.caching.services.ContentCacheImpl(String) (at
> ContentCacheImpl.java:55) via
> uk.co.ioko.tapestry.caching.services.CacheModule.bind(ServiceBinder) (at
> CacheModule.java:36) (for service 'ContentCache'):
> org/apache/commons/logging/LogFactory
>
> org.apache.tapestry5.ioc.internal.util.TapestryException: Exception
> constructing service 'ContentCache': Error invoking constructor
> uk.co.ioko.tapestry.caching.services.ContentCacheImpl(String) (at
> ContentCacheImpl.java:55) via
> uk.co.ioko.tapestry.caching.services.CacheModule.bind(ServiceBinder) (at
> CacheModule.java:36) (for service 'ContentCache'):
> org/apache/commons/logging/LogFactory [at context:Index.tml, line 12]
>
>                 at
> org.apache.tapestry5.internal.structure.ComponentPageElementImpl$AbstractPhase.invoke(ComponentPageElementImpl.java:194)
>
>                 at
> org.apache.tapestry5.internal.structure.ComponentPageElementImpl$SetupRenderPhase.render(ComponentPageElementImpl.java:222)
>
>                 at
> org.apache.tapestry5.internal.services.RenderQueueImpl.run(RenderQueueImpl.java:72)
>
>                 at
> org.apache.tapestry5.internal.services.PageRenderQueueImpl.render(PageRenderQueueImpl.java:127)
>
>                 at
> $PageRenderQueue_12f0c260dd7.render($PageRenderQueue_12f0c260dd7.java)
>
>                 at
> $PageRenderQueue_12f0c260dcf.render($PageRenderQueue_12f0c260dcf.java)
>
>                 at
> org.apache.tapestry5.internal.services.MarkupRendererTerminator.renderMarkup(MarkupRendererTerminator.java:37)
>
>                 at
> org.apache.tapestry5.beanvalidator.BeanValidatorModule$2.renderMarkup(BeanValidatorModule.java:133)
>
>                 at
> $MarkupRenderer_12f0c260dd9.renderMarkup($MarkupRenderer_12f0c260dd9.java)
>
>                 at
> org.apache.tapestry5.services.TapestryModule$29.renderMarkup(TapestryModule.java:2089)
>
>                 at
> $MarkupRenderer_12f0c260dd9.renderMarkup($MarkupRenderer_12f0c260dd9.java)
>
>                 at
> org.apache.tapestry5.services.TapestryModule$28.renderMarkup(TapestryModule.java:2073)
>
>                 at
> $MarkupRenderer_12f0c260dd9.renderMarkup($MarkupRenderer_12f0c260dd9.java)
>
>                 at
> org.apache.tapestry5.services.TapestryModule$27.renderMarkup(TapestryModule.java:2055)
>
>                 at
> $MarkupRenderer_12f0c260dd9.renderMarkup($MarkupRenderer_12f0c260dd9.java)
>
>                 at
> org.apache.tapestry5.services.TapestryModule$26.renderMarkup(TapestryModule.java:2040)
>
>                 at
> $MarkupRenderer_12f0c260dd9.renderMarkup($MarkupRenderer_12f0c260dd9.java)
>
>                 at
> org.apache.tapestry5.services.TapestryModule$25.renderMarkup(TapestryModule.java:2026)
>
>                 at
> $MarkupRenderer_12f0c260dd9.renderMarkup($MarkupRenderer_12f0c260dd9.java)
>
>                 at
> org.apache.tapestry5.services.TapestryModule$24.renderMarkup(TapestryModule.java:2008)
>
>                 at
> $MarkupRenderer_12f0c260dd9.renderMarkup($MarkupRenderer_12f0c260dd9.java)
>
>                 at
> org.apache.tapestry5.services.TapestryModule$23.renderMarkup(TapestryModule.java:1989)
>
>                 at
> $MarkupRenderer_12f0c260dd9.renderMarkup($MarkupRenderer_12f0c260dd9.java)
>
>                 at
> $MarkupRenderer_12f0c260dd6.renderMarkup($MarkupRenderer_12f0c260dd6.java)
>
>                 at
> org.apache.tapestry5.internal.services.PageMarkupRendererImpl.renderPageMarkup(PageMarkupRendererImpl.java:47)
>
>                 at
> $PageMarkupRenderer_12f0c260dd4.renderPageMarkup($PageMarkupRenderer_12f0c260dd4.java)
>
>                 at
> org.apache.tapestry5.internal.services.PageResponseRendererImpl.renderPageResponse(PageResponseRendererImpl.java:67)
>
>                 at
> $PageResponseRenderer_12f0c260d36.renderPageResponse($PageResponseRenderer_12f0c260d36.java)
>
>                 at
> org.apache.tapestry5.internal.services.PageRenderRequestHandlerImpl.handle(PageRenderRequestHandlerImpl.java:64)
>
>                 at
> org.apache.tapestry5.services.TapestryModule$36.handle(TapestryModule.java:2326)
>
>                 at
> $PageRenderRequestHandler_12f0c260d38.handle($PageRenderRequestHandler_12f0c260d38.java)
>
>                 at
> $PageRenderRequestHandler_12f0c260d32.handle($PageRenderRequestHandler_12f0c260d32.java)
>
>                 at
> org.apache.tapestry5.internal.services.ComponentRequestHandlerTerminator.handlePageRender(ComponentRequestHandlerTerminator.java:48)
>
>                 at
> org.apache.tapestry5.services.InitializeActivePageName.handlePageRender(InitializeActivePageName.java:47)
>
>                 at
> $ComponentRequestHandler_12f0c260d33.handlePageRender($ComponentRequestHandler_12f0c260d33.java)
>
>                 at
> $ComponentRequestHandler_12f0c260d17.handlePageRender($ComponentRequestHandler_12f0c260d17.java)
>
>                 at
> org.apache.tapestry5.internal.services.PageRenderDispatcher.dispatch(PageRenderDispatcher.java:45)
>
>                 at
> $Dispatcher_12f0c260d19.dispatch($Dispatcher_12f0c260d19.java)
>
>                 at
> $Dispatcher_12f0c260d14.dispatch($Dispatcher_12f0c260d14.java)
>
>                 at
> org.apache.tapestry5.services.TapestryModule$RequestHandlerTerminator.service(TapestryModule.java:321)
>
>                 at
> org.apache.tapestry5.internal.services.RequestErrorFilter.service(RequestErrorFilter.java:26)
>
>                 at
> $RequestHandler_12f0c260d15.service($RequestHandler_12f0c260d15.java)
>
>                 at
> org.apache.tapestry5.services.TapestryModule$4.service(TapestryModule.java:984)
>
>                 at
> $RequestHandler_12f0c260d15.service($RequestHandler_12f0c260d15.java)
>
>                 at
> org.apache.tapestry5.services.TapestryModule$3.service(TapestryModule.java:974)
>
>                 at
> $RequestHandler_12f0c260d15.service($RequestHandler_12f0c260d15.java)
>
>                 at
> org.apache.tapestry5.internal.services.StaticFilesFilter.service(StaticFilesFilter.java:90)
>
>                 at
> $RequestHandler_12f0c260d15.service($RequestHandler_12f0c260d15.java)
>
>                 at
> org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:90)
>
>                 at
> org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:80)
>
>                 at
> org.apache.tapestry5.ioc.internal.util.ConcurrentBarrier.withRead(ConcurrentBarrier.java:85)
>
>                 at
> org.apache.tapestry5.internal.services.CheckForUpdatesFilter.service(CheckForUpdatesFilter.java:103)
>
>                 at
> $RequestHandler_12f0c260d15.service($RequestHandler_12f0c260d15.java)
>
>                 at
> $RequestHandler_12f0c260d0b.service($RequestHandler_12f0c260d0b.java)
>
>                 at
> org.apache.tapestry5.services.TapestryModule$HttpServletRequestHandlerTerminator.service(TapestryModule.java:272)
>
>                 at
> org.apache.tapestry5.internal.gzip.GZipFilter.service(GZipFilter.java:53)
>
>                 at
> $HttpServletRequestHandler_12f0c260d0d.service($HttpServletRequestHandler_12f0c260d0d.java)
>
>                 at
> org.apache.tapestry5.internal.services.IgnoredPathsFilter.service(IgnoredPathsFilter.java:62)
>
>                 at
> $HttpServletRequestFilter_12f0c260d0a.service($HttpServletRequestFilter_12f0c260d0a.java)
>
>                 at
> $HttpServletRequestHandler_12f0c260d0d.service($HttpServletRequestHandler_12f0c260d0d.java)
>
>                 at
> org.apache.tapestry5.services.TapestryModule$2.service(TapestryModule.java:928)
>
>                 at
> $HttpServletRequestHandler_12f0c260d0d.service($HttpServletRequestHandler_12f0c260d0d.java)
>
>                 at
> $HttpServletRequestHandler_12f0c260d08.service($HttpServletRequestHandler_12f0c260d08.java)
>
>                 at
> org.apache.tapestry5.TapestryFilter.doFilter(TapestryFilter.java:147)
>
>                 at
> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
>
>                 at
> org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
>
>                 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:726)
>
>                 at
> org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
>
>                 at
> org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:206)
>
>                 at
> org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
>
>                 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.headerComplete(HttpConnection.java:828)
>
>                 at
> org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:514)
>
>                 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.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:450)
>
> Caused by: java.lang.RuntimeException: Exception constructing service
> 'ContentCache': Error invoking constructor
> uk.co.ioko.tapestry.caching.services.ContentCacheImpl(String) (at
> ContentCacheImpl.java:55) via
> uk.co.ioko.tapestry.caching.services.CacheModule.bind(ServiceBinder) (at
> CacheModule.java:36) (for service 'ContentCache'):
> org/apache/commons/logging/LogFactory
>
>                 at
> org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.obtainObjectFromCreator(JustInTimeObjectCreator.java:78)
>
>                 at
> org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.createObject(JustInTimeObjectCreator.java:57)
>
>                 at
> $ContentCache_12f0c260d6d.delegate($ContentCache_12f0c260d6d.java)
>
>                 at
> $ContentCache_12f0c260d6d.getContent($ContentCache_12f0c260d6d.java)
>
>                 at
> uk.co.ioko.tapestry.caching.components.Cache.setupRender(Cache.java:93)
>
>                 at
> uk.co.ioko.tapestry.caching.components.Cache$MethodAccess_setupRender_12f0c260d6f.invoke(Cache$MethodAccess_setupRender_12f0c260d6f.java)
>
>                 at
> org.apache.tapestry5.internal.transform.RenderPhaseMethodWorker$Invoker.invoke(RenderPhaseMethodWorker.java:117)
>
>                 at
> org.apache.tapestry5.internal.transform.RenderPhaseMethodWorker$RenderPhaseMethodAdvice.advise(RenderPhaseMethodWorker.java:86)
>
>                 at
> org.apache.tapestry5.internal.services.AbstractComponentMethodInvocation.proceed(AbstractComponentMethodInvocation.java:86)
>
>                 at
> uk.co.ioko.tapestry.caching.components.Cache.setupRender(Cache.java)
>
>                 at
> org.apache.tapestry5.internal.structure.ComponentPageElementImpl$SetupRenderPhase.invokeComponent(ComponentPageElementImpl.java:215)
>
>                 at
> org.apache.tapestry5.internal.structure.ComponentPageElementImpl$AbstractPhase.invoke(ComponentPageElementImpl.java:176)
>
>                 ... 80 more
>
> Caused by: org.apache.tapestry5.ioc.internal.OperationException: Error
> invoking constructor
> uk.co.ioko.tapestry.caching.services.ContentCacheImpl(String) (at
> ContentCacheImpl.java:55) via
> uk.co.ioko.tapestry.caching.services.CacheModule.bind(ServiceBinder) (at
> CacheModule.java:36) (for service 'ContentCache'):
> org/apache/commons/logging/LogFactory
>
>                 at
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.logAndRethrow(OperationTrackerImpl.java:102)
>
>                 at
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:69)
>
>                 at
> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:68)
>
>                 at
> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1063)
>
>                 at
> org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator.createObject(OperationTrackingObjectCreator.java:49)
>
>                 at
> org.apache.tapestry5.ioc.internal.SingletonServiceLifecycle.createService(SingletonServiceLifecycle.java:29)
>
>                 at
> org.apache.tapestry5.ioc.internal.LifecycleWrappedServiceCreator.createObject(LifecycleWrappedServiceCreator.java:46)
>
>                 at
> org.apache.tapestry5.ioc.internal.AdvisorStackBuilder.createObject(AdvisorStackBuilder.java:60)
>
>                 at
> org.apache.tapestry5.ioc.internal.InterceptorStackBuilder.createObject(InterceptorStackBuilder.java:52)
>
>                 at
> org.apache.tapestry5.ioc.internal.RecursiveServiceCreationCheckWrapper.createObject(RecursiveServiceCreationCheckWrapper.java:60)
>
>                 at
> org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator$1.invoke(OperationTrackingObjectCreator.java:45)
>
>                 at
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:65)
>
>                 at
> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:68)
>
>                 at
> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1063)
>
>                 at
> org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator.createObject(OperationTrackingObjectCreator.java:49)
>
>                 at
> org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.obtainObjectFromCreator(JustInTimeObjectCreator.java:68)
>
>                 ... 91 more
>
> Caused by: java.lang.RuntimeException: Error invoking constructor
> uk.co.ioko.tapestry.caching.services.ContentCacheImpl(String) (at
> ContentCacheImpl.java:55) via
> uk.co.ioko.tapestry.caching.services.CacheModule.bind(ServiceBinder) (at
> CacheModule.java:36) (for service 'ContentCache'):
> org/apache/commons/logging/LogFactory
>
>                 at
> org.apache.tapestry5.ioc.internal.ConstructorServiceCreator.createObject(ConstructorServiceCreator.java:76)
>
>                 at
> org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator$1.invoke(OperationTrackingObjectCreator.java:45)
>
>                 at
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:65)
>
>                 ... 105 more
>
> Caused by: java.lang.NoClassDefFoundError:
> org/apache/commons/logging/LogFactory
>
>                 at
> net.sf.ehcache.CacheManager.<clinit>(CacheManager.java:71)
>
>                 at
> uk.co.ioko.tapestry.caching.services.ContentCacheImpl.<init>(ContentCacheImpl.java:61)
>
>                 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:513)
>
>                 at
> org.apache.tapestry5.ioc.internal.ConstructorServiceCreator.createObject(ConstructorServiceCreator.java:62)
>
>                 ... 107 more
>
> Caused by: java.lang.ClassNotFoundException:
> org.apache.commons.logging.LogFactory
>
>                 at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
>
>                 at java.security.AccessController.doPrivileged(Native
> Method)
>
>                 at
> java.net.URLClassLoader.findClass(URLClassLoader.java:188)
>
>                 at
> org.mortbay.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:366)
>
>                 at
> org.mortbay.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:337)
>
>                 at
> java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
>
>                 ... 114 more
>
> [ERROR] TapestryModule.RequestExceptionHandler Processing of request failed
> with uncaught exception: Render queue error in SetupRender[Index:cache]:
> Exception constructing service 'ContentCache': Error invoking constructor
> uk.co.ioko.tapestry.caching.services.ContentCacheImpl(String) (at
> ContentCacheImpl.java:55) via
> uk.co.ioko.tapestry.caching.services.CacheModule.bind(ServiceBinder) (at
> CacheModule.java:36) (for service 'ContentCache'):
> org/apache/commons/logging/LogFactory
>
> org.apache.tapestry5.internal.services.RenderQueueException: Render queue
> error in SetupRender[Index:cache]: Exception constructing service
> 'ContentCache': Error invoking constructor
> uk.co.ioko.tapestry.caching.services.ContentCacheImpl(String) (at
> ContentCacheImpl.java:55) via
> uk.co.ioko.tapestry.caching.services.CacheModule.bind(ServiceBinder) (at
> CacheModule.java:36) (for service 'ContentCache'):
> org/apache/commons/logging/LogFactory [at context:Index.tml, line 12]
>
>                 at
> org.apache.tapestry5.internal.services.RenderQueueImpl.run(RenderQueueImpl.java:84)
>
>                 at
> org.apache.tapestry5.internal.services.PageRenderQueueImpl.render(PageRenderQueueImpl.java:127)
>
>                 at
> $PageRenderQueue_12f0c260dd7.render($PageRenderQueue_12f0c260dd7.java)
>
>                 at
> $PageRenderQueue_12f0c260dcf.render($PageRenderQueue_12f0c260dcf.java)
>
>                 at
> org.apache.tapestry5.internal.services.MarkupRendererTerminator.renderMarkup(MarkupRendererTerminator.java:37)
>
>                 at
> org.apache.tapestry5.beanvalidator.BeanValidatorModule$2.renderMarkup(BeanValidatorModule.java:133)
>
>                 at
> $MarkupRenderer_12f0c260dd9.renderMarkup($MarkupRenderer_12f0c260dd9.java)
>
>                 at
> org.apache.tapestry5.services.TapestryModule$29.renderMarkup(TapestryModule.java:2089)
>
>                 at
> $MarkupRenderer_12f0c260dd9.renderMarkup($MarkupRenderer_12f0c260dd9.java)
>
>                 at
> org.apache.tapestry5.services.TapestryModule$28.renderMarkup(TapestryModule.java:2073)
>
>                 at
> $MarkupRenderer_12f0c260dd9.renderMarkup($MarkupRenderer_12f0c260dd9.java)
>
>                 at
> org.apache.tapestry5.services.TapestryModule$27.renderMarkup(TapestryModule.java:2055)
>
>                 at
> $MarkupRenderer_12f0c260dd9.renderMarkup($MarkupRenderer_12f0c260dd9.java)
>
>                 at
> org.apache.tapestry5.services.TapestryModule$26.renderMarkup(TapestryModule.java:2040)
>
>                 at
> $MarkupRenderer_12f0c260dd9.renderMarkup($MarkupRenderer_12f0c260dd9.java)
>
>                 at
> org.apache.tapestry5.services.TapestryModule$25.renderMarkup(TapestryModule.java:2026)
>
>                 at
> $MarkupRenderer_12f0c260dd9.renderMarkup($MarkupRenderer_12f0c260dd9.java)
>
>                 at
> org.apache.tapestry5.services.TapestryModule$24.renderMarkup(TapestryModule.java:2008)
>
>                 at
> $MarkupRenderer_12f0c260dd9.renderMarkup($MarkupRenderer_12f0c260dd9.java)
>
>                 at
> org.apache.tapestry5.services.TapestryModule$23.renderMarkup(TapestryModule.java:1989)
>
>                 at
> $MarkupRenderer_12f0c260dd9.renderMarkup($MarkupRenderer_12f0c260dd9.java)
>
>                 at
> $MarkupRenderer_12f0c260dd6.renderMarkup($MarkupRenderer_12f0c260dd6.java)
>
>                 at
> org.apache.tapestry5.internal.services.PageMarkupRendererImpl.renderPageMarkup(PageMarkupRendererImpl.java:47)
>
>                 at
> $PageMarkupRenderer_12f0c260dd4.renderPageMarkup($PageMarkupRenderer_12f0c260dd4.java)
>
>                 at
> org.apache.tapestry5.internal.services.PageResponseRendererImpl.renderPageResponse(PageResponseRendererImpl.java:67)
>
>                 at
> $PageResponseRenderer_12f0c260d36.renderPageResponse($PageResponseRenderer_12f0c260d36.java)
>
>                 at
> org.apache.tapestry5.internal.services.PageRenderRequestHandlerImpl.handle(PageRenderRequestHandlerImpl.java:64)
>
>                 at
> org.apache.tapestry5.services.TapestryModule$36.handle(TapestryModule.java:2326)
>
>                 at
> $PageRenderRequestHandler_12f0c260d38.handle($PageRenderRequestHandler_12f0c260d38.java)
>
>                 at
> $PageRenderRequestHandler_12f0c260d32.handle($PageRenderRequestHandler_12f0c260d32.java)
>
>                 at
> org.apache.tapestry5.internal.services.ComponentRequestHandlerTerminator.handlePageRender(ComponentRequestHandlerTerminator.java:48)
>
>                 at
> org.apache.tapestry5.services.InitializeActivePageName.handlePageRender(InitializeActivePageName.java:47)
>
>                 at
> $ComponentRequestHandler_12f0c260d33.handlePageRender($ComponentRequestHandler_12f0c260d33.java)
>
>                 at
> $ComponentRequestHandler_12f0c260d17.handlePageRender($ComponentRequestHandler_12f0c260d17.java)
>
>                 at
> org.apache.tapestry5.internal.services.PageRenderDispatcher.dispatch(PageRenderDispatcher.java:45)
>
>                 at
> $Dispatcher_12f0c260d19.dispatch($Dispatcher_12f0c260d19.java)
>
>                 at
> $Dispatcher_12f0c260d14.dispatch($Dispatcher_12f0c260d14.java)
>
>                 at
> org.apache.tapestry5.services.TapestryModule$RequestHandlerTerminator.service(TapestryModule.java:321)
>
>                 at
> org.apache.tapestry5.internal.services.RequestErrorFilter.service(RequestErrorFilter.java:26)
>
>                 at
> $RequestHandler_12f0c260d15.service($RequestHandler_12f0c260d15.java)
>
>                 at
> org.apache.tapestry5.services.TapestryModule$4.service(TapestryModule.java:984)
>
>                 at
> $RequestHandler_12f0c260d15.service($RequestHandler_12f0c260d15.java)
>
>                 at
> org.apache.tapestry5.services.TapestryModule$3.service(TapestryModule.java:974)
>
>                 at
> $RequestHandler_12f0c260d15.service($RequestHandler_12f0c260d15.java)
>
>                 at
> org.apache.tapestry5.internal.services.StaticFilesFilter.service(StaticFilesFilter.java:90)
>
>                 at
> $RequestHandler_12f0c260d15.service($RequestHandler_12f0c260d15.java)
>
>                 at
> org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:90)
>
>                 at
> org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:80)
>
>                 at
> org.apache.tapestry5.ioc.internal.util.ConcurrentBarrier.withRead(ConcurrentBarrier.java:85)
>
>                 at
> org.apache.tapestry5.internal.services.CheckForUpdatesFilter.service(CheckForUpdatesFilter.java:103)
>
>                 at
> $RequestHandler_12f0c260d15.service($RequestHandler_12f0c260d15.java)
>
>                 at
> $RequestHandler_12f0c260d0b.service($RequestHandler_12f0c260d0b.java)
>
>                 at
> org.apache.tapestry5.services.TapestryModule$HttpServletRequestHandlerTerminator.service(TapestryModule.java:272)
>
>                 at
> org.apache.tapestry5.internal.gzip.GZipFilter.service(GZipFilter.java:53)
>
>                 at
> $HttpServletRequestHandler_12f0c260d0d.service($HttpServletRequestHandler_12f0c260d0d.java)
>
>                 at
> org.apache.tapestry5.internal.services.IgnoredPathsFilter.service(IgnoredPathsFilter.java:62)
>
>                 at
> $HttpServletRequestFilter_12f0c260d0a.service($HttpServletRequestFilter_12f0c260d0a.java)
>
>                 at
> $HttpServletRequestHandler_12f0c260d0d.service($HttpServletRequestHandler_12f0c260d0d.java)
>
>                 at
> org.apache.tapestry5.services.TapestryModule$2.service(TapestryModule.java:928)
>
>                 at
> $HttpServletRequestHandler_12f0c260d0d.service($HttpServletRequestHandler_12f0c260d0d.java)
>
>                 at
> $HttpServletRequestHandler_12f0c260d08.service($HttpServletRequestHandler_12f0c260d08.java)
>
>                 at
> org.apache.tapestry5.TapestryFilter.doFilter(TapestryFilter.java:147)
>
>                 at
> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
>
>                 at
> org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
>
>                 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:726)
>
>                 at
> org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
>
>                 at
> org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:206)
>
>                 at
> org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
>
>                 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.headerComplete(HttpConnection.java:828)
>
>                 at
> org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:514)
>
>                 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.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:450)
>
> Caused by: org.apache.tapestry5.ioc.internal.util.TapestryException:
> Exception constructing service 'ContentCache': Error invoking constructor
> uk.co.ioko.tapestry.caching.services.ContentCacheImpl(String) (at
> ContentCacheImpl.java:55) via
> uk.co.ioko.tapestry.caching.services.CacheModule.bind(ServiceBinder) (at
> CacheModule.java:36) (for service 'ContentCache'):
> org/apache/commons/logging/LogFactory [at context:Index.tml, line 12]
>
>                 at
> org.apache.tapestry5.internal.structure.ComponentPageElementImpl$AbstractPhase.invoke(ComponentPageElementImpl.java:194)
>
>                 at
> org.apache.tapestry5.internal.structure.ComponentPageElementImpl$SetupRenderPhase.render(ComponentPageElementImpl.java:222)
>
>                 at
> org.apache.tapestry5.internal.services.RenderQueueImpl.run(RenderQueueImpl.java:72)
>
>                 ... 78 more
>
> Caused by: java.lang.RuntimeException: Exception constructing service
> 'ContentCache': Error invoking constructor
> uk.co.ioko.tapestry.caching.services.ContentCacheImpl(String) (at
> ContentCacheImpl.java:55) via
> uk.co.ioko.tapestry.caching.services.CacheModule.bind(ServiceBinder) (at
> CacheModule.java:36) (for service 'ContentCache'):
> org/apache/commons/logging/LogFactory
>
>                 at
> org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.obtainObjectFromCreator(JustInTimeObjectCreator.java:78)
>
>                 at
> org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.createObject(JustInTimeObjectCreator.java:57)
>
>                 at
> $ContentCache_12f0c260d6d.delegate($ContentCache_12f0c260d6d.java)
>
>                 at
> $ContentCache_12f0c260d6d.getContent($ContentCache_12f0c260d6d.java)
>
>                 at
> uk.co.ioko.tapestry.caching.components.Cache.setupRender(Cache.java:93)
>
>                 at
> uk.co.ioko.tapestry.caching.components.Cache$MethodAccess_setupRender_12f0c260d6f.invoke(Cache$MethodAccess_setupRender_12f0c260d6f.java)
>
>                 at
> org.apache.tapestry5.internal.transform.RenderPhaseMethodWorker$Invoker.invoke(RenderPhaseMethodWorker.java:117)
>
>                 at
> org.apache.tapestry5.internal.transform.RenderPhaseMethodWorker$RenderPhaseMethodAdvice.advise(RenderPhaseMethodWorker.java:86)
>
>                 at
> org.apache.tapestry5.internal.services.AbstractComponentMethodInvocation.proceed(AbstractComponentMethodInvocation.java:86)
>
>                 at
> uk.co.ioko.tapestry.caching.components.Cache.setupRender(Cache.java)
>
>                 at
> org.apache.tapestry5.internal.structure.ComponentPageElementImpl$SetupRenderPhase.invokeComponent(ComponentPageElementImpl.java:215)
>
>                 at
> org.apache.tapestry5.internal.structure.ComponentPageElementImpl$AbstractPhase.invoke(ComponentPageElementImpl.java:176)
>
>                 ... 80 more
>
> Caused by: org.apache.tapestry5.ioc.internal.OperationException: Error
> invoking constructor
> uk.co.ioko.tapestry.caching.services.ContentCacheImpl(String) (at
> ContentCacheImpl.java:55) via
> uk.co.ioko.tapestry.caching.services.CacheModule.bind(ServiceBinder) (at
> CacheModule.java:36) (for service 'ContentCache'):
> org/apache/commons/logging/LogFactory
>
>                 at
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.logAndRethrow(OperationTrackerImpl.java:102)
>
>                 at
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:69)
>
>                 at
> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:68)
>
>                 at
> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1063)
>
>                 at
> org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator.createObject(OperationTrackingObjectCreator.java:49)
>
>                 at
> org.apache.tapestry5.ioc.internal.SingletonServiceLifecycle.createService(SingletonServiceLifecycle.java:29)
>
>                 at
> org.apache.tapestry5.ioc.internal.LifecycleWrappedServiceCreator.createObject(LifecycleWrappedServiceCreator.java:46)
>
>                 at
> org.apache.tapestry5.ioc.internal.AdvisorStackBuilder.createObject(AdvisorStackBuilder.java:60)
>
>                 at
> org.apache.tapestry5.ioc.internal.InterceptorStackBuilder.createObject(InterceptorStackBuilder.java:52)
>
>                 at
> org.apache.tapestry5.ioc.internal.RecursiveServiceCreationCheckWrapper.createObject(RecursiveServiceCreationCheckWrapper.java:60)
>
>                 at
> org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator$1.invoke(OperationTrackingObjectCreator.java:45)
>
>                 at
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:65)
>
>                 at
> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:68)
>
>                 at
> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1063)
>
>                 at
> org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator.createObject(OperationTrackingObjectCreator.java:49)
>
>                 at
> org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.obtainObjectFromCreator(JustInTimeObjectCreator.java:68)
>
>                 ... 91 more
>
> Caused by: java.lang.RuntimeException: Error invoking constructor
> uk.co.ioko.tapestry.caching.services.ContentCacheImpl(String) (at
> ContentCacheImpl.java:55) via
> uk.co.ioko.tapestry.caching.services.CacheModule.bind(ServiceBinder) (at
> CacheModule.java:36) (for service 'ContentCache'):
> org/apache/commons/logging/LogFactory
>
>                 at
> org.apache.tapestry5.ioc.internal.ConstructorServiceCreator.createObject(ConstructorServiceCreator.java:76)
>
>                 at
> org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator$1.invoke(OperationTrackingObjectCreator.java:45)
>
>                 at
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:65)
>
>                 ... 105 more
>
> Caused by: java.lang.NoClassDefFoundError:
> org/apache/commons/logging/LogFactory
>
>                 at
> net.sf.ehcache.CacheManager.<clinit>(CacheManager.java:71)
>
>                 at
> uk.co.ioko.tapestry.caching.services.ContentCacheImpl.<init>(ContentCacheImpl.java:61)
>
>                 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:513)
>
>                 at
> org.apache.tapestry5.ioc.internal.ConstructorServiceCreator.createObject(ConstructorServiceCreator.java:62)
>
>                 ... 107 more
>
> Caused by: java.lang.ClassNotFoundException:
> org.apache.commons.logging.LogFactory
>
>                 at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
>
>                 at java.security.AccessController.doPrivileged(Native
> Method)
>
>                 at
> java.net.URLClassLoader.findClass(URLClassLoader.java:188)
>
>                 at
> org.mortbay.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:366)
>
>                 at
> org.mortbay.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:337)
>
>                 at
> java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
>
>                 ... 114 more
>
> 127.0.0.1 -  -  [31/Mar/2011:13:41:58 +0000] "GET /xmlimporter/ HTTP/1.1"
> 500 4975 "-" "Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.9.2.16)
> Gecko/20110319 firefox GTB7.1"
>
>
>
> I have just verified this in another Tapestry project and just added it as
> a dependency and added:
>
>
>
> <dl id=*"cached"* t:type=*"ioko/Cache"*>
>
>     <dt>Time in cache</dt>
>
>     <dd>${now}</dd>
>
> </dl>
>
>
>
>
>
> Thanks!
>
>
>
> Tobias
>
>
> Erstes Deutsches Fernsehen
> Programmdirektion
> Online Redaktion
> Arnulfstraße 42
> 80335 München
> Tel +49 89 5900 49212
> Fax +49 89 5900 1355
> E-Mail: [hidden email]
> www.DasErste.de
>  <http://www.daserste.de/Mediathek>
>
>
>
>
>



--
Ben Gidley

www.gidley.co.uk
[hidden email]