![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
jsf
cuiyadll
这个作者很懒,什么都没留下…
展开
-
如何处理logout后,后退按钮(返回键)依旧显示缓存的问题
在一个有密码保护的Web应用中,正确处理用户退出过程并不仅仅只需调用HttpSession的invalidate()方法。现在大部分浏览器上都有后退和前进按钮,允许用户后退或前进到一个页面。如果在用户在退出一个Web应用后按了后退按钮浏览器把缓存中的页面呈现给用户,这会使用户产生疑惑,他们会开始担心他们的个人数据是否安全。许多Web应用强迫用户退出时关闭整个浏览器,这样,用户就无法点击后退...原创 2013-08-21 16:08:37 · 402 阅读 · 0 评论 -
有了上一篇博文,类似地顺便说说表单防重复提交。
表单防重复提交,老鸟略过。做过web的应该都知道,当submit一个表单后,再按浏览器的刷新(F5),表单会再次提交,这样并不是我们想看到的。看了一下华佗的网站,他用的是token机制防重复提交(方法如下:进入页面之时,随机一个数值,可以是Math.random(),也可以是取当前时间…等等。将这个值放入session.setAttribute("token",刚才的随机值),同时也放入表...原创 2013-08-21 16:25:25 · 99 阅读 · 0 评论 -
JSF点滴积累--权限验证
通过PhaseListener 可以在一个点上(JSF生命周期的Restore View phase阶段)进行权限验证,从而避免在每个页面或者每个backing bean中判断用户访问权限,造成过多的冗余代码和管理上的混乱。 步骤一:在faces-config.xml中注册 PhaseListener com.loffler.copycenter.controller.L...原创 2013-08-27 15:42:52 · 153 阅读 · 0 评论 -
弹出窗口(window.open)被各种浏览器拦截的通用处理方法
所有种类的浏览器基本都默认拦截弹出窗口,也就是说(window.open)弹出的窗口基本都会被拦截,浏览器会给一个提示"是否允许弹出窗口",对于较低版本的IE来说,弹出新窗口关闭父亲窗口没有任何问题,但是对于火狐和chrome来说情况就复杂了,因为,如果弹出后马上关闭父窗口,新弹出的窗口不会有"是否弹出"的提示,而直接被拦截.解决方案:1,父窗口定时(30秒)关闭,给用户充足的时间应对...原创 2013-08-27 15:56:42 · 496 阅读 · 0 评论 -
JSF点滴积累--利用PhaseListener实现权限验证
通过PhaseListener 可以在一个点上(JSF生命周期的Restore View phase阶段)进行权限验证,从而避免在每个页面或者每个backing bean中判断用户访问权限,造成过多的冗余代码和管理上的混乱。步骤一:在faces-config.xml中注册 PhaseListener[code="java"]com.loffler.copycenter.cont...原创 2013-08-28 19:54:08 · 304 阅读 · 0 评论 -
ServletContextListener使用详解
在 Servlet API 中有一个 ServletContextListener 接口,它能够监听 ServletContext 对象的生命周期,实际上就是监听 Web 应用的生命周期。当Servlet 容器启动或终止Web 应用时,会触发ServletContextEvent 事件,该事件由ServletContextListener 来处理。在 ServletContextListe...原创 2014-09-03 14:50:08 · 81 阅读 · 0 评论 -
如何使用FacesContext类
在Faces API中有两个类是要经常使用的. 一个是FacesContext 一个是ExternalContext, 本篇文章讲解如何使用前者, 在下面的一篇文章中在继续讲解任何使用后者:对每个JSF请求,FacesServlet对象都会为其获取一个javax.faces. context.FacesContext类的实例。FacesServlet对象将下列3个取自Web容器的对象传给j...原创 2014-09-03 15:06:37 · 188 阅读 · 0 评论