No, I need to do this in a service... but even in a page, i have the page class in a String at runtime, so I can't declare a property and use the InjectPage like that....
Regards. Robert Zeigler wrote: > > Is this in a component or page class? If so, the answer is: > > @InjectPage > private MyPage page; > ... > > page.setSomething(""); > > Robert > > On Jun 2, 2008, at 6/25:04 PM , raulmt wrote: > >> >> Hi, >> >> I'm trying to obtain a page from it's name to set a property on it. >> I'm >> trying something like this: >> >> Component page = componentSource.getPage("MyPage"); >> MyPage myPage = (MyPage)page; >> myPage.setSomething(""); >> >> This code fails in the cast, despite a >> >> System.out.println(page.getClass().getName()); >> >> prints the expected page class (com.myapp.pages.MyPage).... I assume >> is >> because all the instrumentation T5 does to the pages, but is there a >> way to >> obtain a page from its name and then set a property that the >> "original" >> class has?? >> >> The only workaround i've found is to call the method setSomething with >> reflection, without casting it to MyPage, but it would be really >> nice not to >> use reflection for this.... >> >> Regards. >> >> >> Filip S. Adamsen-2 wrote: >>> >>> Hi, >>> >>> RequestPageCache is an internal service, it's better to use >>> ComponentSource instead. It has methods to get a component or page by >>> logical name. >>> >>> http://tapestry.apache.org/tapestry5/apidocs/org/apache/tapestry/services/ComponentSource.html >>> >>> -Filip >>> >>> On 2008-05-05 16:01, Kristian Marinkovic wrote: >>>> @Inject >>>> private RequestPageCache pageCache; >>>> >>>> pageCache.get(logicalName) >>>> >>>> >>>> g, >>>> kris >>>> >>>> >>>> >>>> >>>> >>>> >>>> >>>> Shing Hing Man <[EMAIL PROTECTED]> >>>> 05.05.2008 15:53 >>>> Bitte antworten an >>>> "Tapestry users" <users@tapestry.apache.org> >>>> >>>> >>>> An >>>> tapestry Tapestry <[EMAIL PROTECTED]> >>>> Kopie >>>> >>>> Thema >>>> Tap 5.0.11 : How to get page instance from page >>>> >>>> >>>> >>>> >>>> >>>> >>>> >>>> Usually, I could use the following to inject a page >>>> into another page >>>> >>>> @InjectPage >>>> private DetailsPage details; >>>> >>>> How to retrieve an instance of a page if I am given >>>> the logical name of a page as a String variable ? >>>> >>>> In Tap 4, I would use RequestCycle.getPage(pageName). >>>> >>>> Thanks in advance for any asistance! >>>> >>>> Shing >>>> >>>> Home page : http://www.lombok.demon.co.uk/ >>>> >>>> >>>> >>>> ___________________________________________________________ >>>> Yahoo! For Good. Give and get cool things for free, reduce waste >>>> and help >>>> our planet. Plus find hidden Yahoo! treasure >>>> >>>> http://green.yahoo.com/uk/earth-day/ >>>> >>>> --------------------------------------------------------------------- >>>> 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/Tap-5.0.11-%3A-How-to-get-page-instance--from-page-tp17062196p17611843.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/Tap-5.0.11-%3A-How-to-get-page-instance--from-page-tp17062196p17612066.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]