lyf666 2017-02-20 14:12:32 +08:00
parent 15b0a7ed7c
commit c03dd07f11
5 changed files with 16 additions and 7 deletions

View File

@ -6,7 +6,7 @@
<groupId>cn.cloudowr</groupId> <groupId>cn.cloudowr</groupId>
<artifactId>sdk</artifactId> <artifactId>sdk</artifactId>
<version>1.2.3</version> <version>1.2.4</version>
<build> <build>
<plugins> <plugins>
<plugin> <plugin>

View File

@ -9,7 +9,7 @@ import com.jfinal.core.ActionException;
public class Controller extends com.jfinal.core.Controller{ public class Controller extends com.jfinal.core.Controller{
@Override @Override
public void renderError(int errorCode, String msg) { public void renderError(int errorCode, String msg) {
throw new ActionException(errorCode, new ErrorRender(errorCode, msg)); render(new ErrorRender(errorCode, msg));
} }
@Override @Override

View File

@ -17,11 +17,16 @@ public class ErrorInterceptor implements Interceptor {
if (e instanceof ActionException) { if (e instanceof ActionException) {
ActionException ae = (ActionException) e; ActionException ae = (ActionException) e;
Render render = ae.getErrorRender(); Render render = ae.getErrorRender();
render.render(); if (render instanceof ErrorRender) {
} else { ErrorRender er = (ErrorRender) render;
er.setResponse(inv.getController().getResponse());
er.render();
return;
}
}
new ErrorRender(500, inv.getController().getResponse()).render(); new ErrorRender(500, inv.getController().getResponse()).render();
throw e; throw e;
}
} }
} }
} }

View File

@ -65,4 +65,8 @@ public class ErrorRender extends Render {
public void setMsg(String msg) { public void setMsg(String msg) {
this.msg = msg; this.msg = msg;
} }
public void setResponse(HttpServletResponse response) {
this.response = response;
}
} }

View File

@ -14,7 +14,7 @@ public class IdInterceptor implements Interceptor {
if (id != null && !id.isEmpty()) { if (id != null && !id.isEmpty()) {
inv.invoke(); inv.invoke();
} else { } else {
((Controller)inv.getController()).renderError(400, "id must not be null"); inv.getController().render(new ErrorRender(400, "id must not be null"));
} }
} }
} }