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

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

 2010-03-30 00:00:00 来源:WEB开发网   
核心提示: 这个程序的主要作用就是在 Resource Filter 初始化、过滤器调用,销毁的时候分别打印相应的信息,JSR 286 Portlet 的新特性,第 3 部分: Portlet 过滤器和 Portlet 窗口(7),读者同样需要注意过滤链传递的问题,编辑 portlet.xml 文件,加入如

这个程序的主要作用就是在 Resource Filter 初始化、过滤器调用,销毁的时候分别打印相应的信息,读者同样需要注意过滤链传递的问题。

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

清单 10. Resource 过滤器定义

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

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

清单 11. Resource 过滤器映射

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

在清单 11 的定义中,我们声明 TestResourceFilter 对所有 Portlet 的 serveResource 调用进行拦截。

重启 Web 应用程序并将 TestPortlet 部署到 "Test JSR 286 Portlet Page"页面, 访问该页面, 点击超链接“Click me to request Resource URL”请求资源,Eclipse Console 出现如下输出:

清单 12. Resource 过滤器调用结果

... 
2008-3-17 13:21:03 com.ibm.samples.jsr286.filters.TestResourceFilter init 
信息: resource filter [TestResourceFilter] is initialized. 
2008-3-17 13:21:03 com.ibm.samples.jsr286.filters.TestResourceFilter doFilter 
信息: resource filter [TestResourceFilter] is called. 
2008-3-17 13:21:05 com.ibm.samples.jsr286.filters.TestResourceFilter destroy 
信息: resource filter [TestResourceFilter] is destroyed. 
... 

上一页  2 3 4 5 6 7 8 9 10  下一页

Tags:JSR Portlet 特性

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