Yes, this works ok !
> why do you need to fire a custom event?
I've four main panels in my app, in order to communicate each other withour
listeners
>Can't you just use AJAX event triggered by ART?
ART ?
Maybe ApplicationRuntime
Ok, that's what I want to use, the AJAX event, but I want to have shared data
in the request within the components
Thanks !!!
> /******** EXAMPLE OF DATA ************/
> public class MyEventData {
>
> static MetaDataKey<MyEventData> METAKEY_MYEVENTDATA = new
> MetaDataKey<MyEventData>(){};
>
> String s = "";
>
> public MyEventData(){}
>
> public MyEventData(String s) {
> this.s = s;
> }
>
>
>
>
> public void setIntoRequest(RequestCycle rc){
> rc.setMetaData(METAKEY_MYEVENTDATA,this);
> }
>
> public static MyEventData getFromRequest(RequestCycle rc){
> return rc.getMetaData(METAKEY_MYEVENTDATA);
> }
>
> }
> > > Oscar Besga Arcauz < < <
-----Bas Gooren <[email protected]> escribió: -----
Para: [email protected]
De: Bas Gooren <[email protected]>
Fecha: 13/02/2013 15:35
Asunto: Re: Request scoped variables, in ajaxrequesttarget
Well, it's a lot simpler than that.
Simply call rc.setMetaData( METAKEY_MYEVENTDATA, this );
Wicket handles the actual storage details (like storing your data in a
MetaDataEntry array etc).
Nothing you need to think about :-)
Met vriendelijke groet,
Kind regards,
Bas Gooren
Op 13-2-2013 15:31, schreef Oscar Besga Arcauz:
> Ok, it's a little complicated to create the metadata
>
> If I'm rigth, the process is - for example when click on an AjaxLink into the
> page
>
> 1- Execute the method onClick of the AjaxLink
> 2- Send an event to all the components of the page (the page itself included,
> on first place, but not other pages ?),
> - The source of the event is the page itself
> - The type of broadcast is BREADTH
> - The payload is the AjaxRequestTarget (from the onclick method call)
>
> /******** EXAMPLE OF DATA ************/
> public class MyEventData {
>
> static MetaDataKey<MyEventData> METAKEY_MYEVENTDATA = new
> MetaDataKey<MyEventData>(){};
>
> String s = "";
>
> public MyEventData(){}
>
> public MyEventData(String s) {
> this.s = s;
> }
>
>
>
> public MetaDataKey<MyEventData> getWicketMetadataData(){
> // A little complicated
> MetaDataKey<MyEventData> key = new MetaDataKey<MyEventData>(){};
> MetaDataEntry<MyEventData> metaDataEntry = new
> MetaDataEntry<MyEventData>(key,this);
> MetaDataEntry<MyEventData>[] arrayMetaDataEntry = new
> MetaDataEntry[]{metaDataEntry};
> key.set(arrayMetaDataEntry,this);
> return key;
> }
>
> public void setIntoRequest(RequestCycle rc){
> rc.setMetaData(getWicketMetadataData(),this);
> }
>
> public static MyEventData getFromRequest(RequestCycle rc){
> return rc.getMetaData(METAKEY_MYEVENTDATA);
> }
>
> }
>
>
> > > > Oscar Besga Arcauz < < <
>
> -----Ernesto Reinaldo Barreiro <[email protected]> escribió: -----
> Para: [email protected]
> De: Ernesto Reinaldo Barreiro <[email protected]>
> Fecha: 13/02/2013 13:00
> Asunto: Re: Request scoped variables, in ajaxrequesttarget
>
> Hi Oscar,
>
> On Wed, Feb 13, 2013 at 12:54 PM, Oscar Besga Arcauz <[email protected]>wrote:
>
>> Hi wickers !
>>
>> I was wondering If there's any method to have request-scoped variables (
>> as HttpServletRequest.get/setAttributes )
>> Specially with AjaxRequestTarget, in AJAX calls.
>>
>>
> Maybe RequestCycle#setMetaData might be useful for that.
>
>
> Regards - Ernesto Reinaldo Barreiro
> Antilia Soft
> http://antiliasoft.com/ <http://antiliasoft.com/antilia>
>
> ---------------------------------------------------------------------
> 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]