[ 
https://issues.apache.org/struts/browse/SHALE-409?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Gary VanMatre resolved SHALE-409.
---------------------------------

    Resolution: Fixed

Fix in the 20070728 nightly build.

> Shale 1.0.4+ incorrectly removes all entries in the request map after render 
> response
> -------------------------------------------------------------------------------------
>
>                 Key: SHALE-409
>                 URL: https://issues.apache.org/struts/browse/SHALE-409
>             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-SNAPSHOT, 1.1.0-SNAPSHOT
>
>
> 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 Shale.
> The second loop:
>         entries = map.entrySet().iterator();
>         while (entries.hasNext()) {
>             Map.Entry entry = (Map.Entry) entries.next();
>             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.

Reply via email to