我发现只有c#的相关话题,如果我错过了资源,请不要怪我。
看起来像
/ project / blablaentered and 404 with 404。
实际上我只想在抛出404页面时指定我自己的页面。
我的安全xml:
<security:http auto-config="true" use-expressions="true" >
<security:form-login login-processing-url="/static/j_spring_security_check" login-page="/login" authentication-failure-url="/login?login_error=t" default-target-url="/home"/>
<security:intercept-url pattern="/home" access="isAuthenticated()" />
<security:intercept-url pattern="/home/try" access="hasRole('ROLE_EDITOR')"/>
<security:access-denied-handler error-page="/accessDenied"/>
</security:http>
更新:请关注解决方案:Custom 404 using Spring DispatcherServlet
答案 0 :(得分:1)
最简单的方法可能是在error-page
内启用web.xml
元素,只要你不介意它是普通的JSP(即没有控制器)。这样,DispatcherServlet
之外的将从servlet容器生成404的URL将遵循与Spring无法根据您的配置映射到控制器的任何URL相同的路径。
如果这还不够好,您可以为特定控制器定义@Exception
方法,或使用HandlerExceptionResolver
。
答案 1 :(得分:0)
您需要添加课程:
import org.springframework.security.web.context.AbstractSecurityWebApplicationInitializer;
public class SpringSecurityInitializer extends AbstractSecurityWebApplicationInitializer {
// Do nothing
}