Are you sure that's what was happening - how is it IE-related?

If the zone to update is *inside* the page or component that has a
setupRender(), then setupRender() *will not be called* during handling of
an Ajax event request (see
http://jumpstart.doublenegative.com.au/jumpstart/examples/ajax/whatiscalledandwhen
).

So I'd guess that either you have a component inside a zone declared in the
parent page or component, or the request is not Ajax.


On 22 August 2013 01:18, Jonathan Martin <jmar...@aer.com> wrote:

> I figured out what was happening. I was using the 'setupRender' method to
> set the default value for the enumeration, like this:
>     void setupRender() {
>         _selectedBlockEnum = StoreFrontBlocks.HOME;
>     }
>
> I didn't realize until now that this method is called after an 'onAction'
> method, effectively overwriting the value set in the 'onAction' method.
> Therefore I changed 'setupRender' to this:
>     void setupRender() {
>         if (_selectedBlockEnum == null) {
>             _selectedBlockEnum = StoreFrontBlocks.HOME;
>         }
>     }
>
> -Jonathan Martin
>
>
> On 8/19/2013 4:15 PM, Thiago H de Paula Figueiredo wrote:
>
>> On Mon, 19 Aug 2013 16:15:47 -0300, Jonathan Martin <jmar...@aer.com>
>> wrote:
>>
>>  Tapestry version 5.3.6
>>>
>>
>> Hmm, it should have an up-to-date version. Have you checked the browser
>> error console for JavaScript errors?
>>
>>
>>> On 8/19/2013 2:22 PM, Thiago H de Paula Figueiredo wrote:
>>>
>>>> Hi!
>>>>
>>>> Whch Tapestry version? Old ones use an old version of Prototype that
>>>> didn't support IE9 and IE10 yet. Your code and template look ok.
>>>>
>>>>
>>>> On Mon, 19 Aug 2013 12:07:25 -0300, Jonathan Martin <jmar...@aer.com>
>>>> wrote:
>>>>
>>>>  Greetings,
>>>>>
>>>>> I'm having issues with the zone refresh from an AJAX request in
>>>>> Internet Explorer 9 and 10 (it works fine in IE8, firefox, and chrome). I
>>>>> will click on the link and the new content will appear in the zone for
>>>>> about a half-second, then revert back to the original content.
>>>>> Request.isXHR() is returning false, indicating that a non-AJAX request is
>>>>> occurring, which should not be the case. Is there a way to fix what I have
>>>>> or do these versions of Internet Explorer require a different approach to
>>>>> updating a zone and/or AJAX requests? I've included the relevant tml and
>>>>> java code below. Thanks in advance.
>>>>>
>>>>> -Jonathan Martin
>>>>>
>>>>> *** tml file ***
>>>>>   <div>
>>>>>    <a t:type="actionlink" t:id="showAbout" zone="storefrontZone">
>>>>>      About
>>>>>    </a>
>>>>> </div>
>>>>>
>>>>> <div>
>>>>>    <a t:type="actionlink" t:id="showTechPapers" zone="storefrontZone">
>>>>>      Papers and Presentations
>>>>>    </a>
>>>>> </div>
>>>>>
>>>>> <t:zone t:id="storefrontZone" t:update="show">
>>>>>    <t:delegate to="selectedBlock" />
>>>>>    <t:block t:id="aboutBlock">
>>>>>      <span t:id="about" />
>>>>>    </t:block>
>>>>>    <t:block t:id="techPapersBlock">
>>>>>      <span t:id="techPapers" />
>>>>>    </t:block>
>>>>> </t:zone>
>>>>> *** end of tml ***
>>>>>
>>>>> *** java file ***
>>>>> @Inject
>>>>> private Block _aboutBlock;
>>>>>
>>>>> @Inject
>>>>> private Block _techPapersBlock;
>>>>>
>>>>> @Persist
>>>>> private StoreFrontBlocks _selectedBlockEnum;
>>>>>
>>>>> void setupRender(){
>>>>>      _selectedBlockEnum = StoreFrontBlocks.ABOUT;
>>>>> }
>>>>>
>>>>> public Object getSelectedBlock() {
>>>>>      Object result = null;
>>>>>      switch (_selectedBlockEnum) {
>>>>>      case ABOUT:
>>>>>          result = _aboutBlock;
>>>>>          break;
>>>>>      case TECH_PAPERS:
>>>>>          result = _techPapersBlock;
>>>>>          break;
>>>>>      default:
>>>>>          break;
>>>>>      }
>>>>>      return result;
>>>>> }
>>>>>
>>>>> Object onActionFromShowAbout() {
>>>>>      _selectedBlockEnum = StoreFrontBlocks.ABOUT;
>>>>>      return _request.isXHR() ? _storefrontZone.getBody() : null;
>>>>> }
>>>>>
>>>>> Object onActionFromShowTechPapers() {
>>>>>      _selectedBlockEnum = StoreFrontBlocks.TECH_PAPERS;
>>>>>      return _request.isXHR() ? _storefrontZone.getBody() : null;
>>>>> }
>>>>>
>>>>> private enum StoreFrontBlocks {
>>>>>      TECH_PAPERS, ABOUT
>>>>> }
>>>>> *** end of java ***
>>>>>
>>>>> ------------------------------**------------------------------**
>>>>> ---------
>>>>> To unsubscribe, e-mail: 
>>>>> users-unsubscribe@tapestry.**apache.org<users-unsubscr...@tapestry.apache.org>
>>>>> For additional commands, e-mail: users-h...@tapestry.apache.org
>>>>>
>>>>>
>>>>
>>>>
>>>
>>> ------------------------------**------------------------------**
>>> ---------
>>> To unsubscribe, e-mail: 
>>> users-unsubscribe@tapestry.**apache.org<users-unsubscr...@tapestry.apache.org>
>>> For additional commands, e-mail: users-h...@tapestry.apache.org
>>>
>>>
>>
>>
>
> ------------------------------**------------------------------**---------
> To unsubscribe, e-mail: 
> users-unsubscribe@tapestry.**apache.org<users-unsubscr...@tapestry.apache.org>
> For additional commands, e-mail: users-h...@tapestry.apache.org
>
>

Reply via email to