日期:2014-05-18  浏览次数:20662 次

ssh中一次提交action执行了两次是怎么回事
一个ssh的项目,表单内容通过JavaScript认证后提交给action,可是在action处理的时候发生了问题,在js认证的时候我让它弹出了一个对话框,证明这段代码只运行了一次,也就是只提交了一次。可是在action中却收到了两次的请求。单步调试的时候发现,在action刚开始处理请求的时候就又来了另一个请求,然后两个请求被同时处理,最后导致数据库中出现了冗余记录。怎么回事呢? 
日志如下 
FYproject] DEBUG [http-8080-1] BarServerDAO.findAll(169) | finding all BarServer instances 
opt is ------------add2test//action中的请求处理开始 

[FYproject] DEBUG [http-8080-1] VersionDAO.findByVersionname(280) | find Version 
opt is ------------add2test//action中的请求处理开始 

[FYproject] DEBUG [http-8080-1] VersionDAO.findByVersionname(294) | find Version successful 
version:t-1.10 
[FYproject] DEBUG [http-8080-1] BarServerDAO.findByProperty(120) | finding BarServer instance with property: cupId, value: 3972383Nvidia42302e3120070516000000000000000SystemSerialNumberPhoenixAwardBIOSv600PGPhoenixTechnologiesLTD 
[FYproject] DEBUG [http-8080-2] VersionDAO.findByVersionname(280) | find Version 
[FYproject] DEBUG [http-8080-2] VersionDAO.findByVersionname(294) | find Version successful 
山东 
version:t-1.10 
bar中有数据1个//调用了一个保存数组数据到数据库的方法 
循环开始i的值为0 
[FYproject] DEBUG [http-8080-2] BarServerDAO.findByProperty(120) | finding BarServer instance with property: cupId, value: 3972383Nvidia42302e3120070516000000000000000SystemSerialNumberPhoenixAwardBIOSv600PGPhoenixTechnologiesLTD 
[FYproject] DEBUG [http-8080-1] BarServerDAO.findBarByid(218) | findBarByid 
[FYproject] DEBUG [http-8080-1] BarServerDAO.findBarByid(227) | findBarByid successful 
山东 
bar中有数据1个 
循环开始i的值为0 
[FYproject] DEBUG [http-8080-2] BarServerDAO.findBarByid(218) | findBarByid 
[FYproject] DEBUG [http-8080-1] TVersionBarDAO.isTestBarExist(207) | getting TVersionBar with id: 
[FYproject] DEBUG [http-8080-2] BarServerDAO.findBarByid(227) | findBarByid successful 
[FYproject] DEBUG [http-8080-1] BarServerDAO.findBarByid(218) | findBarByid 
[FYproject] DEBUG [http-8080-2] TVersionBarDAO.isTestBarExist(207) | getting TVersionBar with id: 
[FYproject] DEBUG [http-8080-1] BarServerDAO.findBarByid(227) | findBarByid successful 
[FYproject] DEBUG [http-8080-1] TVersionBarDAO.save(38) | saving TVersionBar instance 
[FYproject] DEBUG [http-8080-1] TVersionBarDAO.save(42) | save successful 
[FYproject] DEBUG [http-8080-2] BarServerDAO.findBarByid(218) | findBarByid 
[FYproject] DEBUG [http-8080-2] BarServerDAO.findBarByid(227) | findBarByid successful 
[FYproject] DEBUG [http-8080-2] TVersionBarDAO.save(38) | saving TVersionBar instance 
[FYproject] DEBUG [http-8080-2] TVersionBarDAO.save(42) | save successful 
保存到数据库成功0//方法中的提示 
添加测试网吧成功//action中的提示 
保存到数据库成功0 
添加测试网吧成功

------解决方案--------------------

------解决方案--------------------
那就结吧