Great idea, thanks.

As I was working on passing template information as a part of the link
URL I started thinking that it would be nice if I could store this
information in session metadata and pass the metadata key as a part of
the link URL. However, I am not sure if I can pass metadata key in the
URL somehow.

Thoughts?

Thanks,

Alec

On Tue, Sep 13, 2011 at 10:44 AM, Igor Vaynberg <igor.vaynb...@gmail.com> wrote:
> add a single link to your page. expose its url as a variable to the
> templating engine and append some sort of id to the url to
> differentiate which template should be used. since you have to put the
> link into markup put it inside an invisible div.
>
> -igor
>
> On Tue, Sep 13, 2011 at 8:37 AM, Alec Swan <alecs...@gmail.com> wrote:
>> I don't think this will work because the template could be a method
>> invocation, e.g.
>>
>> <a wicket:id="${var.getLinkToStudentReportWithColumns('First Name',
>> 'Last Name')}">Download</a>
>>
>> Template-evaluation approach works great for generating HTML reports,
>> i.e. the template evaluates to a string that contains raw HTML
>> "<table>..</table>" and can be included on any page. So, here is what
>> a page containing HTML report looks like:
>>
>> <div wicket:id="editableLabel">
>>  ${var.studentReportWithColumnsHTML('First Name', 'Last Name')}
>> </div>
>>
>> My code runs templating engine on the content of the editableLabel
>> before rendering it.
>>
>> However, the new requirement is to expose the same reports for
>> download as CSV files and I would like to continue using the
>> templating mechanism and be able to support something like:
>>
>> <div wicket:id="editableLabel">
>>  <a wicket:id="${var.getLinkToStudentReportWithColumns('First Name',
>> 'Last Name')}">Download</a>
>> </div>
>>
>> Thoughts?
>>
>> Thanks,
>>
>> Alec
>>
>> On Tue, Sep 13, 2011 at 1:00 AM, Sven Meier <s...@meiers.net> wrote:
>>> Why don't you just use a component for this, e.g. DownloadLink?
>>>
>>> <a wicket:id="${var.wellKnownWicketId}">Download</a>
>>>
>>> No stable url involved.
>>>
>>> Sven
>>>
>>> On 09/13/2011 04:45 AM, Alec Swan wrote:
>>>> Our templating engine is the one that needs to generate the link by
>>>> evaluating a template similar to "<a
>>>> href='${var.reportLink}'>Download</a>". The engine does not have
>>>> access to any Wicket components but can access Thread local
>>>> properties, such as RequestCycle.get(). I guess we could add a
>>>> behavior to RequestCycle.get().getResponsePage().
>>>>
>>>> Is this what you are suggesting or there is a more elegant way to
>>>> implement this in Wicket?
>>>>
>>>> Thanks,
>>>>
>>>> Alec
>>>>
>>>> On Mon, Sep 12, 2011 at 5:27 PM, Igor Vaynberg <igor.vaynb...@gmail.com> 
>>>> wrote:
>>>>> the problem is when you say "build a url to an instance of this
>>>>> request target" wicket doesnt hold on to the instance, nor does it
>>>>> have any way to recreate it.
>>>>>
>>>>> what you can do is add a behavior to the page and construct a url to
>>>>> that behavior.
>>>>>
>>>>> -igor
>>>>>
>>>>>
>>>>> On Mon, Sep 12, 2011 at 4:16 PM, Alec Swan <alecs...@gmail.com> wrote:
>>>>>> I don't really need a stable URL. In fact, I would prefer if the link
>>>>>> URL was session or page-specific so that it cannot be accessed by
>>>>>> anybody unless they first accessed the page that contains the link.
>>>>>>
>>>>>> I would like to do something along the lines of the code in my
>>>>>> original post. In other words, I would like to create a new
>>>>>> RequestTarget and get its URL and display that URL to the user.
>>>>>>
>>>>>> Thanks,
>>>>>>
>>>>>> Alec
>>>>>>
>>>>>>
>>>>>> On Mon, Sep 12, 2011 at 4:14 PM, Igor Vaynberg <igor.vaynb...@gmail.com> 
>>>>>> wrote:
>>>>>>> create a resource and register it in shared resources, this will allow
>>>>>>> you to create a stable url. the filename and reportdata you will have
>>>>>>> to pass on the url.
>>>>>>>
>>>>>>> -igor
>>>>>>>
>>>>>>> On Mon, Sep 12, 2011 at 2:25 PM, Alec Swan <alecs...@gmail.com> wrote:
>>>>>>>> Hello,
>>>>>>>>
>>>>>>>> We use a templating engine which generates parts of our pages.
>>>>>>>> Templates can be included on any page. We need the engine to be able
>>>>>>>> to generate a link which will display a report when clicked. I tried
>>>>>>>> using the following code, but it returns null from
>>>>>>>> RequestTarget.urlFor(..):
>>>>>>>>
>>>>>>>> public String getReportLink() {
>>>>>>>>        return "" + RequestCycle.get().urlFor(new
>>>>>>>> DownloadCsvRequestTarget(fileName, reportData));
>>>>>>>> }
>>>>>>>>
>>>>>>>> Where DownloadCsvRequestTarget implements respond() method to write
>>>>>>>> reportData our in CSV format.
>>>>>>>>
>>>>>>>> Thanks,
>>>>>>>>
>>>>>>>> Alec
>>>>>>>>
>>>>>>>> ---------------------------------------------------------------------
>>>>>>>> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
>>>>>>>> For additional commands, e-mail: users-h...@wicket.apache.org
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>> ---------------------------------------------------------------------
>>>>>>> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
>>>>>>> For additional commands, e-mail: users-h...@wicket.apache.org
>>>>>>>
>>>>>>>
>>>>>>
>>>>>> ---------------------------------------------------------------------
>>>>>> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
>>>>>> For additional commands, e-mail: users-h...@wicket.apache.org
>>>>>>
>>>>>>
>>>>>
>>>>> ---------------------------------------------------------------------
>>>>> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
>>>>> For additional commands, e-mail: users-h...@wicket.apache.org
>>>>>
>>>>>
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
>>>> For additional commands, e-mail: users-h...@wicket.apache.org
>>>>
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
>>> For additional commands, e-mail: users-h...@wicket.apache.org
>>>
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
>> For additional commands, e-mail: users-h...@wicket.apache.org
>>
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
> For additional commands, e-mail: users-h...@wicket.apache.org
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org

Reply via email to