[ http://issues.apache.org/jira/browse/TAPESTRY-846?page=comments#action_12371388 ]
Martin Dirichs commented on TAPESTRY-846: ----------------------------------------- Although TAPESTRY-403 is also a binding issue, I should be very suprised if it is related to this error. TAPESTRY-403 is an easily reproducible misbehaviour that causes some bindings in the page specification to fail silently if an identical binding is found in the page template. In contrast, TAPESTRY-846 only happens from time to time, which makes it extremely difficult to reproduce it or to file an example illustrating the error reliably. Also, this error shows up as an exception with stack traces as shown above - not something failing silently. > Random error accesing pages: Property " " has already been accounted for by > the element at Annotation ... > --------------------------------------------------------------------------------------------------------- > > Key: TAPESTRY-846 > URL: http://issues.apache.org/jira/browse/TAPESTRY-846 > Project: Tapestry > Type: Bug > Components: Annotations > Versions: 4.0 > Environment: Linux, OS X, WXP > Reporter: Raul Raja Martinez > > As posted in Tapestry mailing list: > I have been unable to write a test to reproduce the error since it happens > randomly which makes me thing that it happens when classes are enhanced. I > have checked all my classes and > com.estudiowebs.CMS.components.AbstractCMSComponent is the only place where > that property is declared. > Here is my code: > public abstract class AbstractCMSComponent extends BaseComponent { > > @InjectPage("News") > public abstract News getNewsPage(); > } > public abstract class AbstractCategoryLinker extends AbstractCMSComponent { > public IPage onClickMenuItem() { > Contact cp = getContactPage(); > return cp; > } > public abstract class MenuNavigation extends AbstractCategoryLinker { > } > Here is the stack trace: > org.apache.hivemind.ApplicationRuntimeException > Property newsPage has already been accounted for by the element at Annotation > @org.apache.tapestry.annotations.InjectPage(value=News) of public abstract > com.estudiowebs.CMS.pages.News > com.estudiowebs.CMS.components.AbstractCMSComponent.getNewsPage(). > location: Annotation > @org.apache.tapestry.annotations.InjectPage(value=News) of public abstract > com.estudiowebs.CMS.pages.News > com.estudiowebs.CMS.components.AbstractCMSComponent.getNewsPage() > Stack Trace: > * > org.apache.tapestry.spec.ComponentSpecification.claimProperty(ComponentSpecification.java:674) > * > org.apache.tapestry.spec.ComponentSpecification.addInjectSpecification(ComponentSpecification.java:645) > * > org.apache.tapestry.annotations.InjectPageAnnotationWorker.performEnhancement(InjectPageAnnotationWorker.java:50) > * > org.apache.tapestry.annotations.AnnotationEnhancementWorker.performMethodEnhancement(AnnotationEnhancementWorker.java:142) > * > org.apache.tapestry.annotations.AnnotationEnhancementWorker.performMethodEnhancement(AnnotationEnhancementWorker.java:110) > * > org.apache.tapestry.annotations.AnnotationEnhancementWorker.performEnhancement(AnnotationEnhancementWorker.java:70) > * > $EnhancementWorker_108fb922aed.performEnhancement($EnhancementWorker_108fb922aed.java) > * > $EnhancementWorker_108fb922aef.performEnhancement($EnhancementWorker_108fb922aef.java) > * > $EnhancementWorker_108fb922acb.performEnhancement($EnhancementWorker_108fb922acb.java) > * > org.apache.tapestry.services.impl.ComponentConstructorFactoryImpl.getComponentConstructor(ComponentConstructorFactoryImpl.java:97) > * > $ComponentConstructorFactory_108fb922ab8.getComponentConstructor($ComponentConstructorFactory_108fb922ab8.java) > * > org.apache.tapestry.pageload.PageLoader.instantiateComponent(PageLoader.java:531) > * > org.apache.tapestry.pageload.PageLoader.constructComponent(PageLoader.java:401) > * > org.apache.tapestry.pageload.PageLoader.createImplicitComponent(PageLoader.java:494) > * > $IPageLoader_108fb922aa8.createImplicitComponent($IPageLoader_108fb922aa8.java) > * > $IPageLoader_108fb922aa9.createImplicitComponent($IPageLoader_108fb922aa9.java) > * > org.apache.tapestry.services.impl.ComponentTemplateLoaderLogic.createImplicitComponent(ComponentTemplateLoaderLogic.java:218) > * > org.apache.tapestry.services.impl.ComponentTemplateLoaderLogic.process(ComponentTemplateLoaderLogic.java:172) > * > org.apache.tapestry.services.impl.ComponentTemplateLoaderLogic.process(ComponentTemplateLoaderLogic.java:111) > * > org.apache.tapestry.services.impl.ComponentTemplateLoaderLogic.loadTemplate(ComponentTemplateLoaderLogic.java:88) > * > org.apache.tapestry.services.impl.ComponentTemplateLoaderImpl.loadTemplate(ComponentTemplateLoaderImpl.java:60) > * > $ComponentTemplateLoader_108fb922abc.loadTemplate($ComponentTemplateLoader_108fb922abc.java) > * > org.apache.tapestry.pageload.PageLoader.loadTemplateForComponent(PageLoader.java:648) > * org.apache.tapestry.BaseComponent.readTemplate(BaseComponent.java:77) > * org.apache.tapestry.BaseComponent.finishLoad(BaseComponent.java:107) > * $Contact_470.finishLoad($Contact_470.java) > * > org.apache.tapestry.pageload.PageLoader.constructComponent(PageLoader.java:439) > * org.apache.tapestry.pageload.PageLoader.loadPage(PageLoader.java:613) > * $IPageLoader_108fb922aa8.loadPage($IPageLoader_108fb922aa8.java) > * $IPageLoader_108fb922aa9.loadPage($IPageLoader_108fb922aa9.java) > * org.apache.tapestry.pageload.PageSource.getPage(PageSource.java:120) > * $IPageSource_108fb922a07.getPage($IPageSource_108fb922a07.java) > * org.apache.tapestry.engine.RequestCycle.loadPage(RequestCycle.java:268) > * org.apache.tapestry.engine.RequestCycle.getPage(RequestCycle.java:251) > * $MenuNavigation_464.getContactPage($MenuNavigation_464.java) > * > com.estudiowebs.CMS.components.AbstractCategoryLinker.onClickMenuItem(AbstractCategoryLinker.java:20) > * sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > * > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) > * > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > * java.lang.reflect.Method.invoke(Method.java:585) > * > org.apache.tapestry.listener.ListenerMethodInvokerImpl.invokeTargetMethod(ListenerMethodInvokerImpl.java:214) > * > org.apache.tapestry.listener.ListenerMethodInvokerImpl.invokeListenerMethod(ListenerMethodInvokerImpl.java:155) > * > org.apache.tapestry.listener.ListenerMethodInvokerImpl.searchAndInvoke(ListenerMethodInvokerImpl.java:124) > * > org.apache.tapestry.listener.ListenerMethodInvokerImpl.invokeListenerMethod(ListenerMethodInvokerImpl.java:65) > * > org.apache.tapestry.listener.SyntheticListener.actionTriggered(SyntheticListener.java:51) > * > org.apache.tapestry.binding.ListenerMethodBinding.actionTriggered(ListenerMethodBinding.java:77) > * > org.apache.tapestry.listener.ListenerInvokerTerminator.invokeListener(ListenerInvokerTerminator.java:51) > * > $ListenerInvoker_108fb922a35.invokeListener($ListenerInvoker_108fb922a35.java) > * org.apache.tapestry.link.DirectLink.trigger(DirectLink.java:105) > * > org.apache.tapestry.engine.DirectService.triggerComponent(DirectService.java:146) > * org.apache.tapestry.engine.DirectService.service(DirectService.java:132) > * $IEngineService_108fb922a92.service($IEngineService_108fb922a92.java) > * > org.apache.tapestry.services.impl.EngineServiceOuterProxy.service(EngineServiceOuterProxy.java:66) > * > org.apache.tapestry.engine.AbstractEngine.service(AbstractEngine.java:248) > * > org.apache.tapestry.services.impl.InvokeEngineTerminator.service(InvokeEngineTerminator.java:60) > * > $WebRequestServicer_108fb922a6b.service($WebRequestServicer_108fb922a6b.java) > * > org.apache.tapestry.services.impl.DisableCachingFilter.service(DisableCachingFilter.java:48) > * > $WebRequestServicerFilter_108fb922a6d.service($WebRequestServicerFilter_108fb922a6d.java) > * > $WebRequestServicer_108fb922a6f.service($WebRequestServicer_108fb922a6f.java) > * > $WebRequestServicer_108fb922a67.service($WebRequestServicer_108fb922a67.java) > * > org.apache.tapestry.services.impl.WebRequestServicerPipelineBridge.service(WebRequestServicerPipelineBridge.java:56) > * > $ServletRequestServicer_108fb922a4b.service($ServletRequestServicer_108fb922a4b.java) > * > org.apache.tapestry.request.DecodedRequestInjector.service(DecodedRequestInjector.java:55) > * > $ServletRequestServicerFilter_108fb922a47.service($ServletRequestServicerFilter_108fb922a47.java) > * > $ServletRequestServicer_108fb922a4d.service($ServletRequestServicer_108fb922a4d.java) > * > org.apache.tapestry.multipart.MultipartDecoderFilter.service(MultipartDecoderFilter.java:52) > * > $ServletRequestServicerFilter_108fb922a45.service($ServletRequestServicerFilter_108fb922a45.java) > * > $ServletRequestServicer_108fb922a4d.service($ServletRequestServicer_108fb922a4d.java) > * > org.apache.tapestry.services.impl.SetupRequestEncoding.service(SetupRequestEncoding.java:53) > * > $ServletRequestServicerFilter_108fb922a49.service($ServletRequestServicerFilter_108fb922a49.java) > * > $ServletRequestServicer_108fb922a4d.service($ServletRequestServicer_108fb922a4d.java) > * > $ServletRequestServicer_108fb922a3f.service($ServletRequestServicer_108fb922a3f.java) > * > org.apache.tapestry.ApplicationServlet.doService(ApplicationServlet.java:123) > * org.apache.tapestry.ApplicationServlet.doGet(ApplicationServlet.java:79) > * javax.servlet.http.HttpServlet.service(HttpServlet.java:689) > * javax.servlet.http.HttpServlet.service(HttpServlet.java:802) > * > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) > * > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) > * > org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:172) > * > org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76) > * > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) > * > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) > * > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) > * > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) > * > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) > * > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) > * > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) > * > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) > * > org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:868) > * > org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:663) > * > org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527) > * > org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80) > * > org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684) > * java.lang.Thread.run(Thread.java:613) -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
