扩展WebSphere Portal V6个性化功能
2010-09-27 08:17:35 来源:WEB开发网定位应用程序对象
当运行一条规则时,规则引擎必须找到该应用程序对象的一个实例。通常,Personalization 将根据您在 Personalization Portlet 中定义应用程序对象时指定的键来查找应用程序对象。例如,您可能在会话中使用键 "yourco.shoppingCart" 定义了一个购物车对象。然后在执行规则时,规则引擎将调用 session.getAttribute("yourco.shoppingCart") 以查找您的购物车实例,假定当规则运行时,该应用程序对象位于会话中。
图 1. 为购物车对象定义一个应用程序对象
在第一个教程中,您将实现 SelfInitializingApplicationObject 接口。通常,调用规则的代码需要确保会话中存在对应于预期键的对象。创建这样的代码有时是一件麻烦且容易出错的工作。如果该规则是 Portlet 上的可见性规则,那么调用该规则的代码位于门户服务器中,而您无法随意更改。您可能还希望为规则添加新的对象,而不需要修改所有的调用者。出现错误的一个常见原因是,在调用规则引擎之前忘了将应用程序对象放到会话中。如果使用 SelfInitializingApplicationObject,那么就可以避免出现这样的错误。
在实现了 SelfInitializingApplicationObject 接口的情况下,如果当规则运行时没有找到应用程序对象,那么规则引擎将尝试实例化该对象。这个引擎将自动地为该对象构造的一个新的实例,然后调用其 init 方法,以便该对象能够有机会根据上下文对象对自己进行初始化。特别是,上下文包含了会话、请求和用户名,这样一来就可以在应用程序对象中使用会话、请求和用户名中的任何信息。
编缉推荐阅读以下文章
- 使用WebSphere Portal开发多区域设置网站
- ››WebSphere Application Server 7.0 XML Feature P...
- ››WebSphere 反向投资者: 解决 WebSphere Applicati...
- ››WebSphere sMash 的创新应用,第 2 部分: 借助包装...
- ››扩展Axis2框架,支持基于JVM的脚本语言
- ››Websphere MQ v6集群的负载均衡新功能
- ››WebSphere Process Server V6.0.2 集群,第 2 部分...
- ››WebSphere Process Server V6.0.2 集群,第 1 部分...
- ››WebSphere MQ性能调优浅谈
- ››WebSphere配置资源库管理
- ››WebSphere中的SSL/TLS:用法、配置和性能
- ››websphere ejb远程/本地调用总结
- ››扩展WebSphere Portal V6个性化功能
更多精彩
赞助商链接