By returning "this" you're doing a page refresh, which is an HTTP 302 redirect, 
instead of an AJAX response.

The redirect causes the browser to issue a second request - a fresh page 
request - which will be freshly rendered by your stateless page class without 
any knowledge of the value you set in the previous request. You can see the 302 
response and the second request with the browser's web inspector or firebug.

Here's a working example:

        http://jumpstart.doublenegative.com.au/jumpstart7/examples/ajax/select1

Cheers,

Geoff

On 12 Jul 2014, at 11:55 pm, Muhammad Gelbana <m.gelb...@gmail.com> wrote:

> I hope I selected a valid subject !
> 
> When I handle a VALUE_CHANGED event for a Select component. I receive the
> current value for the Select component as an event handler method parameter.
> 
> I use this parameter to set a member variable in the page's class.
> 
> @OnEvent(component = "parameterType", value = EventConstants.VALUE_CHANGED)
>> private Object pairParameterTypeChanged(ChariotTestTypePairParameterType
>> selectedType) {
>> this.parameterType = selectedType;
>> System.out.println("Type1: " + this.parameterType);
>> return this;
>> }
> 
> 
> In another part of the page, I use a Delegate to conditionally display a
> block.
> 
> public Block getPairParameterInputBlock() {
>> System.out.println("Type2: " + this.parameterType);
>> if (this.parameterType == null) {
>> return null;
>> }
>> switch (this.parameterType) {
>> case TEXT:
>> return this.textPairParameterInput;
>> case NUMERIC:
>> return this.numericPairParameterInput;
>> default:
>> return null;
>> }
>> }
> 
> 
> What I'm facing there is that *this.parameterType* is always null and never
> sees the value set to it in the Select component's event handler method !
> 
> I understand there could be other ways to achieve the same behavior but why
> isn't this behaving as I expect ?
> 
> *---------------------*
> *Muhammad Gelbana*
> http://www.linkedin.com/in/mgelbana


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

Reply via email to