Hallo, ich habe schon einige andere Threads zum Thema gelesen allerdings bin ich selber nicht in der Lage das hinzukriegen.
Ich habe die Libraries von httpClient, commons logging, commons codec eingebunden und versuche mit der folgenden Methode den Login in diesem Fall bei lokalisten weil der Quelltext da sehr übersichtlich war.
Das Login Formular auf der Lokalisten Seite sieht so aus:
Und mein Java Code sieht so aus:
Wenn ich einen flaschen Benutzernamen eingebe bekomme ich gleich den Quelltext als Response in dem steht es sei ein Fehler aufgetreten.
Wenn ich mich mit richtigem Benutzernamen und Passwort anmelden möchte bekomme ich anscheinend keine Response mehr.
Es wird in der Console nur noch eine Leerzeile ausgegeben. Wenn ich dann mit einer neuen PostMethod versuche eine neue Seite aufzurufen funktioniert das aber auch nicht, also bin ich anscheinend auch nicht richtig eingeloggt.
Was fehlt mir also noch zu einem korrekten Login??
Vielen Dank schon mal
Ich habe die Libraries von httpClient, commons logging, commons codec eingebunden und versuche mit der folgenden Methode den Login in diesem Fall bei lokalisten weil der Quelltext da sehr übersichtlich war.
Das Login Formular auf der Lokalisten Seite sieht so aus:
Code:
<div class="loginForm">
<form method="post"
action="https://www.lokalisten.de:443/j_security_check ">
<dl>
<dt>spitzname</dt>
<dd><input type="text" tabindex="1" name="j_username" /></dd>
</dl>
<dl>
<dt>
passwort
<span>
(<a href="/register/editPwdlost.do" tabindex="4">passwort vergessen?</a>)
</span>
</dt>
<dd><input type="password" tabindex="2" name="j_password" /></dd>
</dl>
<input type="submit" tabindex="3" value="anmelden" class="loginButton">
</form>
</div>
Und mein Java Code sieht so aus:
Java:
HttpClient httpClient = new HttpClient();
public void signOn() throws HttpException, IOException{
httpClient.getParams().setCookiePolicy(CookiePolicy.BROWSER_COMPATIBILITY);
PostMethod post = new PostMethod("https://www.lokalisten.de:443/j_security_check ");
post.setRequestHeader(new Header(
"User-Agent", "Mozilla/5.0 /Windows; U; Windows NT 6.1; de; rv:1.9.1.5) Gecko/20091102 Firefox/3.5.5"));
httpClient.setConnectionTimeout(8000);
post.addParameter("j_username","test");
post.addParameter("j_password","test");
//post.addParameter("loginButton","anmelden"); <-- weiß nicht ob der button auch dabei sein muss
httpClient.executeMethod(post);
System.out.println(post.getResponseBodyAsString());
post.releaseConnection();
}
Wenn ich einen flaschen Benutzernamen eingebe bekomme ich gleich den Quelltext als Response in dem steht es sei ein Fehler aufgetreten.
Wenn ich mich mit richtigem Benutzernamen und Passwort anmelden möchte bekomme ich anscheinend keine Response mehr.
Es wird in der Console nur noch eine Leerzeile ausgegeben. Wenn ich dann mit einer neuen PostMethod versuche eine neue Seite aufzurufen funktioniert das aber auch nicht, also bin ich anscheinend auch nicht richtig eingeloggt.
Was fehlt mir also noch zu einem korrekten Login??
Vielen Dank schon mal