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

JDBC Java Discussion :

NullPointerException JEE JSF


Sujet :

JDBC Java

  1. #1
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2016
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2016
    Messages : 75
    Points : 50
    Points
    50
    Par défaut NullPointerException JEE JSF
    salut

    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
    36
    37
    38
    39
    40
    41
    42
    43
     
    package com.intervention.jsf.dao;
     
    import java.sql.Connection;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.sql.SQLException;
     
     
    import com.intervention.jsf.util.DbConn;
     
    public class LoginDAO {
     
    	public static String validate(String user, String password) throws SQLException {
    		Connection con = null;
    		PreparedStatement ps = null;
    		String type="Undefined";
    			con = DbConn.connexion();
    			ps = con.prepareStatement("Select LOGIN, PASSWORD,type from INTERVENANT where LOGIN = ? and PASSWORD = ?");
    			ps.setString(1, user);
    			ps.setString(2, password);
    		    ResultSet rs = ps.executeQuery();
     
    			if (rs.next()) {
    				type=rs.getString(3);
    				return type;
    			}
    			// hna mli makaykonch chi user type tatkon null att nchofo blan
    			if(type == "Undefined")
     
     
    			return "fail";
     
     
     
     
     
    			return type;	
     
    			}
     
     
    }
    et

    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
     
    	public String validateUsernamePassword() throws SQLException {
    		String test=null;
    		String valid = LoginDAO.validate(login, password);
     
    		if (valid.equals("admin")) {
    			HttpSession session = SessionBean.getSession();
    			session.setAttribute("username", login);
    			test="admin";
    		} else  if (valid.equals("intervenant")) {
    			HttpSession session = SessionBean.getSession();
    			session.setAttribute("username", login);
    			test= "intervenant";
    		}
    		else if(valid.equals("false")) {
    			HttpSession session = SessionBean.getSession();
    			session.setAttribute("username", login);
    			test= "fail";
    		}
    		return test;
    l'erreur dis que ca viens de ces deux classes ci-dessus
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    Caused by: java.lang.NullPointerException
    	at com.intervention.jsf.dao.LoginDAO.validate(LoginDAO.java:18)
    	at com.intervention.jsf.beans.intervenant.validateUsernamePassword(intervenant.java:55)
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    	at java.lang.reflect.Method.invoke(Method.java:497)
    	at com.sun.el.parser.AstValue.invoke(AstValue.java:289)
    	at com.sun.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:304)
    	at com.sun.faces.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:105)
    	at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:87)
    aider moi svp

  2. #2
    Membre expérimenté Avatar de Nico02
    Homme Profil pro
    Developpeur Java/JEE
    Inscrit en
    Février 2011
    Messages
    728
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Developpeur Java/JEE
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2011
    Messages : 728
    Points : 1 622
    Points
    1 622
    Par défaut
    Salut,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Caused by: java.lang.NullPointerException
    	at com.intervention.jsf.dao.LoginDAO.validate(LoginDAO.java:18)
    L'erreur indique que tu as un NPE à la ligne 18 de ta classe LoginDAO dans la méthode validate().

    Avec le décalage je ne suis pas certain de savoir quelle est la bonne ligne mais tu as 2 possibilités.

    -> con = DbConn.connexion();.
    On voit que l'erreur provient de la méthode connexion() de ta classe DbConn, donc sans ce code il va être difficile de t'aider.

    -> ps = con.prepareStatement("Select LOGIN, PASSWORD,type from INTERVENANT where LOGIN = ? and PASSWORD = ?");.
    Dans ce cas c'est que ton objet "con" est null ce qui indique que dans tous les cas il y a un problème dans ta méthode connexion().

  3. #3
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2016
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2016
    Messages : 75
    Points : 50
    Points
    50
    Par défaut
    voici le code de la classe DbConn

    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
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
     
    package com.intervention.jsf.util;
     
    import java.sql.Connection;
    import java.sql.DatabaseMetaData;
    import java.sql.DriverManager;
    import java.sql.SQLException;
     
    /**
     * This program demonstrates how to establish database connection to Microsoft
     * SQL Server.
     * @author www.codejava.net
     *
     */
    public class DbConn {
     
        public static Connection connexion() {
     
            Connection conn = null;
     
            try {
     
                String dbURL = "jdbc:sqlserver://localhost;instanceName=SQLEXPRESS;integratedSecurity=true";
                String user = "sa";
                String pass = "123456789";
                conn = DriverManager.getConnection(dbURL, user, pass);
                if (conn != null) {
                    DatabaseMetaData dm = (DatabaseMetaData) conn.getMetaData();
                    System.out.println("Driver name: " + dm.getDriverName());
                    System.out.println("Driver version: " + dm.getDriverVersion());
                    System.out.println("Product name: " + dm.getDatabaseProductName());
                    System.out.println("Product version: " + dm.getDatabaseProductVersion());
                }
     
            } catch (SQLException ex) {
                ex.printStackTrace();
            } finally {
                try {
                    if (conn != null && !conn.isClosed()) {
                        conn.close();
                    }
                } catch (SQLException ex) {
                    ex.printStackTrace();
                }
            }
            return conn;
        }
    }
    je suis vraiment bloquè
    j'utlise sql server 2014 et je suis connectè en mode sql, login : sa password :123456789
    j'ai inclus le driver de sql server dans le dossier lib de mon projet
    c ma premiere application web et c mon projet PFE de licence.. et le temp presse vraiment :/

  4. #4
    Membre confirmé
    Avatar de Jacques Beauregard
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2015
    Messages
    231
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2015
    Messages : 231
    Points : 595
    Points
    595
    Par défaut
    Bonjour,

    Tu peux mettre des points d'arrêt sur les bouts de code mentionnés par Nico02
    Tu verras rapidement ce qui est "Null" et provoque l'exception.
    Il ne faut jamais prendre les gens pour des cons, mais il ne faut pas oublier qu'ils le sont...

    Le guide du débutant pour apprendre à programmer en Java - N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  5. #5
    Membre expérimenté Avatar de Nico02
    Homme Profil pro
    Developpeur Java/JEE
    Inscrit en
    Février 2011
    Messages
    728
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Developpeur Java/JEE
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2011
    Messages : 728
    Points : 1 622
    Points
    1 622
    Par défaut
    Je ne vois pas la ligne de chargement du driver

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
    Sans cette ligne effectivement ça ne risque pas de marcher.

    Dans tous les cas si ton code ne passe pas dans le bloc

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    if (conn != null) {
      DatabaseMetaData dm = (DatabaseMetaData) conn.getMetaData();
      System.out.println("Driver name: " + dm.getDriverName());
      System.out.println("Driver version: " + dm.getDriverVersion());
      System.out.println("Product name: " + dm.getDatabaseProductName());
      System.out.println("Product version: " + dm.getDatabaseProductVersion());
    }
    C'est que tu as un soucis au niveau de ta connexion à ta base.

  6. #6
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2016
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2016
    Messages : 75
    Points : 50
    Points
    50
    Par défaut
    ouiii Justement Monsieur, j'ai un probleme pour la connexion avec la BDD sql server
    ca marchai très bien avec MySql ^^
    imagine ca fait 5 jours que je suis bloquè là..
    et j'ai ma soutenance le 10 juin donc 15 jours :/

  7. #7
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Points : 29 131
    Points
    29 131
    Billets dans le blog
    2
    Par défaut
    Salut,

    L'URL jdbc devrait être de la forme : "jdbc:sqlserver://localhost\\SQLEXPRESS:1433;databaseName=<nom de la base>;integratedSecurity=true;" ou tu remplaces <nom de la base> par le nom de ton instance.

    Si le pilote est de type 4 (sqljdbc4*.jar), le Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); n'est pas nécessaire.
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  8. #8
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2016
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2016
    Messages : 75
    Points : 50
    Points
    50
    Par défaut
    c'est exactement ce que j'ai fait plusieurs fois Mais je n'arrive toujours pas à récupérer le login de la BDD
    Ça me tue !

  9. #9
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Points : 29 131
    Points
    29 131
    Billets dans le blog
    2
    Par défaut
    Ce n'est pas ce que tu montres dans ton code en tout cas !
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  10. #10
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2016
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2016
    Messages : 75
    Points : 50
    Points
    50
    Par défaut
    voici ma classe Connexion Monsieur
    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
     
    package com.intervention.jsf.util;
    import java.sql.Connection;
    import java.sql.DriverManager;
    public class Connexion {
    	private static Connection con=null;
    	public static Connection openconnection (){
    		 String user="sa";
    		 String password="123456789";
    		String conUrl = "jdbc:sqlserver://localhost\\SQLEXPRESS:1433;databaseName=<gestion_intervention>;integratedSecurity=true;";
    	      try {
    			Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
     
    			con=DriverManager.getConnection(conUrl, user, password);
    		} catch (Exception e) {
    		System.out.println("error dans con " +e);
    		}
     
     
    		return con;
    	}
    }
    et la Classe LoginDAO qui reccupère le Login
    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
     
    import java.sql.SQLException;
    import com.intervention.jsf.util.Connexion;
    public class LoginDAO {
    	public static String validate(String user, String password) throws SQLException {
    		Connection con = null;
            PreparedStatement ps = null;
        	String type="Undefined";
     
     
                con = Connexion.openconnection();
                ps = con.prepareStatement("Select login, password,type from intervenant where login = ? and password = ?");
                ps.setString(1, user);
                ps.setString(2, password);
     
                ResultSet rs = ps.executeQuery();
     
    			if (rs.next()) {
    				type=rs.getString(3);
    			}
    			// hna mli makaykonch chi user type tatkon null att nchofo blan
    			if(type == "Undefined")
    				return "false";
     
     
    			return type;
            }        			}
    et Enfin ma Classe Intervenant ( ou user )
    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
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
     
    package com.intervention.jsf.beans;
     
    import java.sql.SQLException;
     
    import javax.faces.bean.ManagedBean;
    import javax.faces.bean.SessionScoped;
    import javax.servlet.http.HttpSession;
     
    import com.intervention.jsf.dao.LoginDAO;
     
    @ManagedBean
    @SessionScoped
    public class intervenant {
    	private int id_intervenant;
    	private String login;
    	private String password;
    	private String type;
    	public int getId_intervenant() {
    		return id_intervenant;
    	}
    	public void setId_intervenant(int id_intervenant) {
    		this.id_intervenant = id_intervenant;
    	}
    	public String getLogin() {
    		return login;
    	}
    	public void setLogin(String login) {
    		this.login = login;
    	}
    	public String getPassword() {
    		return password;
    	}
    	public void setPassword(String password) {
    		this.password = password;
    	}
    	public String getType() {
    		return type;
    	}
    	public void setType(String type) {
    		this.type = type;
    	}
    	public intervenant(int id_intervenant, String login, String password, String type) {
    		super();
    		this.id_intervenant = id_intervenant;
    		this.login = login;
    		this.password = password;
    		this.type = type;
    	}
    	public intervenant() {
    		super();
        }
     
    	public String validateUsernamePassword() throws SQLException {
    		String test=null;
    		String valid = LoginDAO.validate(login, password);
     
    		if (valid.equals("admin")) {
    			HttpSession session = SessionBean.getSession();
    			session.setAttribute("username", login);
    			test="admin";
    		} else  if (valid.equals("intervenant")) {
    			HttpSession session = SessionBean.getSession();
    			session.setAttribute("username", login);
    			test= "intervenant";
    		}
    		else if(valid.equals("false")) {
    			HttpSession session = SessionBean.getSession();
    			session.setAttribute("username", login);
    			test= "fail";
    		}
    		return test;
     
     
     
    		}
    et voici l'erreur

    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
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
     
    javax.faces.el.EvaluationException: java.lang.NullPointerException
    	at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:101)
    	at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:102)
    	at javax.faces.component.UICommand.broadcast(UICommand.java:315)
    	at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:790)
    	at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1282)
    	at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:81)
    	at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
    	at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:198)
    	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:658)
    	at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1682)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:344)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
    	at com.intervention.jsf.filter.AuthorizationFilter.doFilter(AuthorizationFilter.java:40)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
    	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:316)
    	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:160)
    	at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:734)
    	at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:673)
    	at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:99)
    	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:174)
    	at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:416)
    	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:283)
    	at com.sun.enterprise.v3.services.impl.ContainerMapper$HttpHandlerCallable.call(ContainerMapper.java:459)
    	at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:167)
    	at org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:206)
    	at org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:180)
    	at org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:235)
    	at org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
    	at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:283)
    	at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:200)
    	at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:132)
    	at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:111)
    	at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
    	at org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:536)
    	at org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:112)
    	at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:117)
    	at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:56)
    	at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:137)
    	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:591)
    	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:571)
    	at java.lang.Thread.run(Thread.java:745)
    Caused by: java.lang.NullPointerException
    	at com.intervention.jsf.dao.LoginDAO.validate(LoginDAO.java:15)
    	at com.intervention.jsf.beans.intervenant.validateUsernamePassword(intervenant.java:55)
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    	at java.lang.reflect.Method.invoke(Method.java:497)
    	at com.sun.el.parser.AstValue.invoke(AstValue.java:289)
    	at com.sun.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:304)
    	at com.sun.faces.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:105)
    	at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:87)
    	... 41 more

  11. #11
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Points : 29 131
    Points
    29 131
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par soufianet Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    		String conUrl = "jdbc:sqlserver://localhost\\SQLEXPRESS:1433;databaseName=<gestion_intervention>;integratedSecurity=true;";
    Enlève les chevrons (< et >) dans l'url : je les ai mis dans mon message juste pour indiquer l'endroit où il fallait mettre le nom de l'instance.

    String conUrl = "jdbc:sqlserver://localhost\\SQLEXPRESS:1433;databaseName=gestion_intervention;integratedSecurity=true;";
    Bien sûr, le 1433, c'est le port par défaut : si tu as changé ce port, il faut bien sûr mettre celui que tu as indiqué.
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  12. #12
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2016
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2016
    Messages : 75
    Points : 50
    Points
    50
    Par défaut
    Je viens de corriger ça, et toujours la meme erreur..

  13. #13
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2016
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2016
    Messages : 75
    Points : 50
    Points
    50
    Par défaut
    et j'ai jamais changè le port
    quand j'utilise TCP-viewer je trouve que le port ou sql server ecoute est : 61615

  14. #14
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Points : 29 131
    Points
    29 131
    Billets dans le blog
    2
    Par défaut
    SQLServer/SQLExpress n'est pas vraiment mon domaine de compétence. A priori, ton SQLExpress est installé avec port dynamique et je ne sais pas ce que ça signifie exactement (est-ce qu'il change ? Si oui, quand est-ce qu'il change ?). Essaye déjà avec ce port pour voir, mais si ce port change régulièrement, tu vas être embêté.
    D'après MSDN, la configuration static/dynamique se gère par le SQL Server Configuration Manager :
    In SQL Server Configuration Manager and click on SQL Server Network Configuration in the left pane and right-click TCP/IP protocol and select option Properties. Goto IP Address tab and scroll-down to APAll section. Remove value for TCP Dynamic Ports (do not enter Zero 0 !!!) and enter the port 1433 for TCP Port.
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  15. #15
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2016
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2016
    Messages : 75
    Points : 50
    Points
    50
    Par défaut
    j'ai fait exactement la mème manipulation et ca marche toujours pas

    voici ma Base de Donnèes :

    Nom : bdd.png
