From ae191e4a41e3d80f9ae7471bf618ab3d18b4ea1e Mon Sep 17 00:00:00 2001 From: zhangwei Date: Fri, 2 Nov 2018 10:40:53 +0800 Subject: [PATCH] =?UTF-8?q?=E9=94=99=E8=AF=AF=E4=BF=A1=E6=81=AF=E9=A1=B5?= =?UTF-8?q?=E9=9D=A2=E5=9B=BD=E9=99=85=E5=8C=96=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: zhangwei --- src/main/webapp/WEB-INF/views/error/400.jsp | 21 +++++++++++++++++-- src/main/webapp/WEB-INF/views/error/403.jsp | 19 ++++++++++++++++- src/main/webapp/WEB-INF/views/error/404.jsp | 19 ++++++++++++++++- src/main/webapp/WEB-INF/views/error/500.jsp | 23 ++++++++++++++++++--- 4 files changed, 75 insertions(+), 7 deletions(-) diff --git a/src/main/webapp/WEB-INF/views/error/400.jsp b/src/main/webapp/WEB-INF/views/error/400.jsp index f35ccbab9..f1ccd113e 100644 --- a/src/main/webapp/WEB-INF/views/error/400.jsp +++ b/src/main/webapp/WEB-INF/views/error/400.jsp @@ -3,9 +3,23 @@ response.setStatus(400); // 获取异常类 Throwable ex = Exceptions.getThrowable(request); +//获取国际化信息 +Properties msgProp = new Properties(); +try { + String language = LocaleContextHolder.getLocale().getLanguage(); + if (language.equals("zh_cn") || language.equals("zh")) { + msgProp.load(Configurations.class.getResourceAsStream("/messages/message_zh_CN.properties")); + } else if (language.equals("ru")) { + msgProp.load(Configurations.class.getResourceAsStream("/messages/message_ru.properties")); + } else { + msgProp.load(Configurations.class.getResourceAsStream("/messages/message_en.properties")); + } +} catch (Exception e) { + msgProp = null; +} // 编译错误信息 -StringBuilder sb = new StringBuilder("(400):\n"); +StringBuilder sb = new StringBuilder("(400)"+msgProp!=null?msgProp.getProperty("exception_info"):"Exception Infomation"+":\n"); if (ex != null) { if (ex instanceof BindException) { for (ObjectError e : ((BindException)ex).getGlobalErrors()){ @@ -24,7 +38,7 @@ if (ex != null) { sb.append("☆" + ex.getMessage()); } } else { - sb.append(".\n\n"); + sb.append(msgProp!=null?msgProp.getProperty("unkown_error"):"Unkown Error Infomation"+":\n\n"); } // 如果是异步请求或是手机端,则直接返回信息 @@ -42,6 +56,9 @@ else { <%@page import="com.nis.web.security.Servlets"%> <%@page import="com.nis.util.Exceptions"%> <%@page import="com.nis.util.StringUtils"%> +<%@page import="java.util.Properties"%> +<%@page import="org.springframework.context.i18n.LocaleContextHolder"%> +<%@page import="com.nis.util.Configurations"%> <%@page contentType="text/html;charset=UTF-8" isErrorPage="true"%> <%@include file="/WEB-INF/include/taglib.jsp"%> diff --git a/src/main/webapp/WEB-INF/views/error/403.jsp b/src/main/webapp/WEB-INF/views/error/403.jsp index a3a67b524..1dc1eb9d8 100644 --- a/src/main/webapp/WEB-INF/views/error/403.jsp +++ b/src/main/webapp/WEB-INF/views/error/403.jsp @@ -3,13 +3,27 @@ response.setStatus(403); //获取异常类 Throwable ex = Exceptions.getThrowable(request); +//获取国际化信息 +Properties msgProp = new Properties(); +try { + String language = LocaleContextHolder.getLocale().getLanguage(); + if (language.equals("zh_cn") || language.equals("zh")) { + msgProp.load(Configurations.class.getResourceAsStream("/messages/message_zh_CN.properties")); + } else if (language.equals("ru")) { + msgProp.load(Configurations.class.getResourceAsStream("/messages/message_ru.properties")); + } else { + msgProp.load(Configurations.class.getResourceAsStream("/messages/message_en.properties")); + } +} catch (Exception e) { + msgProp = null; +} // 如果是异步请求或是手机端,则直接返回信息 if (Servlets.isAjaxRequest(request)) { if (ex!=null && StringUtils.startsWith(ex.getMessage(), "msg:")){ out.print(StringUtils.replace(ex.getMessage(), "msg:", "")); }else{ - out.print("."); + out.print(msgProp!=null?msgProp.getProperty("no_permission"):"Lack of authority"); } } @@ -19,6 +33,9 @@ else { <%@page import="com.nis.web.security.Servlets"%> <%@page import="com.nis.util.Exceptions"%> <%@page import="com.nis.util.StringUtils"%> +<%@page import="java.util.Properties"%> +<%@page import="org.springframework.context.i18n.LocaleContextHolder"%> +<%@page import="com.nis.util.Configurations"%> <%@page contentType="text/html;charset=UTF-8" isErrorPage="true"%> <%@include file="/WEB-INF/include/taglib.jsp"%> diff --git a/src/main/webapp/WEB-INF/views/error/404.jsp b/src/main/webapp/WEB-INF/views/error/404.jsp index 148c8cae9..4191bb2cf 100644 --- a/src/main/webapp/WEB-INF/views/error/404.jsp +++ b/src/main/webapp/WEB-INF/views/error/404.jsp @@ -1,15 +1,32 @@ <% response.setStatus(404); +//获取国际化信息 +Properties msgProp = new Properties(); +try { + String language = LocaleContextHolder.getLocale().getLanguage(); + if (language.equals("zh_cn") || language.equals("zh")) { + msgProp.load(Configurations.class.getResourceAsStream("/messages/message_zh_CN.properties")); + } else if (language.equals("ru")) { + msgProp.load(Configurations.class.getResourceAsStream("/messages/message_ru.properties")); + } else { + msgProp.load(Configurations.class.getResourceAsStream("/messages/message_en.properties")); + } +} catch (Exception e) { + msgProp = null; +} // 如果是异步请求或是手机端,则直接返回信息 if (Servlets.isAjaxRequest(request)) { - out.print("."); + out.print(msgProp!=null?msgProp.getProperty("notfound_page"):"Page does not exist"); } //输出异常信息页面 else { %> <%@page import="com.nis.web.security.Servlets"%> +<%@page import="java.util.Properties"%> +<%@page import="org.springframework.context.i18n.LocaleContextHolder"%> +<%@page import="com.nis.util.Configurations"%> <%@page contentType="text/html;charset=UTF-8" isErrorPage="true"%> <%@include file="/WEB-INF/include/taglib.jsp"%> diff --git a/src/main/webapp/WEB-INF/views/error/500.jsp b/src/main/webapp/WEB-INF/views/error/500.jsp index 0c85d629a..87e317e22 100644 --- a/src/main/webapp/WEB-INF/views/error/500.jsp +++ b/src/main/webapp/WEB-INF/views/error/500.jsp @@ -6,13 +6,27 @@ Throwable ex = Exceptions.getThrowable(request); if (ex != null){ LoggerFactory.getLogger("500.jsp").error(ex.getMessage(), ex); } +//获取国际化信息 +Properties msgProp = new Properties(); +try { + String language = LocaleContextHolder.getLocale().getLanguage(); + if (language.equals("zh_cn") || language.equals("zh")) { + msgProp.load(Configurations.class.getResourceAsStream("/messages/message_zh_CN.properties")); + } else if (language.equals("ru")) { + msgProp.load(Configurations.class.getResourceAsStream("/messages/message_ru.properties")); + } else { + msgProp.load(Configurations.class.getResourceAsStream("/messages/message_en.properties")); + } +} catch (Exception e) { + msgProp = null; +} // 编译错误信息 -StringBuilder sb = new StringBuilder(":\n"); +StringBuilder sb = new StringBuilder(msgProp!=null?msgProp.getProperty("exception_info")+":\n":"Exception Infomation:\n"); if (ex != null) { sb.append(Exceptions.getStackTraceAsString(ex)); } else { - sb.append(".\n\n"); + sb.append(msgProp!=null?msgProp.getProperty("unkown_error")+":\n\n":"Unkown Error Infomation:\n"); } // 如果是异步请求或是手机端,则直接返回信息 @@ -27,6 +41,9 @@ else { <%@page import="com.nis.web.security.Servlets"%> <%@page import="com.nis.util.Exceptions"%> <%@page import="com.nis.util.StringUtils"%> +<%@page import="java.util.Properties"%> +<%@page import="org.springframework.context.i18n.LocaleContextHolder"%> +<%@page import="com.nis.util.Configurations"%> <%@page contentType="text/html;charset=UTF-8" isErrorPage="true"%> <%@include file="/WEB-INF/include/taglib.jsp"%> @@ -39,7 +56,7 @@ else {
- :<%=ex==null?".":StringUtils.toHtml(ex.getMessage())%>

+ :<%=ex==null?(msgProp!=null?msgProp.getProperty("exception_info")+":\n":"Exception Infomation:\n")+"\n":StringUtils.toHtml(ex.getMessage())%>