Struts2+Spring+Hibernate下的一个莫名其妙的问题,求解 在该框架下,我做了一个简单的注册,可是没点击一次提交,数据库会增加两条同样的新记录。我跟踪过整个流程,未发现错误,经过我的跟踪我发现,每点击一次提交按钮,loginAction.action的save方法会执行两遍,请大家帮忙想想,这到底是怎么回事! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 贴出一些主要的代码吧。提交页面,struts配置文件。。 Action: public String save() { userinfoBiz.save(info); List list = userinfoBiz.nonceUser(info); ServletActionContext.getRequest().getSession().setAttribute("info", (Userinfo)list.get(0)); return "register"; }applicationContext.xml:<!-- userinfo --> <bean id="UserinfoBiz" class="com.accp.biz.UserinfoBiz"> <property name="userinfoDao"> <ref bean="UserinfoDAO" /> </property> </bean> <bean id="LoginAction" class="com.accp.action.LoginAction"> <property name="userinfoBiz"> <ref bean="UserinfoBiz" /> </property> </bean>页面代码过于复杂不好贴:简化后如下<form action="LoginAction!save.action" method="post" onsubmit="return check()">用户名: <input style="width: 150px;" type="text" id="UserName" name="info.userName" value="" onBlur="names()">密码:<input style="width: 150px;" type="password" id="pwd1" name="info.passWord" value="" onBlur="mypassword()">确认密码:<input style="width: 150px;" type="password" id="pwd2" name="pwd2" value="" onBlur="mypassword1()"> Email:<input style="width: 150px;" type="text" id="emailss" name="info.email" value="" onBlur="emal()">验证码:<input style="width: 150px;" type="text" id="yan" name="yan" value="" onBlur="yanzheng()"> <input name="zhuce" type="submit" value="提 交"> </form> 你debug运行一下,看看到底是怎么回事?你是ACCP的学生?com.accp呵呵。。 谁能给我详细的说下web项目如何debug,我真不懂,求教 js里是不是有提交代码,你把submit改成button试下 不是把 那是不是在那做了两次save 没看出来是啥原因造成的,断点调试吧。另外:struts2和spring整合,你的action记得设置成prototype web项目如何debug,百度一下。挺多的。 js代码里边是不是写了? form.submit()? 我遇到这个问题就是因为这个 ONSUBMIT執行的CHECK()代碼里你是不是寫FORM[0].SUBMIT()了?那個方法只要返回TRUE表單自己就會提交,反之則不會提交,所以不用畫蛇添足寫FORM[0].SUBMIT() 用struts2 token令牌机制 工作机制就不多说了,不会的话去百度下,很简单的,如果用了struts2 token令牌机制 还是提交2次,这个就是你的代码有问题 点击链接 怎么能弹出下载窗口 怎么再jsp页面里播放.VOB格式视频 hibernate提交错误 如何实现类似if功能的自定义标签? 高手请进。关于JSP的一个分页错误问题 Java连接数据库出错误~!网上没有答案. 有关URL参数中的#号的问题 是否能够在IIS上运行JSP网站呢? 如何在一个JSP页面中优先显示图片,也就是说如何在进入网页时先下载图片 关于eclipse使用summernote图标不显示 关于表单提交显示firefox必须发送将会导致重复之前动作的数据的问题!!! 所有网站都要 “备案”,那我自己的个人网站用么?怎么备案?
public String save()
{
userinfoBiz.save(info);
List list = userinfoBiz.nonceUser(info);
ServletActionContext.getRequest().getSession().setAttribute("info", (Userinfo)list.get(0));
return "register";
}
applicationContext.xml:
<!-- userinfo -->
<bean id="UserinfoBiz" class="com.accp.biz.UserinfoBiz">
<property name="userinfoDao">
<ref bean="UserinfoDAO" />
</property>
</bean>
<bean id="LoginAction" class="com.accp.action.LoginAction">
<property name="userinfoBiz">
<ref bean="UserinfoBiz" />
</property>
</bean>
页面代码过于复杂不好贴:简化后如下
<form action="LoginAction!save.action" method="post" onsubmit="return check()">
用户名: <input style="width: 150px;" type="text" id="UserName"
name="info.userName" value="" onBlur="names()">
密码:<input style="width: 150px;" type="password" id="pwd1"
name="info.passWord" value="" onBlur="mypassword()">
确认密码:<input style="width: 150px;" type="password" id="pwd2"
name="pwd2" value="" onBlur="mypassword1()">
Email:<input style="width: 150px;" type="text" id="emailss"
name="info.email" value="" onBlur="emal()">
验证码:<input style="width: 150px;" type="text" id="yan" name="yan"
value="" onBlur="yanzheng()"> <input name="zhuce" type="submit" value="提 交">
</form>
另外:struts2和spring整合,你的action记得设置成prototype
工作机制就不多说了,不会的话去百度下,很简单的,
如果用了struts2 token令牌机制 还是提交2次,
这个就是你的代码有问题