Странная ошибка 404 / j_security_check с Websphere 6.1 - PullRequest
2 голосов
/ 26 января 2009

У меня есть конфигурация websphere 6.1, и приложение работает, но некоторые запросы идут к j_security_check, но последний (есть фильтры, связанные с J_security_check) выдаст ошибку 404.

Например:

(1) Сообщения пользователя в: http://localhost:9081/Page/j_security_check И это работает на Filter1, но позже запросы к Filter2 получают ошибку 404.

(1a) Обратите внимание, что следующие фильтры связаны с j_security_check:

<filter-mapping>
        <filter-name>Filter1</filter-name>
        <url-pattern>/j_security_check</url-pattern>
    </filter-mapping>
    <filter-mapping>
        <filter-name>Filter2</filter-name>
        <url-pattern>/j_security_check</url-pattern>
    </filter-mapping>

(2) Код достигает кода фильтра:

chain.doFilter (req, res);

WASReqURL имеет следующее значение cookie, это необходимо для j_security_check: http://localhost:9081/Test/test.html

В идеале клиент должен в конечном итоге набрать 'http://localhost:9081/Test/test.html'

Но я получаю ошибку 404 при последующем запросе к j_security_check: http://localhost:9081/Page/j_security_check

Также здесь приведен соответствующий фрагмент в файле web.xml.

<login-config>
    <auth-method>FORM</auth-method>
    <form-login-config>
        <form-login-page>/Go</form-login-page>
        <form-error-page>/Go</form-error-page>
    </form-login-config>
</login-config>

Вопрос в том, что контролирует J_security_check с точки зрения веб-сферы.

Подробнее: RAD7 Websphere Server 6.1, локальная коробка

Ответы [ 2 ]

1 голос
/ 19 января 2012

Перейдите на Серверы приложений> сервер1> Веб-контейнер> Пользовательские свойства и убедитесь, что для переменной com.ibm.ws.webcontainer.invokefilterscompatibility установлено значение true. Эта переменная служит переключателем j_security_check для приложения.

1 голос
/ 16 апреля 2009

Это очень известная проблема с WebSphere 6.1 и Spring Security.

Вам необходимо добавить эту переменную в свойства сервера, используя консоль администратора:

    com.ibm.ws.webcontainer.invokefilterscompatibility = true

также я помню, вам нужно установить какой-нибудь патч для websphere, в зависимости от точной версии.

Просто посмотрите в интернете на упомянутую мной переменную, и вы найдете решение ...

Надеюсь, это поможет ...

Miguel

...