Howard may be on to something. In my WEB-INF folder i have /lib/tapestry-4 jars but I also have a WEB-INF/old/tapestry 4 beta 11 jars. I thought the only jars that get put in the classpath must be in WEB-INF/lib/. Could it by its picking up the WEB-INF/old/* jars also??
On 1/31/06, Jeff Lubetkin <[EMAIL PROTECTED]> wrote: > It's possible that tacos has this problem, but that was not the issue in > our case, as we've custom rolled our AJAX stuff, and don't use tacos. > The issue was in the standard Tapestry component pipeline. > > Later this afternoon I should have time to redo my debugging. I'll > annotate the JIRA issue with what I find. > > jeff > > -----Original Message----- > From: Jesse Kuhnert [mailto:[EMAIL PROTECTED] > Sent: Tuesday, January 31, 2006 12:04 PM > To: Tapestry users > Subject: Re: BindingException Issues more prominent with annotations > > Ouch, I hope this has nothing to do with the tacos component enhancement > pipeline contributions. It could very well be my fault somehow as well. > I'll > double check the tacos contribution rules to see if it looks like it > might > conflict with something in annotations. > > it's this btw (for howard) : > <contribution configuration-id="tapestry.enhance.EnhancementWorkers"> > Adds ajax render interception into component enhancement chain. > <command id="inject-ajaxrender" > object="service:tacos.enhance.ComponentRenderInterceptor" > before="tapestry.enhance.page-detach-listener" /> > <command id="inject-formevent-listener" > object="service:tacos.enhance.FormComponentEventWorker" > after="inject-ajaxrender" /> > </contribution> > > j > > On 1/31/06, Jeff Lubetkin <[EMAIL PROTECTED]> wrote: > > > > This looks very similar to a problem we encountered with > > disable-caching=true and running parallel queries (such as when a > > resulting HTML page contained multiple embedded asset requests, or > AJAX > > type requests). > > > > Basically, if two queries run in parallel and disable-caching is true, > > then when the first one completes all caches will be cleared. If the > > second query is still running and dependent on caches, it will blow > up. > > I found some spots in the Component enhancement pipeline that, if they > > found something cached at the beginning of the request, would throw > like > > this later after the cache had been cleared. > > > > Our problem was Annotation related, but it was a @Parameter annotation > > that was blowing up for us. I actually tracked down the specific > cache > > that was causing the problem, but that was a few months ago and I > can't > > remember the specifics. We've stopped using the disable-cache mode, > so > > I haven't seen this in a while, but if I find some time later I can > redo > > the investigation...shouldn't take more than 30 minutes. > > > > jeff > > > > -----Original Message----- > > From: Chris Chiappone [mailto:[EMAIL PROTECTED] > > Sent: Tuesday, January 31, 2006 11:26 AM > > To: Tapestry users > > Subject: Re: BindingException Issues more prominent with annotations > > > > I'm still trying to figure this out. Could this problem be associated > > when disable-caching=true? > > > > On 1/29/06, Chris Chiappone <[EMAIL PROTECTED]> wrote: > > > New JIRA created: > > > > > > https://issues.apache.org/jira/browse/TAPESTRY-848 > > > > > > On 1/29/06, Howard Lewis Ship <[EMAIL PROTECTED]> wrote: > > > > I don't have a test for this case, so it would certainly be a bug. > > > > Based on how the code is organized, I can't see how this could > > happen > > > > (confusion between the page and component annotations). Each > > > > "enhancement" of a class (page or component) gets its own instance > > of > > > > EnhancementOperationImpl, which is where these checks originate. > > > > > > > > ComponentConstructorFactoryImpl.getComponentConstructor() is > > > > synchronized, I believe. I just can't see how page and component > > class > > > > enhancement could interfere with each other, but that's the nature > > of > > > > bugs. > > > > > > > > Have you created a JIRA issue (or re-opened the old one)? > > > > > > > > On 1/28/06, Chris Chiappone <[EMAIL PROTECTED]> wrote: > > > > > I'm still curious if someone can confirm this. Is it true that > > you > > > > > cannot use the same named property in a page and a component? > > That > > > > > doing this could cause the binding exceptions that I have been > > > > > getting?? > > > > > > > > > > On 1/27/06, Chris Chiappone <[EMAIL PROTECTED]> wrote: > > > > > > It looks like I can reproduce this issue easily. For instance > > say I > > > > > > have a page that contains: > > > > > > > > > > > > @InjectState("visit") > > > > > > public abstract Visit getVisitObj(); > > > > > > > > > > > > And have the exact same getter (annotation or not) in my > > component: > > > > > > > > > > > > public abstract Visit getVisitObj(); > > > > > > > > > > > > The binding exception seems to occur. > > > > > > > > > > > > Does this seem like correct behavior for tapestry? I do this > > quite > > > > > > often in my components because at times the page may not have > > the > > > > > > visit or some other object that the page has, but other times > it > > may. > > > > > > > > > > > > Thoughts and help greatly appreciated > > > > > > > > > > > > > > > > > > > > > > > > On 1/27/06, Chris Chiappone <[EMAIL PROTECTED]> wrote: > > > > > > > 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 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: > > [EMAIL PROTECTED] > > > > > > > parameter listener, component=SearchResults/border.search, > > > > > > > methodName=searchLinkListener, > > > > > > > location=context:/WEB-INF/BasicSearch.html, line 16] > > > > > > > component: > > [EMAIL PROTECTED]/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 » <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(Com > > ponentSpecification.java:410) > > > > > > > > > > org.apache.tapestry.annotations.BeanAnnotationWorker.performEnhancement( > > BeanAnnotationWorker.java:64) > > > > > > > > > > org.apache.tapestry.annotations.AnnotationEnhancementWorker.performMetho > > dEnhancement(AnnotationEnhancementWorker.java:142) > > > > > > > > > > org.apache.tapestry.annotations.AnnotationEnhancementWorker.performMetho > > dEnhancement(AnnotationEnhancementWorker.java:110) > > > > > > > > > > org.apache.tapestry.annotations.AnnotationEnhancementWorker.performEnhan > > cement(AnnotationEnhancementWorker.java:70) > > > > > > > > > > $EnhancementWorker_1090cd8cc4b.performEnhancement($EnhancementWorker_109 > > 0cd8cc4b.java) > > > > > > > > > > $EnhancementWorker_1090cd8cc4d.performEnhancement($EnhancementWorker_109 > > 0cd8cc4d.java) > > > > > > > > > > $EnhancementWorker_1090cd8cc2d.performEnhancement($EnhancementWorker_109 > > 0cd8cc2d.java) > > > > > > > > > > org.apache.tapestry.services.impl.ComponentConstructorFactoryImpl.getCom > > ponentConstructor(ComponentConstructorFactoryImpl.java:97) > > > > > > > > > > $ComponentConstructorFactory_1090cd8cc1a.getComponentConstructor($Compon > > entConstructorFactory_1090cd8cc1a.java) > > > > > > > > > > org.apache.tapestry.pageload.PageLoader.instantiateComponent(PageLoader. > > java:531) > > > > > > > > > > org.apache.tapestry.pageload.PageLoader.createImplicitComponent(PageLoad > > er.java:481) > > > > > > > > > > > > > > > > > > > > > > > > > > > > -- > > > > > > > ~chris > > > > > > > > > > > > > > > > > > > > > > > > > -- > > > > > > ~chris > > > > > > > > > > > > > > > > > > > > > -- > > > > > ~chris > > > > > > > > > > > > --------------------------------------------------------------------- > > > > > 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] > > > > > > > > > > > > > > > > > -- > > > ~chris > > > > > > > > > -- > > ~chris > > > > --------------------------------------------------------------------- > > 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] > > > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > -- ~chris --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
