shale-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Shridhar N S (JIRA)" <>
Subject [jira] Commented: (SHALE-409) Shale 1.0.4+ incorrectly removes all entries in the request map after render response
Date Mon, 09 Feb 2009 18:02:03 GMT


Shridhar N S commented on SHALE-409:


I tried to make all the changes suggested above. I could get a4j working (all the resources
get built etc). But whenever, I have any a4j tag that interacts with the bean (like a4j: commandButton,
a4j:support etc) I have to surround them with a4j:region. After this change, instead of refreshing
only the region (s) mentioned in reRender options, it refreshes the whole page. Any help is
much appreciated.


> Shale 1.0.4+ incorrectly removes all entries in the request map after render response
> -------------------------------------------------------------------------------------
>                 Key: SHALE-409
>                 URL:
>             Project: Shale
>          Issue Type: Bug
>          Components: View
>    Affects Versions: 1.0.1, 1.0.4, 1.0.5-SNAPSHOT, 1.1.0-SNAPSHOT
>         Environment: WinXP, AJAX4JSF-1.0.6+, Shale-1.0.4 (Application, Core, Dialog,
Spring, Tiger, View)
>            Reporter: Todd Bush
>            Assignee: Gary VanMatre
>             Fix For: 1.0.5
> I found this issue while debugging why Shale-1.0.4 caused AJAX4JSF to stop working. 
Within the ViewPhaseListener.afterRenderResponse method, all ViewControllers and AbstractRequestBeans
are removed from the request map.  Then a second loop through the request map removes all
other entries in an attempt to remove any annotated managed beans.  AJAX4JSF relies on entries
in the request map while parsing the outgoing HTML, entries which are removed by this phase
listener.  Once I comment out the second request map loop, AJAX4JSF works.  Any other technology
which relies on request map entries after render response will have a similar problem with
> The second loop:
>         entries = map.entrySet().iterator();
>         while (entries.hasNext()) {
>             Map.Entry entry = (Map.Entry);
>             if (!list.contains(entry.getKey())) {
>                 list.add(entry.getKey());
>             }
>         }
> PS.  Please ignore my comment below.

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message