Jwx1021的gravatar头像
Jwx1021 2014-08-20 10:49:18

struts2+spring零配置架构---请教妖异问题

各位大牛,哥也有个问题想请教,困惑3天了

struts2+spring零配置架构
一个查询(列表)界面,启动服务器后,正常ajax发送的post请求已经到服务器端(debug模式断点),查询(或者别的ajax更新操作)n次后,就停在action方法上,service方法进不去

service是自动注入的(@Autowired),有朩有遇到过帮个忙分析解决下?struts2+spring零配置架构---请教妖异问题

1、灰常纠结,如果有问题,为什么一开始是好的,调用几次后就不行了,又朩有被异常捕获。

2、发生这个问题后,重启tomcat就又好了,接着又重复上面的故事...

struts2+spring零配置架构---请教妖异问题

struts2+spring零配置架构---请教妖异问题

所有回答列表(4)
1586688的gravatar头像
1586688  LV2 2014年8月20日

不太明白

supereme的gravatar头像
supereme  LV6 2014年9月17日

能否发代码,我调调看,这么看很难看出是什么问题,

Edson188的gravatar头像
Edson188  LV22 2014年10月20日

看看是ajax请求缓存问题,你发的代码怎么看都没问题,把IE所有缓存数据清空,在试试。

1.struts2为每个线程提供一个action实例,多线程访问时不会出现问题。当使用spring管理struts2的action实例对象时,scope必须配置为prototype或者session,若配置为singleton则多线程访问时会出现问题,例如actionMessage,fieldError等信息会累加,多用户访问时有的用户访问到的是另一个用户的数据。

2.scope=“prototype”是为每个请求提供一个action实例(与struts2的机制是一样的)。
scope=“session”是为每个会话提供一个action实例。

3.通常使用prototype,即让spring容器为每个请求提供一个action实例,好处是服务器端不用维护用户状态信息,否则使用session服务器端必须存储状态信息,用户多时占用服务器端内存过多。使用prototype时,必须自己在客户端维护用户的状态,每次访问服务端时将相应状态信息提交给服务器。

例如scope=“prototype”时,页面一般< input name="id" type="hidden" value="${id}"/>用来存储用户的id信息,访问action时提交到server端供action中函数使用。而使用scope=“session”时,页面不必使用hidden的对象隐藏id信息,只要服务端获取过用户的id,action中的id属性即会保存这个信息。

有问题还是觉得逻辑有问题,同样的逻辑你用不同的方法来实现看看,如果还是一样是环境问题,如果什么都检查没问题那么就是rp问题,要换rp了,现在代码不全只能用排除法了。

 

 

alisi188的gravatar头像
alisi188  LV2 2014年11月22日

看配置了

顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友