Как я могу поймать весеннее сообщение JstTagException?

Я использую Spring MVC 3.0 с сеткой сайта и весенние пакеты сообщений. Например, у меня есть следующее:

<spring:message code="nav.item.name"/>

Если nav.item.name не существует в моем файле ресурсов, я получаю пустую страницу и JspTagException в консоли, которые я не могу поймать с помощью моего метода @ExceptionHandler. Я предполагаю, что не могу ее уловить, потому что ошибка является частью рендеринга представления. Я также попытался создать собственный HandlerInterceptorAdapter и безуспешно изменить web.xml. Интересно, что я также использовал следующий тег:

<fmt:message key="nav.item.name"/>

И в представлении отображается страница, но с "???????" для текста. На самом деле для меня более приемлемо, по крайней мере, показать страницу, но я бы предпочел использовать теги spring: message.

Мой вопрос: как перехватить JspTagException?

Трассировка стека:

2011-10-12 09: 31: 16,155 ОШИБКА [http-8080-2] RequestContextAwareTag - Нет сообщения с кодом 'BLAH 'для языкового стандарта' ko_KR '. javax.servlet.jsp.JspTagException: не найдено сообщение с кодом' BLAH 'для языкового стандарта' ko_KR '. в org.springframework.web.servlet.tags. MessageTag.doStartTagInternal (MessageTag.java:184) в org.springframework.web.servlet.tags.RequestContextAwareTag.doStartTag (RequestContextAwareTag.java:79) в org.apache.jsp.WEB_00. pages.common.nav_jsp._jspx_meth_spring_005fmessage_005f0 (nav_jsp.java:206) на org.apache.jsp.WEB_002dINF.pages.common.nav_jsp._jspService (nav_jsp.java:114) в org.apache.jasper.runtime.HttpJspBase.service (HttpJspBase.java:70) в javax.servlet.http.HttpServlet.service (HttpServlet.servlet. java: 717) в org.apache.jasper.servlet.JspServletWrapper.service (JspServletWrapper.java:386) в org.apache.jasper.servlet.JspServlet.serviceJspFile (JspServlet.java: 313) в org.apache.jasper.servlet.JspServlet.service (JspServlet.java:260) в javax.servlet.http.HttpServlet.service (HttpServlet.java:717) {{ 1}} на org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:290) на org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:206) {{ } в org.apache.catalina.core.ApplicationDispatcher.invoke (ApplicationDispatcher.java:646) в org.apache.catalina.core.ApplicationDispatcher.doInclude (ApplicationDispatcher.java:551) в org.apache.catalina.core.ApplicationDispatcher.include (ApplicationDispatcher.java:488) в org.springframew ork.web.servlet.view.InternalResourceView.renderMergedOutputModel (InternalResourceView.java:229) на org.springframework.web.servlet.view.AbstractView.render (AbstractView.java:250) на org.springframework.web.servlet.DispatcherServlet.render (DispatcherServlet.java:1047) в org.springframework.web.servlet.DispatcherServlet.doDispatch (DispatcherServlet.java:817) в springframework.web.servlet.DispatcherServlet.doService (DispatcherServlet.java:719) на org.springframework.web.servlet.FrameworkServlet.processRequest (FrameworkServlet.java:644) на orgwork.s web.servlet.FrameworkServlet.doGet (FrameworkServlet.java:549) на javax.servlet.http.HttpServlet.service (HttpServlet.java:617) в javax.servlet.http.HttpServlet.service (HttpServlet.java:717) в org.apache.catalina.core.ApplicationFilterDoFilter.in ( ApplicationFilterChain.java:290) на org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:206) на org.apache.catalina.core.ApplicationDispatcher.invoke (ApplicationDispatcher. java: 646) в org.apache.catalina.core.ApplicationDispatcher.doInclude (ApplicationDispatcher.java:551) в org.apache.catalina.core.ApplicationDispatcher.include (ApplicationDispatcher.java: 488) по адресу org.apache.jasper.runtime.JspRuntimeLibrary.include (JspRuntimeLibrary.java:968) по адресу org.apache.jsp.WEB_002dINF.sitemesh_002ddecorators.main_jp5.jsp_form_jsp_form_jsp_jsp_js_form_jsp.js_form_js 284) на org.apache.jsp.WEB_002dINF.sitemesh_002ddecorators.main_jsp._jspService (main_jsp.java:138) на org.apache.jasper.runtime.HttpJspBase.service (HttpJspBase.service (HttpJspBase.service) 70) в javax.servl et.http.HttpServlet.service (HttpServlet.java:717) в org.apache.jasper.servlet.JspServletWrapper.service (JspServletWrapper.java:386) в org.apache.jasper. servlet.JspServlet.serviceJspFile (JspServlet.java:313) на org.apache.jasper.servlet.JspServlet.service (JspServlet.java:260) на javax.servlet.http.HttpServlet. service (HttpServlet.java:717) в org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:290) в org.apache.catalina.core.ApplicationFilterChain ( ApplicationFilterChain.java:206) на org.apache.catalina.core.ApplicationDispatcher.invoke (ApplicationDispatcher.java:646) на org.apache.catalina.core.ApplicationDispatcher.doInclude (ApplicationDispatcher.java:551) в org.apache.catalina.core.ApplicationDispatcher.include (ApplicationDispatcher.java:488) в com.opensymphony.sitemesh.compatability.OldDecorator2NewDecorator.render (OldDecorator2NewDecorator.java:46) на com.opensymphony.sitemesh.webapp.decorator.BaseWebAppDecorator.render (BaseWeb.java }:33) opensymphony.sitemesh.webapp.SiteMeshFilter.doFilter (SiteMeshFilter.java:84) по адресу org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:235) по адресу. catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:206) по адресу org.springframework.orm.jpa.support.OpenEntityManagerInViewFilter.doFilterInternal (OpenEntityManagerInViewFilter.doFilterInternal (OpenEntityManagerInView}. web.filter.OncePerRequestFilter.doFilter (OncePerRequestFilter.java:76) в org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:235) {{1} }.catalg.ap core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:206) в org.apache.catalina.core.StandardWrapperValve.invoke (S tandardWrapperValve.java:233) в org.apache.catalina.core.StandardContextValve.invoke (StandardContextValve.java:191) в org.apache.catalina.core.StandardHostValve.invoke (. java: 127) в org.apache.catalina.valves.ErrorReportValve.invoke (ErrorReportValve.java:102) в org.apache.catalina.core.StandardEngineValve.invoke (StandardEngineValve.java: 109) в org.apache.catalina.connector.CoyoteAdapter.service (CoyoteAdapter.java:298) в org.apache.coyote.http11.Http11Processor.process (Http11Processor.java:859) на org.apache.coyote.http11.Http11Protocol $ Http11ConnectionHandler.process (Http11Protocol.java:588) на org.apache.tomcat.util.net.JIoEndpoint $ Worker.run (JIoEndpoint.java:489) на java.lang.Thread.run (Неизвестный источник)

Спасибо! Дэйв

5
задан Dave 12 October 2011 в 13:35
поделиться