Retour de fonction d'une JSP / Procedure
Bonjour,
on est entraint de créer une Java Stored Procedure pour l'identification dans une application java.
On a également créé une procedure afin de pouvoir la lancer. Notre problème est qu'on voudrait récupérer ce que la JSP renvoi, mais on ne sait pas du tout comment !
on a essayé avec des getInt(), etc... mais rien à faire....
Voici les différentes sources:
Code:
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
| CREATE OR REPLACE JAVA SOURCE NAMED "Login" AS
public class Login {
public static void autorise(String nom, String mdp, int b)
{
java.lang.String requeteMdp = new String();
java.lang.String url = "jdbc:default:connection";
java.sql.Connection conn ;
java.sql.Statement stmt ;
try{
conn = java.sql.DriverManager.getConnection(url);
stmt = conn.createStatement();
java.sql.ResultSet rs = stmt.executeQuery("SELECT mdp FROM personne WHERE nomPersonne='" + nom +"'");
while(rs.next())
{
requeteMdp = rs.getString("mdp") ;
}
stmt.close();
conn.close();
}
catch(java.sql.SQLException e)
{
System.out.println("Erreur SQL:");
}
if(mdp.compareTo(requeteMdp)!=0)
{
b= 0;
}
else
b= 1;
}
};
/ |
Code:
1 2 3
| CREATE OR REPLACE PROCEDURE myLogin(name VARCHAR2, mot VARCHAR2, b NUMBER ) AS LANGUAGE JAVA
NAME 'Login.autorise(java.lang.String, java.lang.String, int)';
/ |
Code:
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
| public void actionPerformed(ActionEvent event)
{
int b = 0;
nomUtilisateur = JOptionPane.showInputDialog( "Veuillez rentrer votre nom d'utilisateur");
String requeteMdp = new String() ;
try {
ResultSet rs = stmt.executeQuery("select * from personne where nompersonne='" + nomUtilisateur + "'") ;
while (rs.next())
{
requeteMdp = rs.getString("mdp") ;
}
}
catch (SQLException e)
{
System.out.println("Erreur sql") ;
}
String mdp = new String() ;
if (nomUtilisateur!=null)
mdp = JOptionPane.showInputDialog( "Veuillez rentrer votre mot de passe");
try {
ResultSet rs = stmt.executeQuery("call myLogin('" + nomUtilisateur + "','" + mdp + "'," + b + ")") ;
while (rs.next())
{
res = rs.getInt(3) ;
}
}
...... |