# Automatisches einloggen



## Nitro86 (26. Feb 2008)

Hallo,

und ich habe meine GUI und das senden der Daten an die asp und das auswerten klappt auch alles so halbwegs. Nun möchte ich gerne realisieren das es sich automatisch anmeldet. 

Ich habe da schon viel gelesen, leider aber keinen Ansatz gefunden. Es tut mir leid das ich so eine triviale Frage stelle jedoch war mein Proggen Prof zu C lastig.  :meld:


----------



## Jango (26. Feb 2008)

Phil86 hat gesagt.:
			
		

> Hallo,
> und ich habe meine GUI und das senden der Daten an die asp und das auswerten klappt auch alles so halbwegs.


Wahllos aneinander gereihte Wörter - schüttel sie nochmal, vielleicht kommt ja was Verständliches heraus... :autsch:


----------



## Nitro86 (26. Feb 2008)

Jango hat gesagt.:
			
		

> Phil86 hat gesagt.:
> 
> 
> 
> ...



Oh sry,

da ist wohl eine zeile verschwunden.

Also ich möchte ein tool schreiben welches sich automatisch bei einer webseite anmeldet, dann daten an eine asp verschickt und sie dann auswertet. Es klappt auch alles, außer dass Ich das Anmelden nicht hinbekomme. Habe mit Authenticator gearbeitet, jedoch auch ohne erfolg.

Wie kann ich also das Anmelden umsetzen?


----------



## tuxedo (26. Feb 2008)

Wurde das nicht schin dutzende male diskutiert (bin mir da schon ziemlich sicher)? Hast du mal die Forumsuche bemüht? Bin mir sicher damit kommst in in diesem Fall weiter.


----------



## Nitro86 (26. Feb 2008)

Ja habe ich genutzt. Hatte es darauf folgend mit htmlunit versucht, jedoch auch ohne Erfolg.


----------



## Nitro86 (2. Mrz 2008)

Hallo,

ich habe das problem immer noch nicht gelöst.

Habe folgenden Code:


```
try{

	        HttpClient client = new HttpClient();
	        client.getHostConfiguration().setHost("www.test.org", 80, "http");
	        client.getParams().setCookiePolicy(CookiePolicy.BROWSER_COMPATIBILITY);
	        PostMethod postMethod = new PostMethod("Common/menu.asp?timeOut=&loginError=&showMenu=");
	        postMethod.addParameter("loginname", "XYZ");
	        postMethod.addParameter("password", "123456");
	        postMethod.addParameter("actionType", "login");
	        postMethod.addParameter("flashVersion", "0");
	        client.executeMethod(postMethod);
	        System.out.println(postMethod.getResponseBodyAsString());
			
		}
```


Bekomme immer wieder folgende Ausgabe:
Exception in thread "AWT-EventQueue-0" java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory
	at org.apache.commons.httpclient.HttpClient.<clinit>(HttpClient.java:66)

Wo liegt mein Fehler?


----------



## Murray (2. Mrz 2008)

commons-logging.jar muss im CLASSPATH sein.


----------



## Nitro86 (2. Mrz 2008)

Ok,

habe es hinbekommen, dankeschön.

Bekomme jetzt immer folgende Antwort beim Loginversuch:

Sorry, you need a browser capable of frames. For mobile phones, use Opera Mini for instance.

Naja ich denke es liegt an den Cookies oder??


----------



## Murray (2. Mrz 2008)

Das glaube ich nicht - vermutlich bist Du da auf einen <NOFRAMES>-Bereich gestoßen; in dem Fall müsste der Server eigentlich alles (genauer: eine FRAMESET zusammen mit einem NOFRAMES-Element) geliefert haben.

Welche Library verwendest Du denn da?


----------



## Nitro86 (3. Mrz 2008)

Also die gesamte Antwort sieht wie gefolgt aus:


