# Problem mit Login



## JavaKüken (18. Jun 2009)

Hallo. 

Versuche gerade einen Login mittels JSF umzusetzen. Es soll überprüft werden ob der User der sich anmeldet in der Datenbank existiert, wenn ja soll der Login ohne Probleme funktionieren, wenn nein dann soll er zur Registrierung weitergeleitet werden. Leider kann sich zurzeit jeder einloggen, egal ob er in der Datenbank existiert oder nicht. 

Existiert der User, wird jedoch true zurück gegeben (hab eine Ausgabe in der Konsole gemacht). Ist der User nicht vorhanden, bekommt man false zurück.

In meinem WebService haben ich folgende Methode:



```
public boolean validUser() throws Exception {

		Connection con = ds.getConnection();
		Statement stmt = con.createStatement();
		ResultSet rs;
		rs = stmt.executeQuery("SELECT * FROM  members WHERE username='"+  username + "' AND password='" + password+"'");
		System.out.println("SELECT * FROM  members WHERE username='"+  username + "' AND password='" + password+"'");
//		rs.next();
		System.out.println(rs.next());
		if(rs == null) {
			return false;
		} else {
			return true;
		}
```



Diese Methode wird in meinem UserBean überprüft, dies sieht wie folgt aus:


```
public String login() throws Exception {

		if (!webService.validUser()) {
			loggedIn = false;
			return "toHome";
			
		} else if(webService.validUser()){
			
			loggedIn = true;
			return "toAddRecipe";
		}
		else{
			loggedIn = false;
			return "toHome";
		}
		
	}
```


Diese Methode wird in meinem JSF-File aufgerufen:

Sobald auf Login geklickt wird, wird folgendes ausgeführt. 


```
<h:commandButton action="#{userBean.login}" name="login"
		value="#{msg['naviLogin']}" class="Button"
		rendered="#{userBean.loggedIn == false}" />
```


Bitte um Hilfe!

Danke im Voraus.

Liebe Grüße


----------



## maki (18. Jun 2009)

*verschoben und Code formatiert, bitte in Zukunft selber machen*

Wie kommt denn dein WebService an den usernamen?


----------



## JavaKüken (18. Jun 2009)

An welchen usernamen? An den der vom User eingegeben wird oder an den der in der DB ist? 

Ich habe im WebService zwei String Variablen mit username und password.


----------



## maki (18. Jun 2009)

Die MEthode nutzt Variablen names username und password, wie übergibst du die Daten an die validUser() Methode?


----------



## JavaKüken (18. Jun 2009)

na indem ich die validUser methode in der login() methode aufrufe...

ich weiß jetzt nicht so wirklich was du meinst :S


----------

