package com.cdut.math.web.servlet;
import java.util.Iterator;
import java.util.Set;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.io.SAXReader;
import com.cdut.math.utils.PermissionFactory;
public class InitPermissionServlet extends HttpServlet {
public static final String ADMIN_PERMISSION = "admin_permission";
public static final String TEACHER_PERMISSION = "teacher_permission";
public static final String STUDENT_PERMISSION = "student_permission";
@Override
public void init() throws ServletException {
try {
// 解析document文档
Document document = new SAXReader().read(Thread.currentThread()
.getContextClassLoader()
.getResourceAsStream("permissions.xml"));
// 获取admin的权限
Set<String> adminPermissions = new PermissionFactory()
.readPermission(document
.selectNodes("//permissions//admin//permission"));
getServletContext()
.setAttribute(ADMIN_PERMISSION, adminPermissions);
// 获取teacher的权限
Set<String> teacherRoles = new PermissionFactory()
.readPermission(document
.selectNodes("//permissions//teacher//permission"));
getServletContext().setAttribute(TEACHER_PERMISSION, teacherRoles);
// 获取学生的权限
Set<String> studentPermissions = new PermissionFactory()
.readPermission(document
.selectNodes("//permissions//student//permission"));
getServletContext().setAttribute(STUDENT_PERMISSION,
studentPermissions);
} catch (DocumentException e) {
e.printStackTrace();
}
super.init();
}
}
fdgdfgdfg
最新推荐文章于 2017-05-25 18:13:00 发布