日期:2014-05-19  浏览次数:20734 次

急急急!奇怪的问题,各位大仙进来看看,在线等!在线结贴!
s2sh框架 在action中 return "success" 返回json ,return之后为什么会执行一些其他的动作?具体方法不知道,打印sql能看出来! 求解!
上代码看看:

有拦截器,但是拦截器没有执行那种操作。清理缓存和work目录仍然没效果。好像是只要是struts返回json就执行那个操作。不明白为什么return 之后进还会有操作。不是return 之后进struts 跳转么?
贴段代码看看:
/**
* 验证唯一性
*  
* @return
* @throws UnsupportedEncodingException
*/
public String check() throws UnsupportedEncodingException {
crpnotebcode = new String(crpnotebcode.getBytes("ISO-8859-1"), "UTF-8");
flag = recpaynoteService.check(crpnotebcode);
return "SUCCESS";
}

struts2:
<package name="recpaynoteJSON" namespace="/basic/recpaynoteJSON" extends="json-default">
<action name="*_RecpaynoteActionJSON" class="recpaynoteAction" method="{1}">
<result name="SUCCESS" type="json">/</result>
</action>
</package>

------解决方案--------------------
是不是spring配置了AOP,使得check方法在return的时候执行某个方法。你最好看看spring的配置文件
------解决方案--------------------
struts2 既然返回了json
那就不需要return了
public String check()改成
public void check()不需要返回String
------解决方案--------------------
配置没问题么?