JSR 286 Portlet 的新特性,第 3 部分: Portlet 过滤器和 Portlet 窗口
2010-03-30 00:00:00 来源:WEB开发网这个程序的主要作用就是在 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.
...
- ››JSR 303 - Bean Validation 介绍及最佳实践
- ››JSR 286 Portlet 的新特性,第 1 部分: Portlet 2...
- ››JSR 286 Portlet 的新特性,第 2 部分: 资源服务、...
- ››JSR 286 Portlet 的新特性,第 3 部分: Portlet 过...
- ››特性信息
- ››Portlet规范介绍
- ››JSR 198最终草案提交 统一IDE插件标准
- ››JSR 224-Java EE 5 最终草案发布
- ››JSR-220:EJB 3.0 提交最终草案
- ››JSR-184中纹理对象介绍
- ››JSR-223(Scripting for the Java Platform) 实现
- ››JSR 184:3D坐标系和定位总结
更多精彩
赞助商链接