But how do you make inject works? Do you have a template with every component? I don't care if a i must inject every component, but i don't wanna create a usefull template with every component too... How do you do that? Because if a try to inject a component that doesn't exist on template that doesn't work to me...
Daniel Jue wrote: > > Seems like it's back to the static structure, dynamic content (the > mantra of Tapestry). So yes, one way people are using is to have all > the possible components injected in the parent (page/component) and > then the desired component is chosen later using logic you code. > I have one page that returns up to 15 components. About 10 of those > components can return possibly one of 3 or 4 related components. > I haven't explored other ways of doing it. > > > This kind of constraint does do one thing for you: it forces you to > think about whether components can be refactored more than they are, > so that content changes can have the dramatic differences you want. > > On Jan 18, 2008 3:12 PM, John Owen Atala <[EMAIL PROTECTED]> wrote: >> >> Thanks, that should be usefull, but doesn't help on the issue that to get >> an >> instance of a component it must be injected somewhere, and that >> somewhere's >> template must have every component that eventually you will use (because >> I >> can't inject a component in a class whose template doesn't have it), so >> it >> will always load every posible component... >> >> And this is one main problem: i wanna use an injected component that it's >> not on any template on a explicit way. Is there any way to get an >> instance >> of a component that is not present on any template? >> >> By the way, there says: >> "The component may have been injected via the Component annotation, or >> may >> have been passed to the as a parameter". >> I don't know how to pass a Component as a parameter in a phase render >> method, I tried: >> >> Object beginRender(MyComponent myComponent) { ... } >> >> but myComponent variable is always null there... >> >> What do you think? >> >> Regards, >> >> John >> >> >> >> Michael Courcy wrote: >> > >> > Taken from >> > http://tapestry.apache.org/tapestry5/tapestry-core/guide/rendering.html >> > >> > >> > Rendering Components >> > >> > Instead of returning true or false, a render phase method may return a >> > component. The component may have been injected via the Component >> > >> <http://tapestry.apache.org/tapestry5/tapestry-core/guide/.../apidocs/org/apache/tapestry/annotations/Component.html> >> > annotation, or may have been passed to the as a parameter. >> > >> > In any case, returning a component will queue that component to be >> > rendered *before* the active component continues rendering. >> > >> > The component to render may even be from a completely different page of >> > the application. >> > >> > Recursive rendering of components is not allowed. >> > >> > This technique allows the rendering of Tapestry pages to be /highly/ >> > dynamic. >> > >> > Returning a component instance does *not* short circuit method >> > invocation, the way returning a boolean would. It is possible that >> > multiple methods may return components (this is not advised -- insanity >> > may ensue). >> > >> > >> > >> > johnowenatala a écrit : >> >> Hi, i have a place in a page where i wanna put a component, but which >> >> component is desided in runtime (can be from configuration or from >> >> request >> >> parameters). >> >> I tried to do this by putting a delegate component, but i couldn't >> inject >> >> in >> >> runtime an unknowed component in compilation time. >> >> What do you think i can do? Is this possible? >> >> >> > >> > >> > -- >> > Michael Courcy >> > http://courcy.blogspot.com >> > >> > >> > --------------------------------------------------------------------- >> > To unsubscribe, e-mail: [EMAIL PROTECTED] >> > For additional commands, e-mail: [EMAIL PROTECTED] >> > >> > >> > >> >> -- >> View this message in context: >> http://www.nabble.com/-T5--Choosing-components-at-runtime-tp14933806p14957788.html >> Sent from the Tapestry - User mailing list archive at Nabble.com. >> >> >> >> --------------------------------------------------------------------- >> 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] > > > -- View this message in context: http://www.nabble.com/-T5--Choosing-components-at-runtime-tp14933806p14966693.html Sent from the Tapestry - User mailing list archive at Nabble.com. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]