在项目中需要实现这样一个功能,在Reboot设备后确认操作是否成功。但是Reboot设备是一个延时比较大的过程。由于项目是B/S架构,服务器无法把信息推给客户端,因此要实现及时返回操作状态就必须定时刷新页面,这就是B/S系统比较麻烦的地方。在这里我使用JSF中的a4j:poll标签来实现后台数据的不断更新。代码如下:
<?xml version="1.0" encoding="UTF-8"?>
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:a4j="http://richfaces.org/a4j"
xmlns:rich="http://richfaces.org/rich"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core" >
<head>
<title>JSF</title>
<script type="text/javascript">
//JS的作用是定时检测后台传过来的数据是否符合条件,并产生相应提示。在页面加载时调用
function judgeResult(){
var result = document.getElementById('textResult').value;
if(result != ""){
if(result != 'none'){
alert(result);
}
}
setTimeout('judgeResult()',20000);
}
</script>
</head>
<body onload="judgeResult();">
<h:form style="display:none">
//刷新后台的标签,其中panelgrid指定刷新的控件
<a4j:poll interval="2000000" reRender="panelgrid"/>
</h:form>
http://www.xxx.com
<h:panelGrid id="panelgrid">
<input type="hidden" value="${cpeManageAction.result}" id="textResult"/>
</h:panelGrid>
</body>
</html>
JSF的路径配置问题:
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>/pages/*</url-pattern>
</servlet-mapping>
这样配置只是代表可以处理这种请求:http://localhost:8080/abc/pages/index.jsp
但是实际上index.jsp是放在工程路径下的,并非在pages文件夹下。也就是说配置只是对原来webroot下的页面多加了一个虚路径pages,并且可以访问.jsp后缀的文件。
分享到:
相关推荐
JSF学习笔记JSF学习笔记JSF学习笔记
JSF学习笔记,总结了jsf的学习知识点,是学习jsf入门的基础
JSF学习笔记,笔记全面,有实例,是学习的好资料!里面包含了实际学习的列子,保证事半功倍
JSF学习笔记,JSF实战,JSF各种组件实用
JSF实例笔记 JSF实例笔记 JSF实例笔记 JSF实例笔记 JSF实例笔记 JSF实例笔记 JSF实例笔记 JSF实例笔记 JSF实例笔记 JSF实例笔记 JSF实例笔记
良葛格JSF学习笔记
良葛格_JSF学习笔记
jsf 好的笔记,难得呀!JSF优秀笔记,赶紧收藏吧,还等什么呢
您是否在从事Web项目的开发? 如果是,您是否遇到过如下的问题: ... 2.多用户访问时,需要处理线程安全、数据验证、转换处理等问题。 3.展示逻辑和处理逻辑胶合在...本文是JSF入门资料的学习笔记,或许对您有一些帮助。
NULL 博文链接:https://miaoxianjie.iteye.com/blog/1565637
NULL 博文链接:https://miaoxianjie.iteye.com/blog/1571298
JavaEE5实战笔记04JSF的一些补充 JavaEE5实战笔记04JSF的一些补充
jsf+spring+hibernate整合笔记,可以参考。
JSF框架学习资:这学习资料是我学习时笔记有不正确的地方请指出,方便我改正!
JavaEE5学习笔记13-JSF集成Facelets使用经验总结.
JavaEE5学习笔记12-JSF集成AJAX使用经验总结。