Pergunta

Por isso, estamos executando uma aplicação web que tem sido testado em Tomcat, Glassfish, WebLogic e WebSphere. Todos funcionar corretamente exceto WebSphere. A questão é que os filtros não são processados ??para arquivos em um determinado diretório.

Por exemplo, eu tenho um filtro que verifica lanuage do usuário a partir de cookies do navegador e outra que começa o nome do usuário, no web.xml não estão configurados assim:

<!-- ****************************** -->
<!-- * Security context filtering * -->
<!-- ****************************** -->

<filter>
    <filter-name>SetSecurityContextFilter</filter-name>
    <filter-class>
        com.test.security.SecurityContextServletFilter
    </filter-class>
</filter>

<!-- ****************************** -->
<!-- ** Locale context filtering ** -->
<!-- ****************************** -->

<filter>
    <filter-name>SetLocaleFilter</filter-name>
    <filter-class>
        com.test.locale.LocaleServletFilter
    </filter-class>
</filter>

<filter-mapping>
    <filter-name>SetSecurityContextFilter</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>

<filter-mapping>
    <filter-name>SetLocaleFilter</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping> 

Ambos os filtros definir uma variável ThreadLocal estática que pode ser acessado a partir de um getter estático, mas quando o mesmo arquivo 'test.jsp' Chama o getters, sob ' contextroot / js' eles retornam o padrão valores (como se não definir), enquanto sob ' contextroot / pages' eles estão corretos.

Todas as idéias?

Agradecemos antecipadamente.

Foi útil?

Solução

Eu descobri qual era o problema!

Na minha web.xml mais abaixo eu tenho este:

    <security-constraint>
        <web-resource-collection>
            <web-resource-name>Test Application</web-resource-name>
            <url-pattern>/pages/*</url-pattern>
        </web-resource-collection>
        <auth-constraint>
             ...
        </auth-constraint>
    </security-constraint>

Se eu mudar o padrão de URL para '/ *' para que cada página sob a raiz de contexto requer um login, todos os filtros estão correctamente executado, o tempo todo. Isso significa, porém, que a minha página de login não tem acesso a quaisquer arquivos CSS, mas isso é outro problema!

Saúde.

Outras dicas

Definindo a página de login como a forma-login-page poderia ajudar ele conseguir recursos css do seguinte modo <form-login-config> <form-login-page>/Login.jsp</form-login-page>

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top