thats not _quite_ what i want though, as its not truly dynamic - thats including a pre-defined component into the page, not generating a completely dynamic one... if i have understood your suggestion, i would need to define every component i ever might need in the jwc or using annotations...
whatever the case, this isnt the real major problem - as annoying as it may be. its the 2nd point that causes most grief... accessing loooped components in the rewind phase. that gives me _the fear_ On 1/26/06, Ron Piterman <[EMAIL PROTECTED]> wrote: > > you don't need to, you add the PageLink to your component using the .jwc > or annotation, and then call > > getComponents().getComponent("myPageLink").render(writer,cycle); > > Cheers, > Ron > > > > gaz jones wrote: > > you CANT add a PageLink component to your page using java in a component > > inheriting from AbstractComponent. that is the problem (or one of > them)... > > its the 2nd issue that is the real stinker though... > > > > On 1/26/06, Ron Piterman <[EMAIL PROTECTED]> wrote: > > > >>Maybe I am too long in Tapestry develpement, but I really can't see the > >>problem here. > >> > >>If you want to link to a page, you add a PageLink component to your > >>page, done. > >> > >>If you want the page name the link references to be dynamic, you make > >>the page parameter binding of the PageLink component read its value from > >>a property in your page's / component's class using ognl. done. > >> > >>So what is really the probelm? > >> > >>Cheers, > >>Ron > >> > >> > >>gaz jones wrote: > >> > >>>hi, > >>> > >>>i have already posted a question about this regarding dynamic insertion > >> > >>of > >> > >>>content into the page, but i thought i would bring it up again because > i > >>>think not being able to do so violates the DRY principle (O_o). > >>>for example, if i have a component inheriting from AbstractComponent > and > >> > >>i > >> > >>>want to put a page link in the page, i have to (if i understand it > >>>correctly): > >>> > >>>add a reference to the engine service in the component: > >>> > >>>@InjectObject("engine-service:page") > >>>public abstract IEngineService getPageService(); > >>> > >>>then in renderComponent... > >>> > >>>writer.begin("a"); > >>>ILink link = getPageService().getLink(true, "MyGreatPage"); > >>>writer.attribute("href", link.getURL()); > >>>writer.print("Go to my great page"); > >>>writer.end("a"); > >>> > >>>when what i SHOULD be able to do, if tapestry were truly a component > >> > >>based > >> > >>>framework is: > >>> > >>>in renderComponent... > >>> > >>>PageLink pageLink = new PageLink(); > >>>pageLink.page = "MyGreatPage"; > >>>getPage.addComonent(pageLink); // or something similar > >>> > >>>otherwise i am repeating the effort of the original PageLink author am > i > >>>not? there may be a better way to do this that i dont know about though > >>>obviously... > >>> > >>>not creating a proper hierarchy of components is also causing other > >>>problems, such as processing components when in loops. you cant get at > >>>specific instances of components in the rewind cycle because they all > >> > >>share > >> > >>>the same pooled component - is that correct? > >>> > >>>do the authors of the framework have any comments on these points above > >> > >>or > >> > >>>any indication if this will change in the future? you can do both of > >> > >>these > >> > >>>things in other component based web frameworks, and i would see it as a > >>>benefit if you could also do so in tapestry. does anyone else agree? > >>> > >>>cheers > >>>gaz > >>> > >> > >> > >>--------------------------------------------------------------------- > >>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] > >