Looks like a bug to me!  Please add it.  This should just work (even
if it is a degenerate case).

On 7/8/05, Adam Czysciak <[EMAIL PROTECTED]> wrote:
> Hi!
> 
>   Is it a bug or a feature? I know there's no sense to do it;-) but I did it
> (with propeties names 'testBean' and 'testBean2') for testing and I got the
> exception. The beans are shared, therefore I think it should be possible to
> inject them twice (why not?)
> 
> 
> 
> org.apache.hivemind.ApplicationRuntimeException
>   Error at context:/WEB-INF/Home.page, line 10, column 68: Error adding
> property 'testBean2' to class pages.Home: Unable to add method
> java.lang.Object getTestBean2() to class $Home_0: [source error] no such
> field: _$testBean2
> 
>   location:
> context:/WEB-INF/Home.page, line 10, column 68
> 5   "http://jakarta.apache.org/tapestry/dtd/Tapestry_4_0.dtd";>
>   6
>   7  <page-specification class="pages.Home">
>   8
>   9   <inject property="testBean" object="spring:questionGroupDao" />
>   10   <inject property="testBean2" object="spring:questionGroupDao" />
>   11
>   12   </page-specification>
> 
>   org.apache.hivemind.ApplicationRuntimeException
>   Unable to add method java.lang.Object getTestBean2() to class $Home_0:
> [source error] no such field: _$testBean2
> 
>   javassist.CannotCompileException
>   [source error] no such field: _$testBean2
>   Stack Trace:
>   javassist.CtBehavior.setBody(CtBehavior.java:194)
> javassist.CtBehavior.setBody(CtBehavior.java:163)
> org.apache.hivemind.service.impl.ClassFabImpl.addMethod(ClassFabImpl.java:288)
> org.apache.tapestry.enhance.EnhancementOperationImpl.addMethod(EnhancementOperationImpl.java:337)
> org.apache.tapestry.enhance.InjectObjectWorker.injectObject(InjectObjectWorker.java:77)
> org.apache.tapestry.enhance.InjectObjectWorker.performEnhancement(InjectObjectWorker.java:43)
> $InjectEnhancementWorker_104f83b8b1f.performEnhancement($InjectEnhancementWorker_104f83b8b1f.java)
> org.apache.tapestry.enhance.DispatchToInjectWorker.invokeWorker(DispatchToInjectWorker.java:63)
> org.apache.tapestry.enhance.DispatchToInjectWorker.performEnhancement(DispatchToInjectWorker.java:45)
> $EnhancementWorker_104f83b8b09.performEnhancement($EnhancementWorker_104f83b8b09.java)
> $EnhancementWorker_104f83b8b08.performEnhancement($EnhancementWorker_104f83b8b08.java)
> $EnhancementWorker_104f83b8b1e.performEnhancement($EnhancementWorker_104f83b8b1e.java)
> $EnhancementWorker_104f83b8aff.performEnhancement($EnhancementWorker_104f83b8aff.java)
> $EnhancementWorker_104f83b8afe.performEnhancement($EnhancementWorker_104f83b8afe.java)
> org.apache.tapestry.services.impl.ComponentConstructorFactoryImpl.getComponentConstructor(ComponentConstructorFactoryImpl.java:76)
> $ComponentConstructorFactory_104f83b8ae8.getComponentConstructor($ComponentConstructorFactory_104f83b8ae8.java)
> $ComponentConstructorFactory_104f83b8ae7.getComponentConstructor($ComponentConstructorFactory_104f83b8ae7.java)
> org.apache.tapestry.pageload.PageLoader.instantiatePage(PageLoader.java:611)
> org.apache.tapestry.pageload.PageLoader.loadPage(PageLoader.java:639)
> $IPageLoader_104f83b8ae3.loadPage($IPageLoader_104f83b8ae3.java)
> $IPageLoader_104f83b8ae4.loadPage($IPageLoader_104f83b8ae4.java)
> org.apache.tapestry.pageload.PageSource.getPage(PageSource.java:118)
> $IPageSource_104f83b8a54.getPage($IPageSource_104f83b8a54.java)
> $IPageSource_104f83b8a53.getPage($IPageSource_104f83b8a53.java)
> org.apache.tapestry.engine.RequestCycle.loadPage(RequestCycle.java:252)
> org.apache.tapestry.engine.RequestCycle.getPage(RequestCycle.java:235)
> org.apache.tapestry.engine.RequestCycle.activate(RequestCycle.java:596)
> org.apache.tapestry.engine.HomeService.service(HomeService.java:63)
> $IEngineService_104f83b8acf.service($IEngineService_104f83b8acf.java)
> org.apache.tapestry.services.impl.EngineServiceInnerProxy.service(EngineServiceInnerProxy.java:74)
> org.apache.tapestry.services.impl.EngineServiceOuterProxy.service(EngineServiceOuterProxy.java:65)
> org.apache.tapestry.engine.AbstractEngine.service(AbstractEngine.java:241)
> org.apache.tapestry.services.impl.InvokeEngineTerminator.service(InvokeEngineTerminator.java:60)
> $WebRequestServicer_104f83b8ab4.service($WebRequestServicer_104f83b8ab4.java)
> $WebRequestServicer_104f83b8ab3.service($WebRequestServicer_104f83b8ab3.java)
> $WebRequestServicer_104f83b8ab0.service($WebRequestServicer_104f83b8ab0.java)
> $WebRequestServicer_104f83b8aaf.service($WebRequestServicer_104f83b8aaf.java)
> org.apache.tapestry.services.impl.WebRequestServicerPipelineBridge.service(WebRequestServicerPipelineBridge.java:56)
> $ServletRequestServicer_104f83b8a94.service($ServletRequestServicer_104f83b8a94.java)
> $ServletRequestServicer_104f83b8a93.service($ServletRequestServicer_104f83b8a93.java)
> org.apache.tapestry.request.DecodedRequestInjector.service(DecodedRequestInjector.java:55)
> $ServletRequestServicerFilter_104f83b8a90.service($ServletRequestServicerFilter_104f83b8a90.java)
> $ServletRequestServicerFilter_104f83b8a8f.service($ServletRequestServicerFilter_104f83b8a8f.java)
> $ServletRequestServicer_104f83b8a95.service($ServletRequestServicer_104f83b8a95.java)
> org.apache.tapestry.multipart.MultipartDecoderFilter.service(MultipartDecoderFilter.java:52)
> $ServletRequestServicerFilter_104f83b8a8e.service($ServletRequestServicerFilter_104f83b8a8e.java)
> $ServletRequestServicerFilter_104f83b8a8d.service($ServletRequestServicerFilter_104f83b8a8d.java)
> $ServletRequestServicer_104f83b8a95.service($ServletRequestServicer_104f83b8a95.java)
> org.apache.tapestry.services.impl.SetupRequestEncoding.service(SetupRequestEncoding.java:53)
> $ServletRequestServicerFilter_104f83b8a92.service($ServletRequestServicerFilter_104f83b8a92.java)
> $ServletRequestServicerFilter_104f83b8a91.service($ServletRequestServicerFilter_104f83b8a91.java)
> $ServletRequestServicer_104f83b8a95.service($ServletRequestServicer_104f83b8a95.java)
> $ServletRequestServicer_104f83b8a88.service($ServletRequestServicer_104f83b8a88.java)
> $ServletRequestServicer_104f83b8a87.service($ServletRequestServicer_104f83b8a87.java)
> org.apache.tapestry.ApplicationServlet.doService(ApplicationServlet.java:145)
> org.apache.tapestry.ApplicationServlet.doGet(ApplicationServlet.java:101)
> javax.servlet.http.HttpServlet.service(HttpServlet.java:596)
> javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
> org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:427)
> org.mortbay.jetty.servlet.WebApplicationHandler.dispatch(WebApplicationHandler.java:475)
> org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:567)
> org.mortbay.http.HttpContext.handle(HttpContext.java:1565)
> org.mortbay.jetty.servlet.WebApplicationContext.handle(WebApplicationContext.java:635)
> org.mortbay.http.HttpContext.handle(HttpContext.java:1517)
> org.mortbay.http.HttpServer.service(HttpServer.java:954)
> org.mortbay.http.HttpConnection.service(HttpConnection.java:814)
> org.mortbay.http.HttpConnection.handleNext(HttpConnection.java:981)
> org.mortbay.http.HttpConnection.handle(HttpConnection.java:831)
> org.mortbay.http.SocketListener.handleConnection(SocketListener.java:244)
> org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:357)
> org.mortbay.util.ThreadPool$PoolThread.run(ThreadPool.java:534)
> Caused by:
> compile error: no such field: _$testBean2
> javassist.compiler.TypeChecker.fieldAccess(TypeChecker.java:744)
> javassist.compiler.TypeChecker.atFieldRead(TypeChecker.java:702)
> javassist.compiler.TypeChecker.atMember(TypeChecker.java:852)
> javassist.compiler.JvstTypeChecker.atMember(JvstTypeChecker.java:65)
> javassist.compiler.ast.Member.accept(Member.java:38)
> javassist.compiler.CodeGen.doTypeCheck(CodeGen.java:235)
> javassist.compiler.CodeGen.compileExpr(CodeGen.java:222)
> javassist.compiler.CodeGen.atReturnStmnt2(CodeGen.java:591)
> javassist.compiler.JvstCodeGen.atReturnStmnt(JvstCodeGen.java:424)
> javassist.compiler.CodeGen.atStmnt(CodeGen.java:356)
> javassist.compiler.ast.Stmnt.accept(Stmnt.java:49)
> javassist.compiler.CodeGen.atMethodBody(CodeGen.java:285)
> javassist.compiler.Javac.compileBody(Javac.java:208)
> javassist.CtBehavior.setBody(CtBehavior.java:188)
> javassist.CtBehavior.setBody(CtBehavior.java:163)
> org.apache.hivemind.service.impl.ClassFabImpl.addMethod(ClassFabImpl.java:288)
> org.apache.tapestry.enhance.EnhancementOperationImpl.addMethod(EnhancementOperationImpl.java:337)
> org.apache.tapestry.enhance.InjectObjectWorker.injectObject(InjectObjectWorker.java:77)
> org.apache.tapestry.enhance.InjectObjectWorker.performEnhancement(InjectObjectWorker.java:43)
> $InjectEnhancementWorker_104f83b8b1f.performEnhancement($InjectEnhancementWorker_104f83b8b1f.java)
> org.apache.tapestry.enhance.DispatchToInjectWorker.invokeWorker(DispatchToInjectWorker.java:63)
> org.apache.tapestry.enhance.DispatchToInjectWorker.performEnhancement(DispatchToInjectWorker.java:45)
> $EnhancementWorker_104f83b8b09.performEnhancement($EnhancementWorker_104f83b8b09.java)
> $EnhancementWorker_104f83b8b08.performEnhancement($EnhancementWorker_104f83b8b08.java)
> $EnhancementWorker_104f83b8b1e.performEnhancement($EnhancementWorker_104f83b8b1e.java)
> $EnhancementWorker_104f83b8aff.performEnhancement($EnhancementWorker_104f83b8aff.java)
> $EnhancementWorker_104f83b8afe.performEnhancement($EnhancementWorker_104f83b8afe.java)
> org.apache.tapestry.services.impl.ComponentConstructorFactoryImpl.getComponentConstructor(ComponentConstructorFactoryImpl.java:76)
> $ComponentConstructorFactory_104f83b8ae8.getComponentConstructor($ComponentConstructorFactory_104f83b8ae8.java)
> $ComponentConstructorFactory_104f83b8ae7.getComponentConstructor($ComponentConstructorFactory_104f83b8ae7.java)
> org.apache.tapestry.pageload.PageLoader.instantiatePage(PageLoader.java:611)
> org.apache.tapestry.pageload.PageLoader.loadPage(PageLoader.java:639)
> $IPageLoader_104f83b8ae3.loadPage($IPageLoader_104f83b8ae3.java)
> $IPageLoader_104f83b8ae4.loadPage($IPageLoader_104f83b8ae4.java)
> org.apache.tapestry.pageload.PageSource.getPage(PageSource.java:118)
> $IPageSource_104f83b8a54.getPage($IPageSource_104f83b8a54.java)
> $IPageSource_104f83b8a53.getPage($IPageSource_104f83b8a53.java)
> org.apache.tapestry.engine.RequestCycle.loadPage(RequestCycle.java:252)
> org.apache.tapestry.engine.RequestCycle.getPage(RequestCycle.java:235)
> org.apache.tapestry.engine.RequestCycle.activate(RequestCycle.java:596)
> org.apache.tapestry.engine.HomeService.service(HomeService.java:63)
> $IEngineService_104f83b8acf.service($IEngineService_104f83b8acf.java)
> org.apache.tapestry.services.impl.EngineServiceInnerProxy.service(EngineServiceInnerProxy.java:74)
> org.apache.tapestry.services.impl.EngineServiceOuterProxy.service(EngineServiceOuterProxy.java:65)
> org.apache.tapestry.engine.AbstractEngine.service(AbstractEngine.java:241)
> org.apache.tapestry.services.impl.InvokeEngineTerminator.service(InvokeEngineTerminator.java:60)
> $WebRequestServicer_104f83b8ab4.service($WebRequestServicer_104f83b8ab4.java)
> $WebRequestServicer_104f83b8ab3.service($WebRequestServicer_104f83b8ab3.java)
> $WebRequestServicer_104f83b8ab0.service($WebRequestServicer_104f83b8ab0.java)
> $WebRequestServicer_104f83b8aaf.service($WebRequestServicer_104f83b8aaf.java)
> org.apache.tapestry.services.impl.WebRequestServicerPipelineBridge.service(WebRequestServicerPipelineBridge.java:56)
> $ServletRequestServicer_104f83b8a94.service($ServletRequestServicer_104f83b8a94.java)
> $ServletRequestServicer_104f83b8a93.service($ServletRequestServicer_104f83b8a93.java)
> org.apache.tapestry.request.DecodedRequestInjector.service(DecodedRequestInjector.java:55)
> $ServletRequestServicerFilter_104f83b8a90.service($ServletRequestServicerFilter_104f83b8a90.java)
> $ServletRequestServicerFilter_104f83b8a8f.service($ServletRequestServicerFilter_104f83b8a8f.java)
> $ServletRequestServicer_104f83b8a95.service($ServletRequestServicer_104f83b8a95.java)
> org.apache.tapestry.multipart.MultipartDecoderFilter.service(MultipartDecoderFilter.java:52)
> $ServletRequestServicerFilter_104f83b8a8e.service($ServletRequestServicerFilter_104f83b8a8e.java)
> $ServletRequestServicerFilter_104f83b8a8d.service($ServletRequestServicerFilter_104f83b8a8d.java)
> $ServletRequestServicer_104f83b8a95.service($ServletRequestServicer_104f83b8a95.java)
> org.apache.tapestry.services.impl.SetupRequestEncoding.service(SetupRequestEncoding.java:53)
> $ServletRequestServicerFilter_104f83b8a92.service($ServletRequestServicerFilter_104f83b8a92.java)
> $ServletRequestServicerFilter_104f83b8a91.service($ServletRequestServicerFilter_104f83b8a91.java)
> $ServletRequestServicer_104f83b8a95.service($ServletRequestServicer_104f83b8a95.java)
> $ServletRequestServicer_104f83b8a88.service($ServletRequestServicer_104f83b8a88.java)
> $ServletRequestServicer_104f83b8a87.service($ServletRequestServicer_104f83b8a87.java)
> org.apache.tapestry.ApplicationServlet.doService(ApplicationServlet.java:145)
> org.apache.tapestry.ApplicationServlet.doGet(ApplicationServlet.java:101)
> javax.servlet.http.HttpServlet.service(HttpServlet.java:596)
> javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
> org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:427)
> org.mortbay.jetty.servlet.WebApplicationHandler.dispatch(WebApplicationHandler.java:475)
> org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:567)
> org.mortbay.http.HttpContext.handle(HttpContext.java:1565)
> org.mortbay.jetty.servlet.WebApplicationContext.handle(WebApplicationContext.java:635)
> org.mortbay.http.HttpContext.handle(HttpContext.java:1517)
> org.mortbay.http.HttpServer.service(HttpServer.java:954)
> org.mortbay.http.HttpConnection.service(HttpConnection.java:814)
> org.mortbay.http.HttpConnection.handleNext(HttpConnection.java:981)
> org.mortbay.http.HttpConnection.handle(HttpConnection.java:831)
> org.mortbay.http.SocketListener.handleConnection(SocketListener.java:244)
> org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:357)
> org.mortbay.util.ThreadPool$PoolThread.run(ThreadPool.java:534)
> 
> --
> Greets,
>   Adam Czysciak
>   [EMAIL PROTECTED]
>   Sun Certified Programmer for the Java 2 Platform, SE 5
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 
> 


-- 
Howard M. Lewis Ship
Independent J2EE / Open-Source Java Consultant
Creator, Jakarta Tapestry
Creator, Jakarta HiveMind

Professional Tapestry training, mentoring, support
and project work.  http://howardlewisship.com

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

Reply via email to