struts单例问题

请问在项目中struts2的scope属性一般是设置成singleton还是prototype,我看到网上都说要设置成prototype,是因为线程安全问题,但在web项目中真的有这样的问题吗?以前用struts1的时候也是单例,为什么没有考虑到线程安全。

struts1确实是会有并发的问题
如果struts2的action你也设置成单例,不但有并发的问题,还会有其它问题。
比如,validation,你在一个有校验的页面上多次输入错误,这些错误提示会一直累加在整张页面上。

struts1不了解。

struts2是要设置scope为prototype属性,每个请求是一个线程,如果不为每个线程重新生成一个Action的话,他们就共用一个Action,如果一个线程修改了Action的属性值,这个值对其他所有页面都可见,如果同时修改,就会有并发问题.

struts2中action的属性值是要返回给view层的。