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

Michael Freedman resolved PORTLETBRIDGE-165.
--------------------------------------------

    Fix Version/s: 1.0.1
                   2.0.0
       Resolution: Fixed

Fixed in the logical way as the bug indicates.

> Birdge explicit scope removal doesn't cause its attributes to be notified but 
> should 
> -------------------------------------------------------------------------------------
>
>                 Key: PORTLETBRIDGE-165
>                 URL: https://issues.apache.org/jira/browse/PORTLETBRIDGE-165
>             Project: MyFaces Portlet Bridge
>          Issue Type: Bug
>    Affects Versions: 1.0.0, 2.0.0-beta
>            Reporter: Michael Freedman
>            Assignee: Michael Freedman
>             Fix For: 1.0.1, 2.0.0
>
>
> When the bridge explicitly removes a scope atrtibutes in that scope should be 
> notified they are being destroyed.  The LRUMap used by the bridge to manage 
> the scopes correctly does this notify if/when its remove method is called.  
> Unfortunately, the bridge removes the scope/map by calling iterator.remove () 
> once it locate an entry in the iterator that matches the scope to be removed. 
>  Unfortunately, though iterator.remove() does remove the entry from the base 
> Map, it does so after casting the base Map object into a superclass.  I.e. 
> remove() is called but because its on an object that is cast to a superclass, 
> our method isn't called/triggered.  Instead we must explictly use 
> map.remove().  This means the bridge code must copy the scopes to be removed 
> when in the iteration and then iterate over this list afterwards to directly 
> remove them.

-- 
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