Programmieren - alles kontrollieren 4.936 Themen, 20.625 Beiträge

java frage

draso / 11 Antworten / Flachansicht Nickles

hallo,

hab eine kleine java application geschrieben die mich mit meinem apache server auf dem http:// port 80 verbindet
wenn ich den befehl z.b "GET /index.html" funktioniert alles und die html seite wird (natürlich in textform) angezeigt
will ich den forum ohne reconnection wiederholen geht dies allerdings nicht wieder WARUM??
Canceled der apache webserver die connection nach dem request??
aber da müsste ich doch eine exception bekommen !!

bei Antwort benachrichtigen
philipps draso „java frage“
Optionen

Hi draso!

Ob Apache die Verbindung trennt kommt u.a. auf Deinen Request an und auch wie der jeweilige Apache Server konfiguriert ist.
Falls bei Apache "Connection:Close" eingestellt ist (in "httpd.conf"), dann kannst Du nix machen. Du kannst dies jedoch (in "httpd.conf") auf "Connection:keep-alive" ändern. Dies ist nebenbei auch die Standardeinstellung und falls Du nach der Installation nix verändert hast sollte es auch so sein.

Dein Request sollte korrekt wie folgt aussehen:
----

GET /index.html HTTP/1.1
Host:localhost
Connection:keep-alive


-----

Ich nehme mal an, dass Du per java.net.Socket eine Verbindung zu Port 80 herstellst. Eine Exception bei einer getrennten Verbindung solltest Du hier nicht bekommen. Schau Dir mal die API-Doku für Sockets an um die Exceptions zu identifizieren:

http://java.sun.com/j2se/1.4.2/docs/api/java/net/Socket.html

Sicher benutzt Du auch den Syntax: "Socket.getInputStream()" um Dir 'nen Inputstream zum übermitteln des Requests an den Server zu verschaffen. Vergesse hier nicht, dass Du nach der letzten Zeile des Requests eine Leerzeile einfügen musst. Das ist GANZ GANZ wichtig!!!!

Hoffe Dir hilft das ein bisserl weiter!

bei Antwort benachrichtigen