Struts2拦截器返回json格式(通过拦截器和jsp来返回)

[b]原创!转载请注明地址[/b] [color=blue][url]http://ycde2009.iteye.com/blog/1990758[/url][/color]
如果在拦截其中想返回json格式的字符串,我们可以通过抛出一个自定义的异常GetJsonException,把需要转成Json格式的对象,放入到该异常中,再到自定义的异常拦截器拦截中拦截下来,再到GetJsonException中获取需要转换的对象,最后在request中设置一个属性“OPERATION_RESULT_KEY”和对应的值,再在该异常拦截器中返回一个标志,如errorJson,再到struts.xml中设置该标志的跳转,跳转的目标就是一个errorJson.jsp文件,在该jsp文件中输出放入对象的json格式。切记,在配置拦截器栈的时候,异常拦截器要处于你抛出异常的拦截器的前面。


<%@ page language="java" contentType="textml; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="s" uri="/struts-tags" %>
<%
String jsonString = ((com.fuzik.sirui.framework.business.BusinessResult)request.getAttribute("OPERATION_RESULT_KEY")).getJsonString();
%>
<%=jsonString %>


<global-results>
<result name="errorJson">
/View/common/errorJson.jsp
</result>
</global-results>

还可以通过Action类来返回请看本文的上一篇文章[url]http://ycde2009.iteye.com/blog/1870845[/url]
发布了25 篇原创文章 · 获赞 0 · 访问量 5100

猜你喜欢

转载自blog.csdn.net/ycde2009/article/details/84512850