IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Spring Java Discussion :

j_spring_security_check error 404 [Security]


Sujet :

Spring Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    802
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 802
    Par défaut j_spring_security_check error 404
    Bonjour,

    Je rencontre quelques difficultés avec ma configuration Spring Security (v3). J'utilise JSF normalement, mais pour avancer pas à pas, j'ai décidé de tenter un formulaire html simple.

    Le problème est que je rencontre une erreur 404 Page Not Found lorsque je valide le formulaire. Normalement, il devrait y avoir une servlet qui écoute l'url /j_spring_security_check, mais là rien du tout. Même lorsque je saisi l'url directement dans le navigateur j'ai une erreur 404
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    http://localhost:8080/monappli/j_spring_security_check?j_username=toto&j_password=toto
    Voici mon formulaire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <form action="/j_spring_security_check" method="post">
        <input type="text" name="j_username"/>
        <input type="password" name="j_password"/>
        <input type="submit"/>
    </form>
    Voici le web.xml :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    <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>
    Voici ma conf spring :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <http>
        <intercept-url pattern="/pages/user/**" access="ROLE_USER"/>
        <intercept-url pattern="/pages/admin/**" access="ROLE_ADMIN"/>
        <form-login login-page="/pages/connexion.html"
                         authentication-failure-url="/pages/loginfail.jsf"/>
    </http>
    Merci pour votre aide.

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    802
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 802
    Par défaut
    J'ai résolu mon problème. Tout d'abord, il semble que la servlet SpringSecurity ne supporte que la méthode POST pour l'authentification.

    Voici ma conf complète si cela peut aider quelqu'un à l'avenir.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
    	<http>
    		<intercept-url pattern="/pages/user/**" access="ROLE_USER"/>
    		<intercept-url pattern="/pages/admin/**" access="ROLE_ADMIN"/>
    		<form-login login-page="/pages/connexion.jsf"
    					authentication-failure-url="/pages/loginfail.jsf"
    					always-use-default-target="true"
    					default-target-url="/redirect.jsp"/>
     
    		<http-basic/>
    		<remember-me/>
    		<logout invalidate-session="true" logout-success-url="/pages/connexion.jsf"/>
    	</http>
    	<authentication-manager alias="authenticationManager">
    		<authentication-provider ref="authProvider"/>
    	</authentication-manager>
     
    	<beans:bean id="authProvider" class="security.MyAuthenticationProvider"/>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
     
    public class MyAuthenticationProvider
    extends AbstractUserDetailsAuthenticationProvider
    implements UserDetailsService {
     
    	@Override
    	public Authentication authenticate(Authentication auth)
    	throws AuthenticationException {
    		[...]
    		return new UsernamePasswordAuthenticationToken(login, password, grants);
    	}
     
    	@Override
    	public boolean supports(Class<? extends Object> arg0) {
    		return true;
    	}
     
    	@Override
    	protected void additionalAuthenticationChecks(UserDetails arg0, UsernamePasswordAuthenticationToken arg1)
    	throws AuthenticationException {
     
    	}
     
    	@Override
    	protected UserDetails retrieveUser(String user, UsernamePasswordAuthenticationToken token)
    	throws AuthenticationException {
    		return loadUserByUsername(user);
    	}
     
    	@Override
    	public UserDetails loadUserByUsername(String user) throws UsernameNotFoundException, DataAccessException {
    		return null;
    	}
     
    }

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. HTTP Error 404 - File or Directory not found
    Par kince dans le forum IIS
    Réponses: 0
    Dernier message: 17/09/2007, 16h59
  2. iis 5 error 404 asp.net
    Par hoda dans le forum IIS
    Réponses: 2
    Dernier message: 12/02/2007, 19h34
  3. Besoin d'aide Jboss-struts error 404
    Par Dx_ter dans le forum Wildfly/JBoss
    Réponses: 1
    Dernier message: 24/01/2007, 20h20
  4. Error 404 en lecture de fichier..
    Par Nemesys dans le forum Tomcat et TomEE
    Réponses: 4
    Dernier message: 15/01/2007, 10h42
  5. Error 404 [CGI]
    Par nah_wah dans le forum Web
    Réponses: 11
    Dernier message: 16/09/2005, 18h40

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo