I thought the ordering was getting screwed up too. But, I added LoggingInterceptor to the ParameterPropertyWorker and my auto-wire worker and the parameter one seems to be running first. If the parameter worker runs first, this problem should not occur, since the property would have already been claimed and my worker would just bypass it. I intentionally put my worker after all that stuff, so I wouldn't step on anyone's toes. I wonder if there's some special case that's getting the ordering screwed up?
-----Original Message----- From: Mark Lehmacher [mailto:[EMAIL PROTECTED] Sent: Monday, May 08, 2006 6:31 AM To: Tapestry users Subject: RE: Tapernate-Example HiveMindAutowireWorker Problem Importance: High Yup, that's what I am saying. Looks like it's wiring component parameters as well: 5705 HiveMindAutowireWorker:performEnhancement [DEBUG] Creating auto-wired accessor for property delegate on component classpath:/org/apache/tapestry/html/Shell.jwc, line 22, column 96 5856 HiveMindAutowireWorker:performEnhancement [DEBUG] Creating auto-wired accessor for property delegate on component classpath:/org/apache/tapestry/html/Shell.jwc, line 22, column 96 With the result of getting this error: Error at classpath:/org/apache/tapestry/html/Shell.jwc, line 78, column 20: Error adding property delegate to class org.apache.tapestry.html.Shell: Property delegate has already been claimed by a different enhancement worker. So my uneducated guess is that somewhere in the depths of tapestry there might be a service which implements IValidationDelegate and it's gets wired to the component parameter. Looks like the order gets somehow fucked-up, because at the point at which the autowire stuff comes in all parameter properties should have already been claimed. So it probably has to do with the configuration contribution taking place in the seperate module descriptor within my drop-in jar. > --- Ursprüngliche Nachricht --- > Von: "James Carman" <[EMAIL PROTECTED]> > An: "'Tapestry users'" <users@tapestry.apache.org> > Betreff: RE: Tapernate-Example HiveMindAutowireWorker Problem > Datum: Sun, 7 May 2006 18:25:17 -0400 > > Hmmmm. That's weird. But, thanks for the tip. I've submitted the code > as > a patch to Tapestry. So, I need to figure out how to get it working. So, > what you're saying is that if the auto-wiring stuff is inside a jar file > and > not part of your application's hivemodule.xml file, then it bombs? > > -----Original Message----- > From: Mark Lehmacher [mailto:[EMAIL PROTECTED] > Sent: Sunday, May 07, 2006 5:21 PM > To: Tapestry users > Subject: Re: Tapernate-Example HiveMindAutowireWorker Problem > Importance: High > > I had that very same problem when I tried to package the Tapernate > auto-wiring stuff in a drop-in jar. It said that one of the parameters of > the Shell component has already been claimed by a different enhancement > worker. > > When I just put the service definition and configuration contribution into > my application's "root" module descriptor everything works fine. > > > > --- Ursprüngliche Nachricht --- > > Von: Tat leung <[EMAIL PROTECTED]> > > An: Tapestry users <users@tapestry.apache.org> > > Betreff: Tapernate-Example HiveMindAutowireWorker Problem > > Datum: Sun, 07 May 2006 12:52:15 -0700 > > > > Hi All, > > > > I am using Tapernate and HiveMindAutowireWorker and > > HiveMindAutowireWorkerFactory from the Tapernate example in my > > applicaiton. The XML in my hivemind.xml file and the auto-wire classes > > are taken from the Tapernate example: > > > > <service-point id="AutowireWorkerFactory" > > interface="org.apache.hivemind.ServiceImplementationFactory" > > parameters-occurs="none"> > > <invoke-factory> > > <construct > > class="org.apache.tapestry.enhance.HiveMindAutowireWorkerFactory" /> > > </invoke-factory> > > </service-point> > > > > <service-point id="AutowireWorker" > > interface="org.apache.tapestry.enhance.EnhancementWorker"> > > <invoke-factory service-id="AutowireWorkerFactory" /> > > </service-point> > > > > <contribution > configuration-id="tapestry.enhance.EnhancementWorkers"> > > <command before="tapestry.enhance.abstract-property" > > after="tapestry.enhance.dispatch-inject" > > id="inject-autowire" object="service:AutowireWorker" /> > > </contribution> > > > > This is working as expected when there is no exception. But when the > > application throws any exception, it is causing the following exception > > in the log file. Has anyone encounter this problem? > > > > Thanks! > > Tat > > > > org.apache.hivemind.ApplicationRuntimeException: Property delegate has > > already been claimed by a different enhancement worker. > > at > > > org.apache.tapestry.enhance.EnhancementOperationImpl.claimProperty(Enhanceme > ntOperationImpl.java:241) > > at > > > org.apache.tapestry.enhance.ParameterPropertyWorker.addParameter(ParameterPr > opertyWorker.java:117) > > at > > > org.apache.tapestry.enhance.ParameterPropertyWorker.performEnhancement(Param > eterPropertyWorker.java:81) > > at > > > org.apache.tapestry.enhance.ParameterPropertyWorker.performEnhancement(Param > eterPropertyWorker.java:53) > > at > > > $EnhancementWorker_10b103b1964.performEnhancement($EnhancementWorker_10b103b > 1964.java) > > at > > > $EnhancementWorker_10b103b197c.performEnhancement($EnhancementWorker_10b103b > 197c.java) > > at > > > $EnhancementWorker_10b103b195a.performEnhancement($EnhancementWorker_10b103b > 195a.java) > > at > > > org.apache.tapestry.services.impl.ComponentConstructorFactoryImpl.getCompone > ntConstructor(ComponentConstructorFactoryImpl.java:97) > > at > > > $ComponentConstructorFactory_10b103b1947.getComponentConstructor($ComponentC > onstructorFactory_10b103b1947.java) > > at > > > org.apache.tapestry.pageload.PageLoader.instantiateComponent(PageLoader.java > :531) > > at > > > org.apache.tapestry.pageload.PageLoader.createImplicitComponent(PageLoader.j > ava:481) > > at > > > $IPageLoader_10b103b1937.createImplicitComponent($IPageLoader_10b103b1937.ja > va) > > at > > > $IPageLoader_10b103b1938.createImplicitComponent($IPageLoader_10b103b1938.ja > va) > > at > > > org.apache.tapestry.services.impl.ComponentTemplateLoaderLogic.createImplici > tComponent(ComponentTemplateLoaderLogic.java:218) > > at > > > org.apache.tapestry.services.impl.ComponentTemplateLoaderLogic.process(Compo > nentTemplateLoaderLogic.java:172) > > at > > > org.apache.tapestry.services.impl.ComponentTemplateLoaderLogic.process(Compo > nentTemplateLoaderLogic.java:111) > > at > > > org.apache.tapestry.services.impl.ComponentTemplateLoaderLogic.loadTemplate( > ComponentTemplateLoaderLogic.java:88) > > at > > > org.apache.tapestry.services.impl.ComponentTemplateLoaderImpl.loadTemplate(C > omponentTemplateLoaderImpl.java:60) > > at > > > $ComponentTemplateLoader_10b103b194b.loadTemplate($ComponentTemplateLoader_1 > 0b103b194b.java) > > at > > > org.apache.tapestry.pageload.PageLoader.loadTemplateForComponent(PageLoader. > java:648) > > at > > org.apache.tapestry.BaseComponent.readTemplate(BaseComponent.java:77) > > at > > org.apache.tapestry.BaseComponent.finishLoad(BaseComponent.java:107) > > at $Exception_7.finishLoad($Exception_7.java) > > at > > > org.apache.tapestry.pageload.PageLoader.constructComponent(PageLoader.java:4 > 39) > > at > > org.apache.tapestry.pageload.PageLoader.loadPage(PageLoader.java:613) > > at $IPageLoader_10b103b1937.loadPage($IPageLoader_10b103b1937.java) > > at $IPageLoader_10b103b1938.loadPage($IPageLoader_10b103b1938.java) > > at > > org.apache.tapestry.pageload.PageSource.getPage(PageSource.java:120) > > at $IPageSource_10b103b1897.getPage($IPageSource_10b103b1897.java) > > at > > org.apache.tapestry.engine.RequestCycle.loadPage(RequestCycle.java:268) > > at > > org.apache.tapestry.engine.RequestCycle.getPage(RequestCycle.java:251) > > at > > > org.apache.tapestry.error.ExceptionPresenterImpl.presentException(ExceptionP > resenterImpl.java:40) > > at > > > $ExceptionPresenter_10b103b18a3.presentException($ExceptionPresenter_10b103b > 18a3.java) > > at > > > org.apache.tapestry.engine.AbstractEngine.activateExceptionPage(AbstractEngi > ne.java:121) > > at > > > org.apache.tapestry.engine.AbstractEngine.service(AbstractEngine.java:280) > > at > > > org.apache.tapestry.services.impl.InvokeEngineTerminator.service(InvokeEngin > eTerminator.java:60) > > at > > > $WebRequestServicer_10b103b1907.service($WebRequestServicer_10b103b1907.java > ) > > at > > > $WebRequestServicer_10b103b1903.service($WebRequestServicer_10b103b1903.java > ) > > > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > -- > "Feel free" - 10 GB Mailbox, 100 FreeSMS/Monat ... > Jetzt GMX TopMail testen: http://www.gmx.net/de/go/topmail > > --------------------------------------------------------------------- > 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] > -- GMX Produkte empfehlen und ganz einfach Geld verdienen! Satte Provisionen für GMX Partner: http://www.gmx.net/de/go/partner --------------------------------------------------------------------- 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]