Affichages : 334
Taille : 124,8 Ko

    et ma page login.xhtml que j'execute :

    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
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml"
          xmlns:ui="http://java.sun.com/jsf/facelets"
          xmlns:f="http://java.sun.com/jsf/core"
          xmlns:h="http://java.sun.com/jsf/html">
    <h:head>
    <title>Login Application in JSF 2</title>
    <style>
    .container {
      border: 1px solid #CCC;
      width: 420px;
      margin: 0px auto;
      margin-top: 150px;
      padding: 15px;
      border-radius: 5px;
    }
    label {
      display: block;
      font-weight: bold;
      color: #808080;
    }
     
    input {
      width: 95%;
      padding: 8px 12px;
      border: 1px solid #CCC;
      border-radius: 4px;
      margin: 10px 0px;
    }
     
    input[type="submit"] {
      width: 100%;
      background-color: green;
      color: white;
    }
    }
    </style>       
    </h:head>
    <h:body>
    <ui:decorate template="template.xhtml">
    <ui:define name="top">
            <h:graphicImage value="images/yazaki.jpg" />
    </ui:define>
    <div class="container">
    <ui:define name="container">
    		<h:form id="loginForm">
    			<h:outputLabel value="User Name:" />
    			<h:inputText id="username" value="#{intervenant.login}" required="true"/> <br />
    			<h:outputLabel value="Password: " />
    			<h:inputSecret id="password" value="#{intervenant.password}" required="true"></h:inputSecret><br/>
    			<h:commandButton action="#{intervenant.validateUsernamePassword}"
    			value="Login"></h:commandButton>
    		</h:form>
    </ui:define>
    </div>
    </ui:decorate>
    </h:body>
    </html>
    et l'architecture de mon projet ( je viens de commencer il me reste encore 10 classe a faire )
    Nom : 2016-05-26_15-44-57.png
