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