优化 500 页面。

This commit is contained in:
thinkgem
2019-09-25 23:06:04 +08:00
parent 1b8f870468
commit ea15646038
2 changed files with 26 additions and 9 deletions

View File

@@ -31,6 +31,28 @@ public class ExceptionUtils {
} }
return ex; return ex;
} }
public static String getExceptionMessage(Throwable ex){
String message = null;
Throwable e = ex;
while (true){
if (e == null){
break;
}
if (StringUtils.startsWith(e.getMessage(), "msg:")){
message = StringUtils.replace(e.getMessage(), "msg:", "");
break;
}else if ("com.jeesite.common.service.ServiceException"
.equals(e.getClass().getName())){
message = e.getMessage();
break;
}
if (StringUtils.isBlank(message)){
e = e.getCause();
}
}
return message;
}
/** /**
* 将ErrorStack转化为String. * 将ErrorStack转化为String.

View File

@@ -7,17 +7,12 @@ var ex;
if (isBlank(message)){ if (isBlank(message)){
ex = @ExceptionUtils.getThrowable(request); ex = @ExceptionUtils.getThrowable(request);
if (ex != null){ if (ex != null){
for (e in [ex, ex.cause!, ex.cause.cause!]){ var m = @ExceptionUtils.getExceptionMessage(ex);
if (@StringUtils.startsWith(e.message!, "msg:")){ if (isNotBlank(m)){
message = @StringUtils.replace(e.message!, "msg:", ""); message = m;
break;
}else if (type.fullName(e) == 'com.jeesite.common.service.ServiceException'){
message = e.message!;
break;
}
} }
if (!@StringUtils.equals(message, "演示模式,不允许操作!")){ if (!@StringUtils.equals(message, "演示模式,不允许操作!")){
@org.slf4j.LoggerFactory.getLogger("error/500").error(ex.message, ex); @org.slf4j.LoggerFactory.getLogger("error/500").error('', ex);
} }
} }
} }