Как справиться с 404 с Spring Security? - PullRequest
1 голос
/ 16 ноября 2011

Я нашел только связанную тему для c #, пожалуйста, не вините меня, если я пропустил ресурс.

Это выглядит примерно так:

/ project / blablaentered и наполнено 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>

ОБНОВЛЕНИЕ: Пожалуйста, следуйте решению: Пользовательский 404 сПружинный диспетчерСервлет

Ответы [ 2 ]

1 голос
/ 16 ноября 2011

Самый простой способ, вероятно, - включить элемент error-page внутри web.xml, если вы не возражаете, что это обычный JSP (т. Е. Нет контроллера).Таким образом, URL за пределами вашего DispatcherServlet, который сгенерирует 404 из вашего контейнера сервлета, будет идти по тому же пути, что и любой URL, который Spring не может сопоставить с контроллером на основе вашей конфигурации.

Если этого недостаточно, вы можете определить метод @Exception для конкретного контроллера или использовать HandlerExceptionResolver.

0 голосов
/ 29 августа 2016

Вам нужно добавить класс:

import org.springframework.security.web.context.AbstractSecurityWebApplicationInitializer;


public class SpringSecurityInitializer extends AbstractSecurityWebApplicationInitializer {

    // Do nothing

}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...