As I mentioned in my previous response, I couldn't use
getRequestCycle().setRequestTarget() directly because of the way the API
works (you can use a ResourceReference but not a Resource.)  Instead, I
ended up with something like this:

new AjaxButton(buttonId, form) {
        protected void onSubmit(AjaxRequestTarget target, Form form) {
                ResourceReference pdfReference = new ResourceReference("") {
                        protected Resource newResource() {
                                return new BillPdfWebResource(...);
                        }
                };
                String url = 
getRequestCycle().get().urlFor(pdfReference).toString();
                getRequestCycle().setRequestTarget(new 
RedirectRequestTarget(url) );
        }
}

It works... but only once.  When I click on the button, everything works, my
PDF gets generated and downloaded but then my app becomes unresponsive.  I
can't interact with the site at all until I "start over."  Is there a better
way to go about this that wouldn't cause that side effect?  Whatever
approach I take, I need to be able to submit a form when the PDF is
generated.  My example doesn't show it but my BillPdfWebResource class
generates a PDF based on the user's selection and my Form's Model needs to
be updated.  Any suggestions?

-Brandon


igor.vaynberg wrote:
> 
> onsubmit() {
>   getrequestcycle().setrequesttarget(new
> redirectrequesttarget(urlfor(resourceref)));
> }
> 
> -igor
> 
> 
> On Feb 13, 2008 8:18 AM, UPBrandon <[EMAIL PROTECTED]> wrote:
>>
>> In a project I am working on, I wrote a DynamicWebResource that generates
>> a
>> PDF file and, by setting the Content-Disposition in the header, got it so
>> that the user is prompted to download the PDF when they click on a
>> ResourceLink to my PDF-generating resource.
>>
>> That all works fine but now I need to open the PDF from a button.  I want
>> to
>> allow the user to select a value in a form and press a button to view
>> somewhat of a report for the item they selected.  However, there doesn't
>> appear to be any type of button that would lead a user to my
>> DynamicWebResource.  Is there any way to have a button do a submit
>> (update
>> the model) and then lead the user to a resource?
>>
>> -Brandon
>> --
>> View this message in context:
>> http://www.nabble.com/Opening-DynamicWebResource-from-Button-AjaxButton--tp15459841p15459841.html
>> Sent from the Wicket - 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/Opening-DynamicWebResource-from-Button-AjaxButton--tp15459841p15600541.html
Sent from the Wicket - User mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to