Java: URLConnection und CookieManager

Um mit dem CookieManager arbeiten zu können, muss man eigentlich nicht viel beachten. Wichtig ist, dass man weiß, dass man den CookieManager nicht direkt mit der URLConnection bekannt zu machen braucht. Die URLConnection füllt den CookieManager im Hintergrund über den CookieHandler.

Wie man diese Klassen ineinander steckt zeigt dieser kleine Beispielcode:


	// create CookieManager
	CookieManager manager = new CookieManager();
	manager.setCookiePolicy(CookiePolicy.ACCEPT_ALL);
	CookieHandler.setDefault(manager);
	CookieStore cookieJar = manager.getCookieStore();
			
	// get the url connection
	HttpsURLConnection urlConn = (HttpsURLConnection) new URL("foobar").openConnection();

Man sieht, dass man den CookieManager nur initialisieren und ihm eine CookiePolicy geben muss um an Cookies einer Seite zu kommen. In diesem Beispiel akzeptiert der CookieManager alle Cookies.
Man macht dann den CookieManager mit dem CookieHandler per setDefault-Methode bekannt und kann sich schonmal den CookieStore besorgen, denn dieser enthält schlussendlich die Cookie-Informationen.


	// set all necessary cookies
	for(HttpCookie cookie : cookieJar.getCookies()){
		urlConn.setRequestProperty("Cookie", cookie.toString());
	}

Nachdem alles registriert wurde, lassen sich die Cookies nun einfach aus dem CookieStore auslesen und weiterverwenden.

Apple aktualisiert Java für OSX

Über die Softwareaktualisierung können Mac-Nutzer das aktuelle Java herunterladen. Da Apple selbst die Pflege von Java unter Mac OS X übernommen hat, kommen Updates meist einige Zeit später. Heute hat Apple Java SE 6 auf die Version 1.6.0 Update 20 für OS X 10.6 freigegeben. Auch die Version für OS X 10.5 wurde veröffentlicht. Updates für J2SE 5.0 sind auch dabei, für J2SE 1.4.2 gibt es keinen Support mehr.

Die Installation wird vor allem Entwicklern angeraten, aber auch sonst sollte man sein System aktuell halten. Immerhin ist die Softwareaktualisierung nur zwei Klicks entfernt und läuft automatisch ab. Das System muss dafür nicht neu gestartet werden.
Weiterlesen

Elemente einer Liste durchlaufen

Um durch eine Liste (z.B. ArrayList) zu iterieren gibt es zwei einfache Möglichkeiten.
Wir nutzen

  • foreach
  • Iterator

Was davon gewählt wird, sei jedem erstmal selbst überlassen. Wir gehen davon aus, dass wir eine mit Strings gefüllte ArrayList besitzen, die wir der Reihe nach ausgeben wollen. Weiterlesen