最近写个授权的页面,使用dwr来处理,感觉很方便。
dwr的配置如下:
web.xml页面:
dwr.xml页面
spring配置文件中
jsp页面:
在整个操作过程中比较有意思的是jsp页面中js的编写,其中包含很多js的编程思想,和java相比是另一中感觉,值得花时间研究一下。
dwr的配置如下:
web.xml页面:
<!-- dwr配置 -->
<listener>
<listener-class>
org.directwebremoting.servlet.DwrListener
</listener-class>
</listener>
<servlet>
<servlet-name>dwr-invoker</servlet-name>
<servlet-class>
org.directwebremoting.servlet.DwrServlet
</servlet-class>
<init-param>
<param-name>debug</param-name>
<param-value>true</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>dwr-invoker</servlet-name>
<url-pattern>/dwr/*</url-pattern>
</servlet-mapping>
dwr.xml页面
<create creator="spring" javascript="permissionService">
<param name="beanName" value="permissionService"></param>
</create>
spring配置文件中
<bean id="permissionService"
name="permissionService"
class="com.base.service.impl.PermissionServiceImpl" >
<property name="sessionFactory">
<ref bean="sessionFactory"/>
</property>
</bean>
jsp页面:
<script type='text/javascript' src='${pageContext.request.contextPath}/dwr/interface/permissionService.js'></script>
<script type='text/javascript' src='${pageContext.request.contextPath}/dwr/engine.js'></script>
<script type='text/javascript' src='${pageContext.request.contextPath}/dwr/util.js'></script>
<script type="text/javascript">
function addOrModifyPermission(field) {
//if checked addormodiy item ,or delete
var res = field.attributes['resource'].nodeValue;
if(field.checked) {
//alert(field.resource);
$(res+"_per").checked = true;
permissionService.addMenuctrl(
res,
${rule.ruleno}
);
} else {
$(res+"_per").checked = false;
permissionService.removeMenuctrl(
res,
${rule.ruleno}
);
}
}
//初始化页面
function initTable() {
permissionService.findMenuctrlByRules(
${rule.ruleno},
function(data){
for(var i=0;i<data.length;i++){
var resource = data[i][0];
$(resource+"_per").checked = true;
}
}
);
}
</script>
<title>
为角色${rule.rulename}授权
</title>
</head>
<body bgcolor="#ccddee" link="#000066" vlink="#0066FF" alink="#99FF00" onload="initTable()">
<center>
<table cellspacing="0" border="0" cellpadding="0" style="width:680px;">
<tr>
<td align="center">选择</td>
<td align="center">菜单名称</td>
<td align="center">选择</td>
<td align="center">菜单名称</td>
<td align="center">选择</td>
<td align="center">菜单名称</td>
<td align="center">选择</td>
<td align="center">菜单名称</td>
</tr>
<tr>
<s:iterator value="menulist" status="rowstatus" var="menu">
<td align="center">
<input type="checkbox" id="<s:property value="menuid"/>_per" onclick="addOrModifyPermission(this)" resource="<s:property value="menuid"/>" >
</td>
<td align="center"><s:property value="menuname"/></td>
<s:if test="#rowstatus.count%4 == 0"></tr><tr></s:if>
</s:iterator>
</table>
</center>
</body>
</html>
在整个操作过程中比较有意思的是jsp页面中js的编写,其中包含很多js的编程思想,和java相比是另一中感觉,值得花时间研究一下。