Problema Spring Security

Olá pessoal tudo bem ?

Estou com um probleminha com o Spring Security, sou iniciante…

Basicamente ao fazer o login a pagina que deveria ser exibida retorna o seguinte erro HTTP Status 404 - /SpringDB/admin/
Entretanto se eu coloco o final da pagina no endereço a pagina que deveria ser exibida apos o login é carregada.

http://localhost:8084/SpringDB/admin/index.jsp

Alguem sabe porque isso está acontecendo ?

Abraços.

como vc esta fazendo o redirecionamento?

Segue o applicationContext.xml

[code]<?xml version="1.0" encoding="UTF-8"?>

<beans:beans xmlns=“http://www.springframework.org/schema/security

xmlns:xsi=“http://www.w3.org/2001/XMLSchema-instance

xmlns:beans=“http://www.springframework.org/schema/beans

xsi:schemaLocation="http://www.springframework.org/schema/beans

http://www.springframework.org/schema/beans/spring-beans.xsd

http://www.springframework.org/schema/security

http://www.springframework.org/schema/security/spring-security-3.1.xsd">

<jdbc-user-service data-source-ref=“dataSource”

users-by-username-query=“SELECT username, password, ‘true’ as enable FROM users WHERE username=?”

authorities-by-username-query=“SELECT username, authority FROM users WHERE username=?”

/>

<beans:bean id=“dataSource” class=“org.springframework.jdbc.datasource.DriverManagerDataSource” >

<beans:property name=“url” value=“jdbc:mysql://localhost:3306/security” />

<beans:property name=“driverClassName” value=“com.mysql.jdbc.Driver” />

<beans:property name=“username” value=“root” />

<beans:property name=“password” value="" />

</beans:bean>

<beans:bean id=“messageSource” class=“org.springframework.context.support.ReloadableResourceBundleMessageSource”>
<beans:property name=“basename” value=“classpath:org/springframework/security/messages”/>
</beans:bean>[/code]

Segue o applicationContext.xml

[code]<?xml version="1.0" encoding="UTF-8"?>

<beans:beans xmlns=“http://www.springframework.org/schema/security

xmlns:xsi=“http://www.w3.org/2001/XMLSchema-instance

xmlns:beans=“http://www.springframework.org/schema/beans

xsi:schemaLocation="http://www.springframework.org/schema/beans

http://www.springframework.org/schema/beans/spring-beans.xsd

http://www.springframework.org/schema/security

http://www.springframework.org/schema/security/spring-security-3.1.xsd">

<jdbc-user-service data-source-ref=“dataSource”

users-by-username-query=“SELECT username, password, ‘true’ as enable FROM users WHERE username=?”

authorities-by-username-query=“SELECT username, authority FROM users WHERE username=?”

/>

<beans:bean id=“dataSource” class=“org.springframework.jdbc.datasource.DriverManagerDataSource” >

<beans:property name=“url” value=“jdbc:mysql://localhost:3306/security” />

<beans:property name=“driverClassName” value=“com.mysql.jdbc.Driver” />

<beans:property name=“username” value=“root” />

<beans:property name=“password” value="" />

</beans:bean>

<beans:bean id=“messageSource” class=“org.springframework.context.support.ReloadableResourceBundleMessageSource”>
<beans:property name=“basename” value=“classpath:org/springframework/security/messages”/>
</beans:bean>[/code]
[/quote]

Adiciona isso

[code]<form-login login-page="/login.jsp" [color=red]default-target-url="/index.jsp"[/color] authentication-failure-url="/login.jsp?error=invalido"/>

//default-target-url=/index.jsp se authentication tiver successo, você será redirecionado para “/index.jsp”[/code]

Segue o applicationContext.xml

[code]<?xml version="1.0" encoding="UTF-8"?>

<beans:beans xmlns=“http://www.springframework.org/schema/security

xmlns:xsi=“http://www.w3.org/2001/XMLSchema-instance

xmlns:beans=“http://www.springframework.org/schema/beans

xsi:schemaLocation="http://www.springframework.org/schema/beans

http://www.springframework.org/schema/beans/spring-beans.xsd

http://www.springframework.org/schema/security

http://www.springframework.org/schema/security/spring-security-3.1.xsd">

<jdbc-user-service data-source-ref=“dataSource”

users-by-username-query=“SELECT username, password, ‘true’ as enable FROM users WHERE username=?”

authorities-by-username-query=“SELECT username, authority FROM users WHERE username=?”

/>

<beans:bean id=“dataSource” class=“org.springframework.jdbc.datasource.DriverManagerDataSource” >

<beans:property name=“url” value=“jdbc:mysql://localhost:3306/security” />

<beans:property name=“driverClassName” value=“com.mysql.jdbc.Driver” />

<beans:property name=“username” value=“root” />

<beans:property name=“password” value="" />

</beans:bean>

<beans:bean id=“messageSource” class=“org.springframework.context.support.ReloadableResourceBundleMessageSource”>
<beans:property name=“basename” value=“classpath:org/springframework/security/messages”/>
</beans:bean>[/code]
[/quote]

Adiciona isso

[code]<form-login login-page="/login.jsp" [color=red]default-target-url="/index.jsp"[/color] authentication-failure-url="/login.jsp?error=invalido"/>

//default-target-url=/index.jsp se authentication tiver successo, você será redirecionado para “/index.jsp”[/code][/quote]

Raphael , essa tag ja está no applicationContext

Abraços e obrigado

deu certo?

[quote=raphael.ricci]deu certo?

[/quote]

Então essa tag que vc passou ja estava no projeto eu apenas adicionei o default-target-url="/index.jsp" que não estava, mas continuou o mesmo problema.

Engraçado que a primeira vez que rodei esse exemplo funcionou perfeitamente agora ele ta com esse pau e não descubro o que é.

Obrigado por estar ajudando.

manda o log de erro

Não direciona aparece a mesma coisa na pagina .

HTTP Status 404 - /SpringDB/admin/

type Status report

message /SpringDB/admin/

description The requested resource (/SpringDB/admin/) is not available.

Apache Tomcat/7.0.22

Se eu colocar o index.jsp no fim da pagina ela carrega, mas o correto era carregar esse endereço completo.

a página (index.jsp) que você direciona esta dentro dessa pasta?

Está sim, tanto que depois que a indico no final do endereço na barra de endereço ela carrega normalmente, caso eu tenha feito o login corretamente.

Da uma olhada no video.

http://www.screenr.com/dvC7

Abraços

Você configurou o web.xml corretamente?

<listener>
	 
	<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
	 
</listener>
	 
<filter>
 
	<filter-name>springSecurityFilterChain</filter-name>
 
	<filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
	 
</filter>
	 
<filter-mapping>
	 
	<filter-name>springSecurityFilterChain</filter-name>
	 
        <url-pattern>/*</url-pattern>

</filter-mapping>

[quote=victormagno]Você configurou o web.xml corretamente?

[code]

<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
<filter-name>springSecurityFilterChain</filter-name>

<filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
<filter-name>springSecurityFilterChain</filter-name>
 
    <url-pattern>/*</url-pattern>
[/code][/quote]

Cara matou a charada rs, era isso mesmo meu web.xml estava errado puts e eu achando que o problema era no applicationContext.

Obrigado a todos pela ajuda.

Abraços.

Nada, Valeu!