Does TestPage.page exist?

I've accidentally used the InjectPage annotation with the Java class name instead of the .page name. But I'm pretty sure you get an exception, can't remember off hand.

I'm using InjectPage with no problems in my app, so I'm just throwing out guesses :P.


----- Original Message ----- From: "Jesse Kuhnert" <[EMAIL PROTECTED]>
To: "Tapestry users" <[email protected]>
Sent: Monday, January 30, 2006 3:40 PM
Subject: Re: Rendering form submit response with the same page.


Hmm,....Are you referencing the same exact page in both instance, ie is it
logically the same page and you're just hoping for a seperate instance?

I've not had an opportunity to do anything fancy like page injection yet to
be honest. Only been using IRequestCycle.getPage(String name), but the
injection method sounds like a much better option.

On 1/30/06, Aj Gregory <[EMAIL PROTECTED]> wrote:

Yep, listener is getting called and watching in debugger shows that
getTestPage() == "this" instead of getting a new page.

-Aj

Mat Gessel wrote:
> Your code looks like a typical, valid use case. It would seem that
> doSubmit() is returning null, causing the originating page to be
> redisplayed.
>
> a) verify that your listener is being called
> b) verify that getTestPage() is not returning null
>
> -= Mat
>
> On 1/30/06, Aj Gregory <[EMAIL PROTECTED]> wrote:
>
>> Thanks for the suggestion!  I gave it a shot but the result was the
same.
>>
>> -Aj
>>
>> Jesse Kuhnert wrote:
>>
>>> What about using IRequestCycle to set the page instead? Ie
>>>
>>> public void doSubmit(IRequestCycle cycle) {
>>>   cycle.activate(getTestPage());  ?
>>> }
>>>
>>> On 1/30/06, Aj Gregory <[EMAIL PROTECTED]> wrote:
>>>
>>>
>>>> I have a page which I want to use to display a form and some results
>>>> after the form is submitted.
>>>>
>>>> After the form listener does some work I want to set a value on the
page
>>>> and show the same page again.  To do this I created a listener on the
>>>> page class and inject a page of the same type as the current page and
>>>> set the property that I want:
>>>>
>>>> @InjectPage("TestPage")
>>>> public abstract TestPage getTestPage();
>>>>
>>>> public abstract Object getObject();
>>>> public abstract void setObject(Object o);
>>>>
>>>> public IPage doSubmit() {
>>>>     TestPage tp = getTestPage();
>>>>     tp.setObject(...);
>>>>     return tp;
>>>> }
>>>>
>>>> This doesn't work.  From what I can tell tapestry doesn't create a
new
>>>> instance of the page and instead gets the same instance that it used
to
>>>> handle the form submit with all of the values reset.  I tried just
>>>> calling setObject() on the current instance and returning "this" but
>>>> that doesn't work either.
>>>>
>>>> Any suggestions?  I'm doing this within a portlet in case that
matters.
>>>>
>>>> Thanks
>>>> -Aj
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> ---------------------------------------------------------------------
>>>> 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]
>
>

---------------------------------------------------------------------
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]

Reply via email to