2013-02-13 15 views
0

我使用的Struts 1.3和Tiles框架, 我有一个主页URL这样如何改写Struts应用程序的URL

http://localhost:8080/TDS_PRO/ 

后,我可以点击我的任何链接按钮.. 如果我点击链接insert

http://localhost:8080/TDS_PRO/MainMenu.html?method=Insert它会插入数据并显示所有数据,结果页面

问题是,当我刷新页面之前的链接进入到服务器,并试图插入SAM e记,但在我的表primary constraint是有那么就会产生Exception并显示Exception in JSp page ..

如果我设置ActionscopeRequest则该链接进入Action class和生成Null Pointer Exception

如何解决这个问题。 .. ???

给一些想法..

+0

看看如何防止在Struts中重复的形式重新提交http://baskervillesd.wordpress.com/2009/10/13/prevent-multiple此链接 - 形式-的提交/ – 2013-02-13 16:29:05

回答

0

插入操作不应该从页面的GET请求(简单的href链接)。他们应通过HTTP POST使用表单提交实施。然后浏览器会在用户刷新时警告用户。

但是,您可以尝试从第1页 - >第2页的<forward redirect=true>。我认为这应该防止页面刷新时重新提交。另外,看看同步标记模式讨论http://www.coderanch.com/t/51602/Struts/Duplicate-form-submission-Synchronizer-Token

相关问题