如题,我们开发的架构是采用Struts2 + jQuery,所以就使用了JSON数据进行传输。现在我要在Struts.xml中处理异常,例如我在struts.xml中有如下的一个Action的配置 <action name="showExamList"
class="org.cst.de.action.examAppearance.ListExamineesExamAction">
<result type="json" name="success" />
<result type="json" name="exception">
<param name="root">
"Exception Information"
</param>
</result>
<exception-mapping result="exception"
exception="java.lang.NullPointerException" />
</action>这个Action我映射了一个局部异常NullPointerException到一个名为“exception”的result,现在我想在excepion这个result中返回一个JSON结果给前台的jQUery,但是我试过将"Exception Information"这串字符串改为如
{"exceptionId":"1", "exceptionMsg":"No Login"}
这样的JSON数据格式,但是前台显示获得的JSON数据是null。
但是,如果我用引号括着这串数据,前台获得的数据又会在两边加上引号导致无法解释请问,这串JSON结果我应该怎样设置才能正确返回?
前提是不能在Action中添加任何额外代码!
class="org.cst.de.action.examAppearance.ListExamineesExamAction">
<result type="json" name="success" />
<result type="json" name="exception">
<param name="root">
"Exception Information"
</param>
</result>
<exception-mapping result="exception"
exception="java.lang.NullPointerException" />
</action>这个Action我映射了一个局部异常NullPointerException到一个名为“exception”的result,现在我想在excepion这个result中返回一个JSON结果给前台的jQUery,但是我试过将"Exception Information"这串字符串改为如
{"exceptionId":"1", "exceptionMsg":"No Login"}
这样的JSON数据格式,但是前台显示获得的JSON数据是null。
但是,如果我用引号括着这串数据,前台获得的数据又会在两边加上引号导致无法解释请问,这串JSON结果我应该怎样设置才能正确返回?
前提是不能在Action中添加任何额外代码!
https://www.chinasb.org/archives/2010/09/321.shtml
class="org.cst.de.action.examAppearance.ListExamineesExamAction">
</action>
这样就可以了,在java端就在包装好的json数据扔到前台就可以了。
如果ACTION一旦发生异常,前台将不会获取到任何的数据
我现在就是想当ACTION发生异常的时候,利用struts的异常处理机制,在struts.xml中配置捕获一个异常
由于前台是AJAX的,我捕获异常后当然要返回信息告诉前台ACTION发生了什么错误
而和前台通讯的方式只有使用JSON数据通讯
所以我要在异常对应的结果里面配置一串JSON格式数据以便告诉前台发生了什么错误啊不知道这样说大家明不明白我的意思?
ajax根本不会理会action中抛出的异常
好郁闷