/ error / *で発生するすべてのものを処理するSpringDispatcherservletを備えたWebアプリ(2.5サーブレット仕様)と、それを/error/にルーティングするように構成されたエラーページがあります。
<servlet>
<servlet-name>errorServlet</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>errorServlet</servlet-name>
<url-pattern>/erorr/*</url-pattern>
</servlet-mapping>
<error-page>
<exception-type>java.lang.Throwable</exception-type>
<location>/erorr/</location>
</error-page>
およびerrorServlet-servelt.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd">
<context:annotation-config/>
<context:component-scan base-package="some.base.package"/>
<bean id="simpleUrlController" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
<props>
<prop key="/*">errorController</prop>
</props>
</property>
</bean>
<bean id="errorController" class="ErrorController">
<property name="formView" value="formView"/>
<property name="commandClass" value="Error"/>
<property name="commandName" value="errorNAMe"/>
</bean>
<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/jsp/"/>
<property name="suffix" value=".jsp"/>
</bean>
</beans>
ヘルプが必要なスポット:
- これがエラーに取り組むための最良のアプローチであるかどうか。
- 構成で宣言できるSimpleMappingExceptionResolverがあることは知っていますが、このクラスは、Springコントローラーからの例外のみで、他のクラスではないという点で優れているとどこかで読みました。