hi chris,
 
if you have checked out and built T5 in eclipse and you
have a T5 application that references the T5 project you
will have to extend tapestry-hibernate with a manifest.mf
file containing the HibernateModule class. Normally the
manifest is generated by a maven plugin. otherwise T5 ioc
will not be able to inject any of the tapestry-hibernate classes
 
g,
kris

-----Chris Lewis <[EMAIL PROTECTED]> schrieb: -----

An: Tapestry users <users@tapestry.apache.org>
Von: Chris Lewis <[EMAIL PROTECTED]>
Datum: 17.10.2007 08:15AM
Thema: Re: T5: tapestry-hibernate failing in today's 5.0.6 snapshot and eclipse + jetty launcher

For what its worth I'm not doing any tinkering/contributing in my app
module. I had simply added tapestry-hibernate to my project and was
@Injecting the Session as needed. What is really odd is that it works
with the mvn jetty plugin but not through eclipse...

Josh Canfield wrote:
> I haven't spent any more time with it since last night. I'm using Tomcat,
> and tried both through intellij and through mvn tomcat:deploy both get the
> same error. I'll be spending more time with it tonight, if I figure out the
> exact problem I'll let you know.
>
> It's possible that I'm doing something in my AppModule that is incompatible
> with the new changes. I've implemented my own HibernateSessionManager... I
> don't have access to the full stack trace right now but it fails when
> injecting the HibernateSessionSource complaining that there is no
> implementation of org.apache.tapestry.ioc.Configuration.
>
>    /**
>      * The hibernate session manager doesn't handle errors well, replace it
> with
>      * a copy that does a rollback after an error.
>      */
>     @Scope(IOCConstants.PERTHREAD_SCOPE)
>     public static HibernateSessionManager buildPatch(
>             HibernateSessionSource sessionSource,
>             ThreadCleanupHub threadCleanupHub) {
>         HibernateSessionManagerImpl service = new
> HibernateSessionManagerImpl(sessionSource);
>         threadCleanupHub.addThreadCleanupListener(service);
>         return service;
>     }
>
>     public static void contributeAlias(
>             @InjectService("Patch")
>             HibernateSessionManager sessionMgr,
>             Configuration<AliasContribution> configuration) {
>         configuration.add(AliasContribution.create(
> HibernateSessionManager.class, sessionMgr));
>     }
>
> Josh
>
> On 10/16/07, Dan Adams <[EMAIL PROTECTED]> wrote:
>  
>> Are you guys still getting errors with this?
>>
>> On Tue, 2007-10-16 at 10:29 -0700, Josh Canfield wrote:
>>    
>>> I grabbed the nightly build and also ran into problems with my hibernate
>>> module. I was getting an error that
>>> org.apache.tapestry.ioc.Configurationhad no implementation.
>>>
>>> The hibernate configuration was changed recently for this defect:
>>> https://issues.apache.org/jira/browse/TAPESTRY-1372it could be related
>>>      
>> ( I
>>    
>>> have done only cursory investigation)
>>>
>>> Josh
>>>
>>> On 10/16/07, Chris Lewis <[EMAIL PROTECTED]> wrote:
>>>      
>>>> I updated and built 5.0.6-SNAPSHOT today, and now I get a goofy error
>>>> when running my app through the eclipse jetty launcher (which has
>>>>        
>> worked
>>    
>>>> fine). Firstly let me say that I've been building 5.0.6 daily for a
>>>>        
>> week
>>    
>>>> or 2 now, and I've not run into this before now.
>>>>
>>>> If I try to access a page that @Injects a hibernate Session, I get the
>>>> following exception:
>>>>
>>>> org.apache.tapestry.internal.services.TransformationException: Error
>>>> obtaining injected value for field
>>>> com.propertypix.www.pages.Start.session: No service implements the
>>>> interface org.hibernate.Session.
>>>>
>>>> If I launch using mvn jetty:run, all works as usual. I don't know if
>>>>        
>> app
>>    
>>>> versions are to blame, but eclipse launches jetty-5.1.12, while the
>>>> maven one uses whatever the plugin calls for. That is, I'm not sure
>>>>        
>> what
>>    
>>>> that one uses, but I've not changed the config - the maven version is
>>>> 2.0.7.
>>>>
>>>> If anyone knows why this happens and how to fix it, I'd be grateful.
>>>> Following is that lovely stack trace I mentioned:
>>>>
>>>> [ERROR] RequestExceptionHandler Processing of request failed with
>>>> uncaught exception: java.lang.ClassNotFoundException: caught an
>>>> exception while obtaining a class file for
>>>>        
>> com.propertypix.www.pages.Start
>>    
>>>> java.lang.RuntimeException: java.lang.ClassNotFoundException: caught
>>>>        
>> an
>>    
>>>> exception while obtaining a class file for
>>>>        
>> com.propertypix.www.pages.Start
>>    
>>>>    at
>>>>
>>>>
>>>>        
>> org.apache.tapestry.internal.services.ComponentInstantiatorSourceImpl.findClass
>>    
>>>> (ComponentInstantiatorSourceImpl.java:258)
>>>>    at
>>>>
>>>>
>>>>        
>> org.apache.tapestry.internal.services.ComponentInstantiatorSourceImpl.findInstantiator
>>    
>>>> (ComponentInstantiatorSourceImpl.java:240)
>>>>    at
>>>>
>>>>
>>>>        
>> $ComponentInstantiatorSource_115a9bb4e31.findInstantiator($ComponentInstantiatorSource_115a9bb4e31.java)
>>    
>>>>    at
>>>>
>>>>
>>>>        
>> org.apache.tapestry.internal.services.PageElementFactoryImpl.newRootComponentElement
>>    
>>>> (PageElementFactoryImpl.java:319)
>>>>    at
>>>>
>>>>
>>>>        
>> $PageElementFactory_115a9bb4e5b.newRootComponentElement($PageElementFactory_115a9bb4e5b.java)
>>    
>>>>    at
>>>>
>>>>
>>>>        
>> org.apache.tapestry.internal.services.PageLoaderProcessor.loadRootComponent
>>    
>>>> (PageLoaderProcessor.java:405)
>>>>    at
>>>> org.apache.tapestry.internal.services.PageLoaderProcessor.loadPage(
>>>> PageLoaderProcessor.java:390)
>>>>    at
>>>> org.apache.tapestry.internal.services.PageLoaderImpl.loadPage(
>>>> PageLoaderImpl.java:59)
>>>>    at $PageLoader_115a9bb4e59.loadPage($PageLoader_115a9bb4e59.java)
>>>>    at
>>>> org.apache.tapestry.internal.services.PagePoolImpl.checkout(
>>>> PagePoolImpl.java:70)
>>>>    at $PagePool_115a9bb4e58.checkout($PagePool_115a9bb4e58.java)
>>>>    at
>>>> org.apache.tapestry.internal.services.RequestPageCacheImpl.get(
>>>> RequestPageCacheImpl.java:44)
>>>>    at
>>>> $RequestPageCache_115a9bb4e57.get($RequestPageCache_115a9bb4e57.java)
>>>>    at
>>>> $RequestPageCache_115a9bb4e2e.get($RequestPageCache_115a9bb4e2e.java)
>>>>    at
>>>>
>>>>        
>> org.apache.tapestry.internal.services.PageRenderRequestHandlerImpl.handle(
>>    
>>>> PageRenderRequestHandlerImpl.java:55)
>>>>    at
>>>>
>>>>
>>>>        
>> $PageRenderRequestHandler_115a9bb4e4f.handle($PageRenderRequestHandler_115a9bb4e4f.java)
>>    
>>>>    at
>>>> org.apache.tapestry.internal.services.RootPathDispatcher.dispatch(
>>>> RootPathDispatcher.java:56)
>>>>    at $Dispatcher_115a9bb4e53.dispatch($Dispatcher_115a9bb4e53.java)
>>>>    at $Dispatcher_115a9bb4e45.dispatch($Dispatcher_115a9bb4e45.java)
>>>>    at
>>>> org.apache.tapestry.services.TapestryModule$13.service(
>>>>        
>> TapestryModule.java
>>    
>>>> :1099)
>>>>    at
>>>> com.propertypix.www.services.PropertyPixModule$1.service(
>>>> PropertyPixModule.java:104)
>>>>    at
>>>>        
>> $RequestFilter_115a9bb4e44.service($RequestFilter_115a9bb4e44.java)
>>    
>>>>    at
>>>> $RequestHandler_115a9bb4e46.service($RequestHandler_115a9bb4e46.java)
>>>>    at
>>>> org.apache.tapestry.internal.services.LocalizationFilter.service(
>>>> LocalizationFilter.java:43)
>>>>    at
>>>> $RequestHandler_115a9bb4e46.service($RequestHandler_115a9bb4e46.java)
>>>>    at
>>>> org.apache.tapestry.services.TapestryModule$2.service(
>>>>        
>> TapestryModule.java
>>    
>>>> :679)
>>>>    at
>>>> $RequestHandler_115a9bb4e46.service($RequestHandler_115a9bb4e46.java)
>>>>    at
>>>> org.apache.tapestry.internal.services.StaticFilesFilter.service(
>>>> StaticFilesFilter.java:84)
>>>>    at
>>>> $RequestHandler_115a9bb4e46.service($RequestHandler_115a9bb4e46.java)
>>>>    at
>>>> org.apache.tapestry.internal.services.CheckForUpdatesFilter$2.invoke(
>>>> CheckForUpdatesFilter.java:97)
>>>>    at
>>>> org.apache.tapestry.internal.services.CheckForUpdatesFilter$2.invoke(
>>>> CheckForUpdatesFilter.java:1)
>>>>    at
>>>> org.apache.tapestry.ioc.internal.util.ConcurrentBarrier.withRead(
>>>> ConcurrentBarrier.java:77)
>>>>    at
>>>> org.apache.tapestry.internal.services.CheckForUpdatesFilter.service(
>>>> CheckForUpdatesFilter.java:110)
>>>>    at
>>>> $RequestHandler_115a9bb4e46.service($RequestHandler_115a9bb4e46.java)
>>>>    at
>>>> $RequestHandler_115a9bb4e3e.service($RequestHandler_115a9bb4e3e.java)
>>>>    at
>>>> org.apache.tapestry.services.TapestryModule$12.service(
>>>>        
>> TapestryModule.java
>>    
>>>> :1077)
>>>>    at
>>>>
>>>>
>>>>        
>> $HttpServletRequestHandler_115a9bb4e3d.service($HttpServletRequestHandler_115a9bb4e3d.java)
>>    
>>>>    at org.apache.tapestry.TapestryFilter.doFilter(TapestryFilter.java
>>>>        
>> :135)
>>    
>>>>    at
>>>> org.mortbay.jetty.servlet.WebApplicationHandler$CachedChain.doFilter(
>>>> WebApplicationHandler.java:821)
>>>>    at
>>>> org.mortbay.jetty.servlet.WebApplicationHandler.dispatch(
>>>> WebApplicationHandler.java:471)
>>>>    at
>>>> org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java
>>>>        
>> :568)
>>    
>>>>    at org.mortbay.http.HttpContext.handle(HttpContext.java:1530)
>>>>    at
>>>> org.mortbay.jetty.servlet.WebApplicationContext.handle(
>>>> WebApplicationContext.java:633)
>>>>    at org.mortbay.http.HttpContext.handle(HttpContext.java:1482)
>>>>    at org.mortbay.http.HttpServer.service(HttpServer.java:909)
>>>>    at org.mortbay.http.HttpConnection.service(HttpConnection.java:820)
>>>>    at org.mortbay.http.HttpConnection.handleNext(HttpConnection.java
>>>>        
>> :986)
>>    
>>>>    at org.mortbay.http.HttpConnection.handle(HttpConnection.java:837)
>>>>    at
>>>> org.mortbay.http.SocketListener.handleConnection(SocketListener.java
>>>>        
>> :245)
>>    
>>>>    at org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:357)
>>>>    at org.mortbay.util.ThreadPool$PoolThread.run(ThreadPool.java:534)
>>>> Caused by: java.lang.ClassNotFoundException: caught an exception while
>>>> obtaining a class file for com.propertypix.www.pages.Start
>>>>    at javassist.Loader.findClass(Loader.java:359)
>>>>    at
>>>>
>>>>
>>>>        
>> org.apache.tapestry.internal.services.ComponentInstantiatorSourceImpl$PackageAwareLoader.findClass
>>    
>>>> (ComponentInstantiatorSourceImpl.java:85)
>>>>    at javassist.Loader.loadClass(Loader.java:311)
>>>>    at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
>>>>    at
>>>>
>>>>
>>>>        
>> org.apache.tapestry.internal.services.ComponentInstantiatorSourceImpl.findClass
>>    
>>>> (ComponentInstantiatorSourceImpl.java:254)
>>>>    ... 50 more
>>>> Caused by:
>>>> org.apache.tapestry.internal.services.TransformationException: Error
>>>> obtaining injected value for field
>>>> com.propertypix.www.pages.Start.session: No service implements the
>>>> interface org.hibernate.Session.
>>>>    at
>>>>
>>>>
>>>>        
>> org.apache.tapestry.internal.services.ComponentClassTransformerImpl.transformComponentClass
>>    
>>>> (ComponentClassTransformerImpl.java:137)
>>>>    at
>>>>
>>>>
>>>>        
>> $ComponentClassTransformer_115a9bb4e3b.transformComponentClass($ComponentClassTransformer_115a9bb4e3b.java)
>>    
>>>>    at
>>>>
>>>>
>>>>        
>> org.apache.tapestry.internal.services.ComponentInstantiatorSourceImpl.onLoad
>>    
>>>> (ComponentInstantiatorSourceImpl.java:177)
>>>>    at javassist.Loader.findClass(Loader.java:340)
>>>>    ... 54 more
>>>> Caused by: java.lang.RuntimeException: Error obtaining injected value
>>>> for field com.propertypix.www.pages.Start.session: No service
>>>>        
>> implements
>>    
>>>> the interface org.hibernate.Session.
>>>>    at
>>>> org.apache.tapestry.internal.services.InjectWorker.transform(
>>>> InjectWorker.java:68)
>>>>    at
>>>>
>>>>
>>>>        
>> $ComponentClassTransformWorker_115a9bb4e64.transform($ComponentClassTransformWorker_115a9bb4e64.java)
>>    
>>>>    at
>>>>
>>>>
>>>>        
>> $ComponentClassTransformWorker_115a9bb4e61.transform($ComponentClassTransformWorker_115a9bb4e61.java)
>>    
>>>>    at
>>>>
>>>>
>>>>        
>> org.apache.tapestry.internal.services.ComponentClassTransformerImpl.transformComponentClass
>>    
>>>> (ComponentClassTransformerImpl.java:131)
>>>>    ... 57 more
>>>> Caused by: java.lang.RuntimeException: No service implements the
>>>> interface org.hibernate.Session.
>>>>    at
>>>> org.apache.tapestry.ioc.internal.RegistryImpl.getService(
>>>>        
>> RegistryImpl.java
>>    
>>>> :523)
>>>>    at
>>>> org.apache.tapestry.ioc.internal.ObjectLocatorImpl.getService(
>>>> ObjectLocatorImpl.java:45)
>>>>    at
>>>>
>>>>
>>>>        
>> org.apache.tapestry.internal.services.ServiceInjectionProvider.provideInjection
>>    
>>>> (ServiceInjectionProvider.java:40)
>>>>    at
>>>>
>>>>
>>>>        
>> $InjectionProvider_115a9bb4e65.provideInjection($InjectionProvider_115a9bb4e65.java)
>>    
>>>>    at
>>>>
>>>>
>>>>        
>> $InjectionProvider_115a9bb4e62.provideInjection($InjectionProvider_115a9bb4e62.java)
>>    
>>>>    at
>>>> org.apache.tapestry.internal.services.InjectWorker.transform(
>>>> InjectWorker.java:57)
>>>>    ... 60 more
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>>>> For additional commands, e-mail: [EMAIL PROTECTED]
>>>>
>>>>
>>>>        
>>>      
>> --
>> Dan Adams
>> Senior Software Engineer
>> Interactive Factory
>> 617.235.5857
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>> For additional commands, e-mail: [EMAIL PROTECTED]
>>
>>
>>    
>
>
>  


--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to