精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2010-06-28
最后修改:2010-07-06
权限控制我们有很多种实现的方法,而对于不同的UI编程不同的开源框架,都能各施其法
ZK 是一个事件驱动(dvent-driver),基于组件(component),是处理用户活动而引发的事件.ZK处理用户请求分两个阶段,一个是url请求的,一个是Zk Client Engine 发送的请求, 1.用户第一次请求时,是一个URL Request,由zk Loader Servlet处理,对应web.xml中的 org.zkoss.zk.ui.http.DHtmlLayoutServlet 2.响应客户页面以后,ZK AU Engine与 Zk Client Engine交互,如果不调用(sendRedirect),那么都是事件驱动 针对这两个完全不同实现的框架可以采用不同的权限验证方法. Java代码 if( needPrivilegeCheck( request ) ) { // 需要做权限判断 if( session.getAttribute( “user” ) ==null ) { // 用户还没有登录,转移到登录界面 redirect( loginPage, request, response ); return; } else { if( userManager.hasPrivilege( user, privilegeId ) ) { filter.doChain( request, response ); return; } else { redirect( forbiddenHintPage, request, response ); return; } } } package com.linktel.linkFax; import com.linktel.linkFax.domain.User; import com.linktel.linkFax.web.zk.util.ZkUtils; public class LinkFaxContext { public static final String CURRENT_USER = "user"; public static final String CURRENT_AUTHORITIESSTR = "authoritiesStr"; public static final String UPLOAD_LOGOS="/logos/"; public static User currentUser() { return (User) ZkUtils.getSessionAttr(CURRENT_USER); } }
声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2011-06-14
很实用,不错啊
|
|
返回顶楼 | |
浏览 2877 次