我需要将用户重定向到某人修改网址的特定错误页面
表示例如: - 如果有人将网址从http://localhost:8085/PSST/PSS
更改为http://localhost:8085/DLMS_Client/PS
,则应用程序应将用户重定向到默认错误页面。
过去几天我一直在努力解决这个问题。
任何帮助都会得到满足。
先谢谢。
答案 0 :(得分:0)
为此你可以使用Spring的SimpleExceptionMappingResolver
。您需要在projet-servlet.xml
<!-- ExceptionResolverMapping: generate exception specific view -->
<bean class="org.springframework.web.servlet.handler.SimpleMappingExceptionResolver">
<property name="exceptionMappings">
<props>
<prop key="com.rail.eseva.exception.UnexpectedException">/unexpectedExceptionView</prop>
</props>
</property>
<property name="defaultErrorView" value="/genericExceptionView"/>
</bean>
创建一个自定义的异常类,如 -
public class UnexpectedException extends RuntimeException {
private static final long serialVersionUID = 1L;
private String message;
private Date date;
public UnexpectedException(String message, Date date) {
this.date=date;
this.message=message;
}
/**
* @return the message
*/
@Override
public String getMessage() {
return message;
}
/**
* @return the date
*/
public Date getDate() {
return date;
}
@Override
public String toString() {
return message +" "+date.getTime();
}
}
和通用异常视图页
<body>
<h2>Exception occured at: <fmt:formatDate value="${exception.date}" pattern="dd.MM.yyyy"/></h2>
<h2>Exception message :</h2> ${exception.message}
</body>
现在您可以根据您的要求抛出此异常:
throw new UnexpectedException(e.getMessage(), new Date());