```
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN">
<HTML >


<HEAD>
<META HTTP-EQUIV="Expires" CONTENT="Mon, 06 Jan 1990 00:00:01 GMT">
<META NAME="Description" CONTENT="Hattrick is a free online multiplayer football management game. Create a team, train players, play the transfer market, and compete in league and Cup play against hundreds of thousands of human opponents.">
<META NAME="Keywords" CONTENT="football manager, free football game, online games, free multiplayer games,ree football games, play football online, football sim, manager game">
<TITLE>Hattrick</TITLE>

<script src="http://www.google-analytics.com/urchin.js" type="text/javascript">
</script>
<script type="text/javascript">
_uacct = "UA-1597573-1";
_udn="hattrick.org"; 
	if (typeof urchinTracker == "function")
	{
		urchinTracker();
                }
</script>

</HEAD>

    <FRAMESET COLS="*,746,*" FRAMEBORDER="0" BORDER="0"> 
	    <FRAME NAME="Filler_left" SRC="frame_left.asp" scrolling="no">
	    <FRAMESET ROWS="90,*,1" FRAMEBORDER="0" BORDER="0">
		    <FRAME NAME="header" SRC="header.asp" MARGINWIDTH="0" MARGINHEIGHT="0" SCROLLING="no" FRAMEBORDER="0" NORESIZE>
		    
	    	    <FRAMESET COLS="127,*" FRAMEBORDER="0" BORDER="0">
			    <FRAME NAME="menu" SRC="menu.asp?timeOut=&loginError=Yes&showMenu=" MARGINWIDTH="0" MARGINHEIGHT="0" SCROLLING="no" FRAMEBORDER="0" NORESIZE>
			    <FRAME NAME="main" SRC="start.aspx?LanguageID=2" MARGINWIDTH="0" MARGINHEIGHT="0" SCROLLING="auto" FRAMEBORDER="0" NORESIZE>	
		    </FRAMESET>
		    
		    <FRAME NAME="info" SRC="newflash.asp" MARGINWIDTH="0" MARGINHEIGHT="0" SCROLLING="no" FRAMEBORDER="0">
	    </FRAMESET>
	    <FRAME NAME="Filler_right" SRC="frame_right.asp" scrolling="no">
    </FRAMESET>
    
<noframes>
Sorry, you need a browser capable of frames. For mobile phones, use [url="http://mini.opera.com/"]Opera Mini[/url] for instance.
</noframes>
</HTML>
```

Wie meinst du welche Library ich "da" verwende?
Sry ich bin noch ein ziemlicher Anfänger


----------



## Murray (3. Mrz 2008)

Die Antwort enthält ein Frameset, also eine Reihe von Frames, deren Inhalt man sich mit weiteren Requests erst noch holen muss.

Mit der Library meinte ich htmlunit (hattest Du in einem Post mal erwähnt), das sagt mir nämlich nichts. Ich sehe aber, dass Du (jetzt) den Apache-HTTPClient verwendest; damit ist das klar.


----------



## Nitro86 (3. Mrz 2008)

Naja also das einloggen klappt aber nicht, denn diese Zeile:


```
<FRAME NAME="menu" SRC="menu.asp?timeOut=&loginError=Yes&showMenu=" MARGINWIDTH="0" MARGINHEIGHT="0" SCROLLING="no" FRAMEBORDER="0" NORESIZE>
```

Hier der Link: http://hattrick.org/Common/menu.asp?timeOut=&loginError=Yes&showMenu=

Da sieht man das der Login net geklappt hat, folglich müsste es doch eine andere Ursache haben.


----------



## Nitro86 (4. Mrz 2008)

Hallo,

seit gestern Abend, wirft mein Programm immer eine IOException. Woran kann das liegen?


----------



## tuxedo (4. Mrz 2008)

Ist shcon der Hammer wieviele noch an Wunder glauben. 

@Nitro86:

Ich muss dich enttäuschen. Es gibt keine mystischen Glaskugel mit der man Hellsehen kann. Du wirst und schon etwas mehr zur Exception sagen müssen ... Ein Stacktrace und ein Stück passender Code wären unheimlich hilfreich.

- Alex


----------



## Nitro86 (4. Mrz 2008)

OK,

habe es hinbekommen. Mir ist da ein Tippfehler unterbekommen, der mir nicht aufgefallen ist.


----------



## Nitro86 (5. Mrz 2008)

Murray hat gesagt.:
			
		

> Die Antwort enthält ein Frameset, also eine Reihe von Frames, deren Inhalt man sich mit weiteren Requests erst noch holen muss.
> 
> Mit der Library meinte ich htmlunit (hattest Du in einem Post mal erwähnt), das sagt mir nämlich nichts. Ich sehe aber, dass Du (jetzt) den Apache-HTTPClient verwendest; damit ist das klar.



Wie muss ich requesten???

Habe den Loginfehler behoben.


----------



## tuxedo (5. Mrz 2008)

Request = ein weiterer Aufruf einer Webseite. Welche das ist, steht im Frameset.

- Alex


----------



## Guest (6. Mrz 2008)

Habe es alles hinbekommen,

mein fehler bestand darin das mit Javascript noch 2 zusätzliche angaben verschickt wurden beim login. Diese habe ich dann mit UrlParams rausgefunden --> dann ging auch endlich alles ;-)

Kann geschlossen werden.

PS: habe folgenden Code noch zur Sicherheit mit eingeführt:

```
postMethod.addRequestHeader("User-Agent", "Mozilla/5.0 (Windows; U; Windows NT 6.0; de; rv:1.8.1.12) Gecko/20080201 Firefox/2.0.0.12");
```


----------

