ajax异步监控_监控整页(非AJAX),需要通知
ajax异步监控
最近,在JSF中处理新图表和图表“导出服务”时,我遇到了一个非常普遍的问题。 当您执行长时间运行的任务(操作)时,您希望在开始时显示一个状态“请稍候……”对话框,并在响应到达时结束时关闭此对话框。 对于AJAX请求,这不是问题,但对于将一些二进制内容流式传输到浏览器的非AJAX请求而言,则是有问题的。 要解决此问题,我们可以使用与PrimeFaces中的FileDownload组件相同的技术。 我们可以设置一个特殊的cookie作为响应,并在客户端定期检查此cookie(如果已设置)。 设置此Cookie后,我们可以关闭打开的“之前”对话框。 可以在JSF中将cookie设置为:
// set cookie to be able to ask it and close status dialog for example
FacesContext.getCurrentInstance().getExternalContext().addResponseCookie("cookie.chart.exporting", "true", Collections.<String, Object>emptyMap());
Non AJAX按钮执行一个JavaScript函数(例如monitorExporting),它具有两个参数,这些参数表示在请求/响应生命周期的开始和结束时要调用的另一个JavaScript函数。
<p:commandButton value="Export to PNG" ajax="false" action="#{combiChartController.exportToPng}"onclick="monitorExporting(start, stop)"/>
PrimeFaces已经提供了一些方法来检查是否启用了cookie,以获取和删除它们。 所以,我们可以写
function monitorExporting(start, complete) {if(PrimeFaces.cookiesEnabled()) {if(start) {start();}window.chartExportingMonitor = setInterval(function() {var exportingComplete = PrimeFaces.getCookie('cookie.chart.exporting');if(exportingComplete === 'true') {if(complete) {complete();}clearInterval(window.chartExportingMonitor);PrimeFaces.setCookie('cookie.chart.exporting', null);}}, 150);}
}
使用setInterval(…)定期询问cookie。 功能开始显示“请稍候……”对话框,功能停止将其关闭。
<script type="text/javascript">
/* <![CDATA[ */function start() {statusDialog.show();}function stop() {statusDialog.hide();}
/* ]]> */
</script>
如果禁用了cookie,则当然不会显示任何内容,但是通常很少见。
翻译自: https://www.javacodegeeks.com/2013/07/monitor-full-page-non-ajax-requests-to-be-notified.html
ajax异步监控
ajax异步监控_监控整页(非AJAX),需要通知相关推荐
- springcloud工作笔记106---eureka实现服务监控_监控服务下线_服务注册_服务续约_判断注册中心可用_监控eurekaserver启动
技术交流QQ群[JAVA,C++,Python,.NET,BigData,AI]:170933152 在一些业务场景下,需要对服务的上下线进行监控,比如上下线都需要进行邮件通知,可以通过eureka提 ...
- 服务器状态监控php源码,服务器状态监控_监控Linux服务器网站状态的SHELL脚本
摘要 腾兴网为您分享:监控Linux服务器网站状态的SHELL脚本,蜗牛集市,同花顺,探客宝,手柄助手等软件知识,以及日期倒计时插件,云南省教育资源公共,rui手机桌面,小屁孩桌面便签,合金装备崛起复 ...
- java 内存 监控_监控JVM内存使用情况
1.使用jstat命令查看堆内存的使用情况 jstat 命令选项 vmid 间隔时间 查询次数 1.查看当前进程Class类加载的统计 jstat -class ***** 2.查看编译统计 jsta ...
- openfalcon 组件监控_监控软件之open-falcon
一.open-falcon介绍 1)中文社区介绍 http://book.open-falcon.org/zh_0_2/intro/ 视频连接:http://www.jikexueyuan.com/c ...
- mysql 主从复制 监控_监控MySQL主从复制状态的脚本
思路是通过show slave status这条命令来查看主从复制的状态,然后根据状态字段的值进行判断. show slave status\G; #显示slave状态; slave_IO_Runni ...
- mysql表损坏监控_监控mysql启动情况并检测表错误修复
给开发部同事用的测试服务器上MYSQL经常挂掉...都懒得理了..写了个脚本自己检测错误修复表继续运行..邮件报警功能等有空再补上去... #!/bin/env bash PATH=/bin:/sbi ...
- Mycat监控_监控平台Mycat-web配置指标_作为配置中心注册发现用---MyCat分布式数据库集群架构工作笔记0038
技术交流QQ群[JAVA,C++,Python,.NET,BigData,AI]:170933152 然后我们再去看这个mycat-web怎么用 点击配置,这里配置我们zookeeper的ip和端口 ...
- Mycat监控_监控平台安装Mycat-web_作为配置中心注册发现用---MyCat分布式数据库集群架构工作笔记0037
技术交流QQ群[JAVA,C++,Python,.NET,BigData,AI]:170933152 下面咱们去安装mycat-web 先把mycat-web上传到opt下 然后解压
- Mycat监控_监控平台安装zookeeper_作为配置中心注册发现用---MyCat分布式数据库集群架构工作笔记0036
技术交流QQ群[JAVA,C++,Python,.NET,BigData,AI]:170933152 好咱们去安装zookeeper,这个很简单 首先看看这个zookeeper的官网,然后 这里点击d ...
最新文章
- 自由自在讲述小资与冰淇淋的美丽生活
- 26、临时表的创建和重复数据的处理
- ftp文档服务器设置,ftp服务器基本设置
- 调侃面向对象编程的23种设计模式(转)
- LVS——TUN隧道模式(负载均衡)
- 数据结构上机实践第五周项目1- 建立顺序栈算法库
- python中if continue else,python基础;if else;for;while 分支处理.continue,break
- 360修复上不了网络连接服务器失败,360断网急救箱网络连接配置修复不了怎么办-修复不了的解决办法...
- 计算机分屏功能吗,电脑分屏显示
- 【前端框架】当前基于bootstrap框架的几种主流前端框架
- 软件工程之高质量代码(编码规范)
- 【Books系列】之第二本书:大冰《我不》读书笔记和读后感
- Python 计算一年有多少秒
- 【JNLP】什么是JNLP
- 人生不过是生老病死,我也是没活成想要的样子
- html5在线客服源码 websocket c# socket 实现,可扩展 im 即时通讯 完整的源代码,在线聊天
- Word中邮件功能的使用
- skimage.measure.label和skimage.measure.regionprops()
- SciChart v5.4 - v6.0-alpha keygen-SEO狼术
- 【案例实践】高光谱遥感数值建模技术及在植被、水体、土壤信息提取领域应用实践技术
热门文章
- 动态规划训练20 [Treats for the Cows POJ - 3186 ]
- 去 BAT 面试,总结了这 55 道 MySQL 面试题
- 深入Java集合系列之五:PriorityQueue
- Java 调用EXE
- 《四世同堂》金句摘抄(十四)
- 涨知识 | 100个中国最难读的地名,第一个就折了
- c语言关于计算的函数,问个c语言题目,关于一个计算器的有参有返回函数!!!...
- weex安装环境_WEEX跨平台开发环境搭建
- (转) SpringBoot接入两套kafka集群
- Mybatis报错:nested exception is org.apache.ibatis.binding.BindingException: Parameter ‘XXX‘ not found