在struts2中发现,调用action中的方法,方法会被执行两次,调了1整天,在百度上搜索关键字用的“json struts2”。先一直以为是配置或者前台Ajax的问题。后来同学换了关键字,搜到下面蛋疼的结果。
调用的方法是get开头的,把它改为其他名称开头的后,就不会执行两次了。继续查找,发现调用的是返回json数据格式的action,如果是调用返回页面的action就不会有这种问题。
结合网上的搜索,总结了一下:
1. json格式下, firefox中的yslow插件会发送第二个 HTTP GET 请求得到页面的信息。.
2.ajax模式下,调用的action方法不能为get*方式命名,内中机理未知。
结论:action中方法最好不要以get开头。