Affichages : 347
Taille : 267,1 Ko

  16. #16
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    déjà, tu vas revoir ton code et tu vas changer ça

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    	public static Connection openconnection (){
    		 String user="sa";
    		 String password="123456789";
    		String conUrl = "jdbc:sqlserver://localhost\\SQLEXPRESS:1433;databaseName=<gestion_intervention>;integratedSecurity=true;";
    	      try {
    			Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
     
    			con=DriverManager.getConnection(conUrl, user, password);
    		} catch (Exception e) {
    		System.out.println("error dans con " +e);
    		}
    en ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    	public static Connection openconnection (){
    		 String user="sa";
    		 String password="123456789";
    		String conUrl = "jdbc:sqlserver://localhost\\SQLEXPRESS:1433;databaseName=<gestion_intervention>;integratedSecurity=true;";
    	      try {
    			Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
     
    			con=DriverManager.getConnection(conUrl, user, password);
    		} catch (SQLException e) {
    		  e.printStackTrace();
                      throw new RuntimeException("Problème de connexion à la base de données", e);
    		}
    Pourquoi? Parce que
    1) ça ne sert à rien de capter aveuglément toutes les exceptions, capte uniquement celles qui te concernent
    2) coté appelant tu ne traite pas la cas du retour null, alors il vaut mieux renvoyer une exception que null dans ce cas là, histoire d'arrêter de se casser la gueule en cascade
    3) quand on chope une exception, on affiche sa trace pour pouvoir débuguer, pas juste un message laconique sans contexte

    Ensuite reviens nous avec tes messages et on verra quel est le problème et comment le résoudre. Là on joue aux devinettes.

  17. #17
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2016
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2016
    Messages : 75
    Points : 50
    Points
    50
    Par défaut
    Voila Monsieur, j'ai fait ce que vous m'avez demandè
    voila la nouvelle Trace
    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
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
     
    java.lang.RuntimeException: Problème de connexion à la base de données
     
    - Stack Trace
     
    javax.faces.el.EvaluationException: java.lang.RuntimeException: Problème de connexion à la base de données
    	at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:101)
    	at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:102)
    	at javax.faces.component.UICommand.broadcast(UICommand.java:315)
    	at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:790)
    	at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1282)
    	at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:81)
    	at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
    	at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:198)
    	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:658)
    	at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1682)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:344)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
    	at com.intervention.jsf.filter.AuthorizationFilter.doFilter(AuthorizationFilter.java:40)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
    	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:316)
    	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:160)
    	at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:734)
    	at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:673)
    	at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:99)
    	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:174)
    	at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:416)
    	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:283)
    	at com.sun.enterprise.v3.services.impl.ContainerMapper$HttpHandlerCallable.call(ContainerMapper.java:459)
    	at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:167)
    	at org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:206)
    	at org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:180)
    	at org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:235)
    	at org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
    	at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:283)
    	at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:200)
    	at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:132)
    	at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:111)
    	at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
    	at org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:536)
    	at org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:112)
    	at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:117)
    	at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:56)
    	at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:137)
    	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:591)
    	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:571)
    	at java.lang.Thread.run(Thread.java:745)
    Caused by: java.lang.RuntimeException: Problème de connexion à la base de données
    	at com.intervention.jsf.util.Connexion.openconnection(Connexion.java:16)
    	at com.intervention.jsf.dao.LoginDAO.validate(LoginDAO.java:15)
    	at com.intervention.jsf.beans.intervenant.validateUsernamePassword(intervenant.java:55)
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    	at java.lang.reflect.Method.invoke(Method.java:497)
    	at com.sun.el.parser.AstValue.invoke(AstValue.java:289)
    	at com.sun.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:304)
    	at com.sun.faces.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:105)
    	at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:87)
    	... 41 more
    Caused by: com.microsoft.sqlserver.jdbc.SQLServerException: Ce pilote n'est pas configuré pour l'authentification intégrée. ClientConnectionId:2a4a9637-37c9-45ef-8640-1ad328da3515
    	at com.microsoft.sqlserver.jdbc.SQLServerConnection.terminate(SQLServerConnection.java:1667)
    	at com.microsoft.sqlserver.jdbc.AuthenticationJNI.<init>(AuthenticationJNI.java:60)
    	at com.microsoft.sqlserver.jdbc.SQLServerConnection.logon(SQLServerConnection.java:2229)
    	at com.microsoft.sqlserver.jdbc.SQLServerConnection.access$000(SQLServerConnection.java:41)
    	at com.microsoft.sqlserver.jdbc.SQLServerConnection$LogonCommand.doExecute(SQLServerConnection.java:2220)
    	at com.microsoft.sqlserver.jdbc.TDSCommand.execute(IOBuffer.java:5696)
    	at com.microsoft.sqlserver.jdbc.SQLServerConnection.executeCommand(SQLServerConnection.java:1715)
    	at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper(SQLServerConnection.java:1326)
    	at com.microsoft.sqlserver.jdbc.SQLServerConnection.login(SQLServerConnection.java:991)
    	at com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(SQLServerConnection.java:827)
    	at com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(SQLServerDriver.java:1012)
    	at java.sql.DriverManager.getConnection(DriverManager.java:664)
    	at java.sql.DriverManager.getConnection(DriverManager.java:247)
    	at com.intervention.jsf.util.Connexion.openconnection(Connexion.java:13)
    	... 51 more
    Caused by: java.lang.UnsatisfiedLinkError: no sqljdbc_auth in java.library.path
    	at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1864)
    	at java.lang.Runtime.loadLibrary0(Runtime.java:870)
    	at java.lang.System.loadLibrary(System.java:1122)
    	at com.microsoft.sqlserver.jdbc.AuthenticationJNI.<clinit>(AuthenticationJNI.java:35)
    	... 63 more
    et voici le code de ma Class Connexion
    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
     
    package com.intervention.jsf.util;
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.SQLException;
    public class Connexion {
    	public static Connection openconnection () throws ClassNotFoundException{
    		 String user="sa";
    		 String password="123456789";
    		 Connection con=null;
    		String conUrl = "jdbc:sqlserver://localhost\\SQLEXPRESS:1433;databaseName=gestion_intervention;integratedSecurity=true;";
    	      try {
    	    	  Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
    			 con = DriverManager.getConnection(conUrl, user, password);
    		} catch (SQLException e) {
    		         e.printStackTrace();
                     throw new RuntimeException("Problème de connexion à la base de données", e);       
    		}
     
    	      return con;	}
     
    }
    et la classe LoginDAO

    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
    36
    37
    38
    39
    40
    41
    42
    43
    44
     
    package com.intervention.jsf.dao;
    import java.sql.Connection;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import com.intervention.jsf.util.Connexion;
    public class LoginDAO {
    	public static String validate(String user, String pass) throws SQLException {
    		Connection con = null;
            PreparedStatement ps = null;
        	String type="Undefined";
     
     
                try {
    				con = Connexion.openconnection();
    			} catch (ClassNotFoundException e) {
     
    				e.printStackTrace();
    			}
                ps = con.prepareStatement("Select LOGIN, PASSWORD,TYPE from INTERVENANT where LOGIN=? and PASSWORD=?");
               ps.setString(1, user); //je reccupère le login 
               ps.setString(2, pass); //je reccupère le password
     
                ResultSet rs = ps.executeQuery();  //le resultat je le met ici
     
    			if (rs.next()) {           // ici je veux faire un test : s'il trouve que le login et le pass existe,alors il test sur le type
    										// s'il trouve le type egal "admin" il m'ouvre une page d'admin (admin.xhtml) et s'il trouve "intervenant"
    										 // il m'ouvre success.xhtml sinon s'il trouve que le type recoi la valeur "undefined" (la valeur initial de type) 
    										  // alors il m'ouvre la page failure.xhtml
    				type=rs.getString(3);      // j'ai deja fait les lien avec les page, tout ce qui m'interesse c'est la valeur de retour ( admin ou intervenant ou undifined)
    			}
     
    			if(type == "Undefined"){
    				 type = "false";
     
     
    			}
    				 return type;
     
     
            }        			
     
    }
    et enfin la classe Intervenant

    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
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
     
    package com.intervention.jsf.beans;
     
    import java.sql.SQLException;
     
    import javax.faces.bean.ManagedBean;
    import javax.faces.bean.SessionScoped;
    import javax.servlet.http.HttpSession;
     
    import com.intervention.jsf.dao.LoginDAO;
     
    @ManagedBean
    @SessionScoped
    public class intervenant {
    	private int id_intervenant;
    	private String login;
    	private String password;
    	private String type;
    	public int getId_intervenant() {
    		return id_intervenant;
    	}
    	public void setId_intervenant(int id_intervenant) {
    		this.id_intervenant = id_intervenant;
    	}
    	public String getLogin() {
    		return login;
    	}
    	public void setLogin(String login) {
    		this.login = login;
    	}
    	public String getPassword() {
    		return password;
    	}
    	public void setPassword(String password) {
    		this.password = password;
    	}
    	public String getType() {
    		return type;
    	}
    	public void setType(String type) {
    		this.type = type;
    	}
    	public intervenant(int id_intervenant, String login, String password, String type) {
    		super();
    		this.id_intervenant = id_intervenant;
    		this.login = login;
    		this.password = password;
    		this.type = type;
    	}
    	public intervenant() {
    		super();
        }
     
    	public String validateUsernamePassword() throws SQLException {
    		String test=null;
    		String valid = LoginDAO.validate(login, password);
     
    		if (valid.equals("admin")) {
    			HttpSession session = SessionBean.getSession();
    			session.setAttribute("username", login);
    			test="admin";
    		} else  if (valid.equals("intervenant")) {
    			HttpSession session = SessionBean.getSession();
    			session.setAttribute("username", login);
    			test= "intervenant";
    		}
    		else if(valid.equals("false")) {
    			HttpSession session = SessionBean.getSession();
    			session.setAttribute("username", login);
    			test= "fail";
    		}
    		return test;
     
     
     
    		}
     
     
    	//logout event, invalidate session
    	public String logout() {
    		HttpSession session = SessionBean.getSession();
    		session.invalidate();
    		return "login";
    	}
    }
    ce sont les 3 classe concernées par l’erreur..

  18. #18
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    Et ben voilà on avance. Ton serveur demande un truc qui l'authentification intégrée. J'ignore ce que c'est mais ca nécessite une dll a mettre dans le path référencé par java.library.path que tu n'as pas mis. Regarde dans la doc si il n'y a pas moyen de désactiver ça. C'est jamais très pratique les librairies natives avec un serveur jee

  19. #19
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2016
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2016
    Messages : 75
    Points : 50
    Points
    50
    Par défaut
    En plus de l'erreur d'authentification.dll il me donne cette erreur la :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Caused by: com.microsoft.sqlserver.jdbc.SQLServerException: Échec de la connexion TCP/IP à l'hôte HP-SOUFYANE/SQLEXPRESS, port 1433. Erreur : « null. Vérifiez les propriétés de connexion. Assurez-vous qu'une instance de SQL Server est en cours d'exécution sur l'hôte et accepte les connexions TCP/IP au port. Vérifiez que les connexions TCP au port ne sont pas bloquées par un pare-feu. ».
    pourtant j'ai desactivè le par feu windows et Kaspersky
    et le port et sur le quel ecoute SQL server est : 1433
    j'ai activer les conexion TCP/IP aussi
    pourquoi ca m'arrive a moi tout ca :o

  20. #20
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    Citation Envoyé par soufianet Voir le message
    Échec de la connexion TCP/IP à l'hôte HP-SOUFYANE/SQLEXPRESS
    C'est bizarre comme nom d'hôte, en général il n'y a pas de / dans les noms de machines, t'aurais pas mis ton / à l'envers dans ta string de connexion par hasard?

    Citation Envoyé par soufianet Voir le message
    pourquoi ca m'arrive a moi tout ca :o
    Heu, les message d'erreurs, ça fait partie du quotidien de tous les développeurs, à toi d'apprendre à les interpréter et les corriger.

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 3 123 DernièreDernière

Discussions similaires

  1. Erreur "java.lang.NullPointerException" avec JSF
    Par opium1er dans le forum JSF
    Réponses: 6
    Dernier message: 15/07/2013, 18h16
  2. Project Maven et JEE (JSF, JPA, , JTA,...)
    Par geforce dans le forum JPA
    Réponses: 1
    Dernier message: 25/02/2013, 09h57
  3. [JSF/EJB3 stateless] NullPointerException
    Par Yohips dans le forum JSF
    Réponses: 8
    Dernier message: 31/08/2009, 11h40
  4. Réponses: 0
    Dernier message: 25/08/2009, 16h38

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