tapestry-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jesse Kuhnert (JIRA)" <tapestry-...@jakarta.apache.org>
Subject [jira] Resolved: (TAPESTRY-848) Binding Exceptions more prominent with annotations
Date Sat, 02 Dec 2006 01:55:27 GMT
     [ http://issues.apache.org/jira/browse/TAPESTRY-848?page=all ]

Jesse Kuhnert resolved TAPESTRY-848.
------------------------------------

    Resolution: Fixed

Thanks Vitaliy, your example app made this really easy to track down. 

> Binding Exceptions more prominent with annotations
> --------------------------------------------------
>
>                 Key: TAPESTRY-848
>                 URL: http://issues.apache.org/jira/browse/TAPESTRY-848
>             Project: Tapestry
>          Issue Type: Bug
>          Components: Annotations
>    Affects Versions: 4.0
>         Environment: Gentoo Linux, Jboss 4.0.2 JDK 5.0
>            Reporter: Chris Chiappone
>         Assigned To: Jesse Kuhnert
>             Fix For: 4.1.1
>
>         Attachments: annbug.tar.gz, patch.txt
>
>
> As posted in the tapestry forums:
> At first I thought I could work around these issues but they seem to
> be popping up more and more throughout my application.  Its really
> becoming an issue for me.
> Ever since I have moved from .page and .jwc files to annotations I get
> these exceptions more often.
> I don't believe I am doing anything wrong with these annotations.  As
> you can see by the following one I have just declared a DelegateBean
> in my class.  Using
> @Bean(SimpleValidationDeleage)
> public abstract SimpleValidationDelegate getDelegate();
> That same Delegate is used on mulitple pages and in components.  From
> what I understand this should be acceptable.
> This issue also has sprung up on my declaring the same Persistent
> property on different pages or components using the @Persist
> annotation.
> I've also recieved a similar exception doing the following in which both the 
> page and component contain:
> @InjectState("visit")
> public abstract void getVisitObj();
> I was able to work around the issue by changing the component to be
> @InjectState("visit")
> public abstract void getVisitObjComp();
> I didn't run into these problems before I used annotations.  I'd also
> hate to have to go back to .page and .jwc files since there are so
> many files that I've changed.
> Here is an one of the exceptions:
> Exception invoking listener method searchLinkListener of component
> SearchResults/border.search: Error: An error occured processing
> annotation @org.apache.tapestry.annotations.Bean(value=class
> view.util.SimpleValidationDelegate, lifecycle=REQUEST, initializer=)
> of public abstract view.util.SimpleValidationDelegate
> view.components.BasicSearch.getDelegate(): Bean delegate has already
> been declared (at Annotation
> @org.apache.tapestry.annotations.Bean(value=class
> view.util.SimpleValidationDelegate, lifecycle=REQUEST, initializer=)
> of public abstract view.util.SimpleValidationDelegate
> view.components.BasicSearch.getDelegate()).
> binding: org.apache.tapestry.binding.ListenerMethodBinding@fe8153[template
> parameter listener, component=SearchResults/border.search,
> methodName=searchLinkListener,
> location=context:/WEB-INF/BasicSearch.html, line 16]
> component: $BasicSearch_181@4c72e3[SearchResults/border.search]
> location: context:/WEB-INF/BasicSearch.html, line 16
> 11 <br>
> 12 <input jwcid="companyField"
> 13 autocomplete="off" size="20" id="txt1" /> <br>
> 14 <input jwcid="@Submit" name="Submit" label="message:submit" /></form>
> 15
> 16 <a jwcid="@DirectLink" listener="listener:searchLinkListener">
> 17 &raquo;&nbsp;<span key="advanced">Advanced</span>
> 18 </a>
> 19 </div>
> 20 </td>
> 21 </tr>
> org.apache.hivemind.ApplicationRuntimeException
> Error: An error occured processing annotation
> @org.apache.tapestry.annotations.Bean(value=class
> util.SimpleValidationDelegate, lifecycle=REQUEST, initializer=) of
> public abstract view.util.SimpleValidationDelegate
> view.components.BasicSearch.getDelegate(): Bean delegate has already
> been declared (at Annotation
> @org.apache.tapestry.annotations.Bean(value=class
> view.util.SimpleValidationDelegate, lifecycle=REQUEST, initializer=)
> of public abstract view.util.SimpleValidationDelegate
> view.components.BasicSearch.getDelegate()).
> location: Annotation @org.apache.tapestry.annotations.Bean(value=class
> view.util.SimpleValidationDelegate, lifecycle=REQUEST, initializer=)
> of public abstract view.util.SimpleValidationDelegate
> view.components.BasicSearch.getDelegate()
> org.apache.hivemind.ApplicationRuntimeException
> Bean delegate has already been declared (at Annotation
> @org.apache.tapestry.annotations.Bean(value=class
> view.util.SimpleValidationDelegate, lifecycle=REQUEST, initializer=)
> of public abstract view.util.SimpleValidationDelegate
> view.components.BasicSearch.getDelegate()).
> location: Annotation @org.apache.tapestry.annotations.Bean(value=class
> view.util.SimpleValidationDelegate, lifecycle=REQUEST, initializer=)
> of public abstract view.util.SimpleValidationDelegate
> view.components.BasicSearch.getDelegate()
> Stack Trace:
> org.apache.tapestry.spec.ComponentSpecification.addBeanSpecification(ComponentSpecification.java:410)
> org.apache.tapestry.annotations.BeanAnnotationWorker.performEnhancement(BeanAnnotationWorker.java:64)
> 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_1090cd8cc4b.performEnhancement($EnhancementWorker_1090cd8cc4b.java)
> $EnhancementWorker_1090cd8cc4d.performEnhancement($EnhancementWorker_1090cd8cc4d.java)
> $EnhancementWorker_1090cd8cc2d.performEnhancement($EnhancementWorker_1090cd8cc2d.java)
> org.apache.tapestry.services.impl.ComponentConstructorFactoryImpl.getComponentConstructor(ComponentConstructorFactoryImpl.java:97)
> $ComponentConstructorFactory_1090cd8cc1a.getComponentConstructor($ComponentConstructorFactory_1090cd8cc1a.java)
> org.apache.tapestry.pageload.PageLoader.instantiateComponent(PageLoader.java:531)
> org.apache.tapestry.pageload.PageLoader.createImplicitComponent(PageLoader.java:481)

-- 
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


Mime
View raw message