create a single metadata key that holds a map<string,object> where
string is a uuid.

-igor

On Tue, Sep 13, 2011 at 5:40 PM, Alec Swan <[email protected]> wrote:
> 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 <[email protected]> 
> 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 <[email protected]> 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 <[email protected]> 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 <[email protected]> 
>>>>> 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 <[email protected]> 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 
>>>>>>> <[email protected]> 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 <[email protected]> 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: [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]
>>>>>
>>>>
>>>>
>>>> ---------------------------------------------------------------------
>>>> 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