itVincent Blog - Java Working Fun!

技术引领时代!
posts - 117, comments - 181, trackbacks - 0, articles - 12

javax.faces.STATE_SAVING_METHOD的设置问题

Posted on 2006-11-01 15:43 itVincent 阅读(4196) 评论(4)  编辑  收藏 所属分类: JSF

javax.faces.STATE_SAVING_METHOD 设置为 server 的时候(默认),发现点击浏览器 后退 按钮会导致退回的页面不可用,重新提交的表单不生效,服务器端不刷新,但页面会跳转,必须刷新一次才能解决。
我想到两个解决办法:

1、  javax.faces.STATE_SAVING_METHOD 设为 client 可以解决,但是客户端页面中会出现很长的隐藏信息,虽然不影响客户使用,但是页面会变得很冗长。而且看到有人说页面中夹入的 javascript 打印的中文提示变成了乱码。

2、  faces-config.xml

    < managed-bean >

       < managed-bean-name > hello </ managed-bean-name >

       < managed-bean-class >

           facelets.Hello

       </ managed-bean-class >

       < managed-bean-scope > session </ managed-bean-scope >

    </ managed-bean >

< managed-bean-scope > 改为 session 也可以解决,但例如新增修改是做在同一个页面的时候,之前做过修改操作,新增的时也会存在修改时的内容

       请教有什么方法可以更好的解决这个问题?

Feedback

# re: javax.faces.STATE_SAVING_METHOD的设置问题  回复  更多评论   

2006-11-02 09:55 by itVincent
问题解决:《从JSF1.2的例子,发现Tomcat版本兼容的问题 》
http://www.blogjava.net/itvincent/archive/2006/11/02/78591.aspx

# re: javax.faces.STATE_SAVING_METHOD的设置问题  回复  更多评论   

2007-05-11 15:06 by lx
我想知道javax.faces.STATE_SAVING_METHOD是做什么的。用处是什么?

# re: javax.faces.STATE_SAVING_METHOD的设置问题  回复  更多评论   

2007-05-21 08:45 by itVincent
@lx
session保存的位置,server表示session保存到服务器端,client表示保存到客户端,默认为server

# re: javax.faces.STATE_SAVING_METHOD的设置问题  回复  更多评论   

2007-07-27 10:31 by 路过
In JSF, the state of the application is saved on the server by default. To improve
performance, you can save application state on the client instead. This saves the state of the application into
a hidden field on the page that you can see if you view the page source at run time.

只有注册用户登录后才能发表评论。


网站导航: