访问使用不工作的Spring Security否认页(access denied page usin

2019-09-29 02:53发布

我使用下面的配置拒绝访问页面

 <security:access-denied-handler error-page="/noAccess"/>

然后映射/ noaccess下到控制器。 但是当我尝试接入资源到我没有访问我得到一个错误页面

HTTP状态404 - 浏览器/ mycontext / noaccess下

不过,当我键入整个URL 的http://abc.mycompany:8080 / mycontext / noaccess下我可以看到错误页面。 任何想法,为什么春天不重定向到控制器?

Answer 1:

我使用下面的配置拒绝访问页面在我的项目,这是为我工作。

根据您的需要进行更改。

<security:http auto-config="true" use-expressions="true" access-denied-page="/accessDenied.jsp">

        <security:form-login login-page="/index.jsp"
            default-target-url="/jsp/home.jsp" />


        <security:intercept-url pattern="/jsp/listInBetweenPlaces.jsp"
            access="permitAll" />
</security:http>


Answer 2:

以下添加到您的bean配置。

  <mvc:view-controller path="/uncaughtException"/>
  <mvc:view-controller path="/resourceNotFound"/>
  <mvc:view-controller path="/dataAccessFailure"/>

 <bean class="org.springframework.web.servlet.handler.SimpleMappingExceptionResolver"    p:defaultErrorView="uncaughtException">
    <property name="exceptionMappings">
        <props>
            <prop key=".DataAccessException">dataAccessFailure</prop>
            <prop key=".NoSuchRequestHandlingMethodException">resourceNotFound</prop>
            <prop key=".TypeMismatchException">resourceNotFound</prop>
            <prop key=".MissingServletRequestParameterException">resourceNotFound</prop>
        </props>
    </property>
</bean>

创建以下页面和这些添加到关联的文件夹

     resourceNotFound.jsp
     uncaughtException.jsp
     dataAccessFailure.jsp


文章来源: access denied page using spring security not working