You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tapestry.apache.org by "Jesse Kuhnert (JIRA)" <ta...@jakarta.apache.org> on 2006/11/01 05:07:23 UTC

[jira] Resolved: (TAPESTRY-846) Random error accesing pages: Property " " has already been accounted for by the element at Annotation ...

     [ http://issues.apache.org/jira/browse/TAPESTRY-846?page=all ]

Jesse Kuhnert resolved TAPESTRY-846.
------------------------------------

    Fix Version/s: 4.1.1
       Resolution: Fixed

May have fixed this finally. Guess only time and more bug reports will tell.

Also introduced a new dependency on backport-util-concurrent. Snapshot should be out tonight.

Tested on true multi proc and single proc machine with same good results so I feel ok thinking this one is resolved (efficiently). 



> 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
>          Issue Type: Bug
>          Components: Annotations
>    Affects Versions: 4.0
>         Environment: Linux, OS X, WXP
>            Reporter: Raul Raja Martinez
>         Assigned To: Jesse Kuhnert
>             Fix For: 4.1.1
>
>
> 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: dev-unsubscribe@tapestry.apache.org
For additional commands, e-mail: dev-help@tapestry.apache.org