NutzCN Logo
精华 请问,当出现异常的时候,要返回json,并且要自定义json格式,应该怎么配置@Fail("jsp:jsp.500")注解呢?
发布于 2905天前 作者 qq_a8165fd4 1889 次浏览 复制 上一个帖子 下一个帖子
标签:

请问,当出现异常的时候,要返回json,并且要自定义json格式,应该怎么配置@Fail("jsp:jsp.500")注解呢?

5 回复
@Fail("json")

自定义json格式,指的是什么格式?举个例子看看

这个样子 返回的就是
{"detailMessage":"/ by zero","stackTrace":[{"declaringClass":"com.ebg.data.server.action.AppStoreAction","methodName":"queryAppInfo","fileName":"AppStoreAction.java","lineNumber":18},这样的数据
我想要返回我跟前端约定的数据格式 比如{code:"-1",message="/ by zero"}

@wendal
这个样子 返回的就是
{"detailMessage":"/ by zero","stackTrace":[{"declaringClass":"com.ebg.data.server.action.AppStoreAction","methodName":"queryAppInfo","fileName":"AppStoreAction.java","lineNumber":18},这样的数据
我想要返回我跟前端约定的数据格式 比如{code:"-1",message="/ by zero"}

自定义一个mvc视图

可以不用自定义视图的,jsp页面可以同时支持N种返回的。

@Fail("jsp:common.error")

使用Nutz.Mvc 自带的jsp视图就可了。如下示例代码就可以当时ajax请求的时候返回json,否则返回html

<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%
	com.util.HttpUtil httpUtil = new com.util.HttpUtil();
	if(httpUtil.isAjax(request)){
		response.setContentType("text/json");
		com.alibaba.fastjson.JSONObject json = new com.alibaba.fastjson.JSONObject();
		json.put("success", false);
		json.put("obj", request.getAttribute("obj"));
		out.print(json);
		out.flush();
	}else{
%>		
<!DOCTYPE>
<html>
错误信息${obj}
</html>
<%}%>
添加回复
请先登陆
回到顶部