Pregunta

Tengo una configuración de websphere 6.1 y la aplicación se está ejecutando, pero algunas solicitudes van a j_security_check pero la última (hay filtros asociados con J_security_check) generará un error 404.

Por ejemplo:

(1) El usuario publica en: http: // localhost: 9081 / Page / j_security_check Y funciona en Filter1, pero las solicitudes posteriores a Filter2 obtienen un error 404.

(1a) Tenga en cuenta que los siguientes filtros están asociados con 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) El código alcanza el código de filtro:

chain.doFilter (req, res);

WASReqURL tiene el siguiente valor de cookie, j_security_check lo necesita: http: // localhost: 9081 / Test / test.html

Idealmente, el cliente debería terminar en ' http: // localhost: 9081 / Test / test. html '

Pero recibo un error 404 en una solicitud posterior a j_security_check: http: // localhost: 9081 / Page / j_security_check

Además, aquí hay un fragmento relevante en el archivo 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>

La pregunta es qué controla 'J_security_check' desde la perspectiva de la esfera web.

Detalles: RAD7 Websphere Server 6.1, cuadro local

¿Fue útil?

Solución

Vaya a Servidores de aplicaciones > servidor1 > Contenedor web & Gt; Propiedades personalizadas y asegúrese de que la variable com.ibm.ws.webcontainer.invokefilterscompatibility esté establecida en verdadero. Esta variable sirve como el interruptor j_security_check para la aplicación.

Otros consejos

Este es un problema muy conocido con WebSphere 6.1 y Spring Security.

Debe agregar esta variable a las propiedades del servidor utilizando la consola de administración:

    com.ibm.ws.webcontainer.invokefilterscompatibility = true

también recuerdo que necesita instalar algún parche para websphere, dependiendo de la versión exacta.

Simplemente busque en Internet la variable que menciono y encontrará la solución ...

Espero que ayude ...

Miguel

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top