WEB开发网
开发学院软件开发Java JSR 286 Portlet 的新特性,第 3 部分: Portlet 过... 阅读

JSR 286 Portlet 的新特性,第 3 部分: Portlet 过滤器和 Portlet 窗口

 2010-03-30 00:00:00 来源:WEB开发网   
核心提示: 编辑 portlet.xml 文件,加入如下片断:清单 2. Action 过滤器定义<portlet-app...>...<filter><display-name>TestActionFilter</display-name><filte

编辑 portlet.xml 文件,加入如下片断:

清单 2. Action 过滤器定义

<portlet-app ...> 
  ... 
  <filter> 
    <display-name>TestActionFilter</display-name> 
    <filter-name>TestActionFilter</filter-name> 
    <filter-class>com.ibm.samples.jsr286.filters.TestActionFilter</filter-class> 
    <lifecycle>ACTION_PHASE</lifecycle> 
  </filter> 
  ... 
</portlet-app> 

定义 Action 过滤器映射,可以影射到具体某个 Portlet, 或者根据模式匹配到一组 Portlet:

清单 3. Action 过滤器映射

... 
<filter-mapping> 
  <filter-name>TestActionFilter</filter-name> 
  <portlet-name>*</portlet-name> 
</filter-mapping> 
... 

在清单 3 的定义中,我们声明 TestActionFilter 对所有 Portlet 的 processAction 调用进行拦截。

重启 Web 应用程序并将 TestPortlet 部署到 "Test JSR 286 Portlet Page" 页面, 并将该页面其它所有 Portlet 移除,输入数据,点击 Submit 按钮触发 processAction 调用,Eclipse Console 出现如下输出:

清单 4. Action 过滤器调用结果

... 
2008-3-16 22:35:20 com.ibm.samples.jsr286.filters.TestActionFilter init 
信息: action filter [TestActionFilter] is initialized. 
2008-3-16 22:35:24 com.ibm.samples.jsr286.filters.TestActionFilter doFilter 
信息: action filter [TestActionFilter] is called. 
2008-3-16 22:35:24 com.ibm.samples.jsr286.filters.TestActionFilter destroy 
信息: action filter [TestActionFilter] is destroyed. 
... 

上一页  1 2 3 4 5 6 7 8  下一页

Tags:JSR Portlet 特性

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接