Is it an ExternalPage parameter that you are trying to access in 
pageValidate()/pageBeginRender() ?

I remember having trouble with the order of callbacks for external pages.
You might find that the you are accessing the parameter before 
activateExternalPage() has been called.

> Hi,
> Yes, I understand what you are saying here. I do not understand the 
> following. If I use instance variables to pass the storeLocation into my 
> component it works fine. storeLocation is passed through to the component 
> and getLocationOfStore() contains the location I passed in from the page. 
> If however I use an abstract property to pass the storeLocation into my 
> component, storeLocation is not passed into the component ie. 
> getStoreLocation() is null
>
> Thanks
> Brian
>
> Ron Piterman wrote:
>> :)
>>
>> Tapestry uses a pool to store page instances. While rendering it is safe 
>> to use instance variables but you have to make sure they are reset, 
>> preferrably in either pageDetached or pageAttached events.
>> If you don't reset them, information can be shared between many users of 
>> your site, but not by all, since they might get another instance from the 
>> pool.
>>
>> When using abstract properties, tapestry does the initialization work for 
>> you.
>>
>> Hope that helps,
>> Ron
>>
>>
>>
>> Brian Doherty wrote:
>>> Sorry. What I mean by does not work is that getLocationOfStore() in my 
>>> component is null after the component renders.
>>> When I use the updated code below the storeLocation is passed through to 
>>> the component and getLocationOfStore() contains the location I passed in 
>>> from the page.
>>> It does not like it when I use abstract getters and setters but I dont 
>>> understand why.
>>>
>>> Thanks
>>> Brian
>>>
>>>
>>> Ron Piterman wrote:
>>>
>>>> Brian Doherty wrote:
>>>>
>>>>>
>>>>> Hi,
>>>>>
>>>>> I am having problems binding a property on my page to a parameter in 
>>>>> my component. The following does not work
>>>>
>>>>
>>>> can you be more specific. "Does not work" is somehow general...
>>>>
>>>>>
>>>>> I have a CategoryListComponent as follows
>>>>>
>>>>> <component id="categoryListComponent" type="CategoryListComponent">
>>>>>       <binding name="locationOfStore" value="storeLocation"/>
>>>>> </component>
>>>>>
>>>>>
>>>>> On my CategoryList.java I have
>>>>>
>>>>> public abstract void setStoreLocation(Location storeLocation);
>>>>> public abstract Location getStoreLocation();
>>>>>
>>>>>
>>>>> If however I change it as follows, it works fine. The storeLocation is 
>>>>> passed into the component.
>>>>>
>>>>> <component id="categoryListComponent" type="CategoryListComponent">
>>>>>       <binding name="locationOfStore" value="locationOfStore"/>
>>>>> </component>
>>>>>
>>>>>
>>>>> On my CategoryList.java this time I have
>>>>>
>>>>> private Location locationOfStore;
>>>>>     public  void setLocationOfStore(Location locationOfStore) {
>>>>>       this.locationOfStore = locationOfStore;
>>>>>   }
>>>>>     public  Location getLocationOfStore() {
>>>>>       return locationOfStore;
>>>>>   }
>>>>>
>>>>> I dont understand why the Location wont be passed through if it 
>>>>> declared as abstract. Any help would be great
>>>>>
>>>>> Regards
>>>>> Brian
>>>>>
>>>>> ---------------------------------------------------------------------
>>>>> 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