You are viewing a plain text version of this content. The canonical link for it is here.
Posted to pluto-dev@portals.apache.org by "Christian Raschka (JIRA)" <ji...@apache.org> on 2007/11/23 10:57:43 UTC
[jira] Updated: (PLUTO-444) Filter chain is not implemented the
right way
[ https://issues.apache.org/jira/browse/PLUTO-444?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Christian Raschka updated PLUTO-444:
------------------------------------
Attachment: filter.231107.patch
This patch implements this functionality and works as follows:
The FilterManager.processFilter() method returns a boolean, if the normal lifecycle should process or not.
It gets its information from a boolean field in the FilterChainImpl which is set to "normal", if there are no filters or the index of filter is size+1. This means, that the doFilter() method is invoked, but no filter exists anymore. -> Invoke normal lifecycle.
> Filter chain is not implemented the right way
> ---------------------------------------------
>
> Key: PLUTO-444
> URL: https://issues.apache.org/jira/browse/PLUTO-444
> Project: Pluto
> Issue Type: Sub-task
> Components: portal driver
> Affects Versions: 1.1-286-COMPATIBILITY, 1.1-286-trunk-merge
> Reporter: Christian Raschka
> Priority: Critical
> Fix For: 1.1-286-COMPATIBILITY, 1.1-286-trunk-merge
>
> Attachments: filter.231107.patch
>
>
> In my opinion portlet filter should work the same way like servlet filters do:
> An example: If you have a filter chain with filters F1 and F2, then the chain is: F1 -> F2 -> target -> F2 -> F1.
> An exception is, if a Filter does not call filterChain.doFilter. Then no other filter _or_ the target is invoked and the filter itself is responsible for the response.
> (e.g. see http://java.sun.com/products/servlet/Filters.html)
> In the current implementation the target is invoked, no matter if a filter blocks the chain or not.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.