Chat Applet -> Deployment?

jackman9

Grünschnabel
Hallo,
ich bin zur Zeit dabei folgende Aufgabenstellung zu lösen, komme aber nun nicht weiter, und wollte hier mal nach rat fragen:
--------------------------------------------------
Aufgabe (Zusammengefasst): Implementierung und Deployment einer Chat-Applikation auf Basis von Java Applets und RMI
--------------------------------------------------
Vorgegeben: ChatApplet (public class ChatApplet extends java.applet. Applet mit allen nötigen Methoden)
--------------------------------------------------
Bereits erledigt:
- Eigenener HTTPServer, der auf einem beliebigen Port gestartet werden kann und auf den Browser ganz normal über http://IP:Port/Datei zugreifen können (funktioniert auch soweit)
- Folgende Klassen:
- ChatServer (public interface ChatServer extends Remote)
- ChatServerEngine (public class ChatServerEngine implements ChatServer)
- ChatClient (public interface ChatClient extends Remote)
- ClientServerEngine (public class ChatClientEngine implements ChatClient)
- java.policy, client.properties, server.properties (siehe unten)
---------------------------------------------------
Problem: Die Implementierung scheint soweit fertig zu sein. Probleme gibt es nun beim deployment. Gestartet wird das Programm in der Reihenfolge rmiregistry => ChatServerEngine => HTTPServer. Wenn Server und Browser auf dem gleichen Rechner benutzt werden, funktioniert das Programm (man kann über Tabs sozusagen mit sich selber chatten). Der Zugriff von draußen über die IP funktioniert nur leider nicht. Applet wird zwar geladen, aber der User kann sich nicht in den Chat einloggen.
In der Aufgabenstellung steht noch der Hinweis: Kompiliert eure RMI-Klassen mit rmic ohne die Option “-v1.2”. Bei der Verwendung des Browsers werden die Skeletons benötigt.
Das ChatApplet kann die Adresse der serverseitigen rmiregistry aus seiner Document Base bestimmen. Der Registry Port muss als Applet-Parameter (SERVER_PORT) im APPLET-Tag übergeben werden
Kann jedoch mit diesem Hinweis überhaupt nichts anfangen. Habe alle oben aufgelisteten Klassen kompiliert und in eine chat.jar Datei (gesigned) im gleichen Ordner wie die HTML Datei gepackt. Habe dabei nirgendwo den "rmic"-Befehl benutzt und weiss auch nicht, was es genau mit stubs und skeletons auf sich hat (wann sind diese notwendig?)?
-----------------------------------------------
Glaube, dass in den properties etwas falsch ist, deswegen anbei die Dateien:
-----------------------------------------------
java.policy (befindet sich im selben Ordner wie HTTPServer, HTML-Datei und chat.jar):
grant {
permission java.net.SocketPermission "*:1024-65535",
"connect,accept";
permission java.net.SocketPermission "*:80", "connect";};
-----------------------------------------------
client.properties(befindet sich im selben Ordner wie HTTPServer, HTML-Datei und chat.jar):
# Adresse der RMI-Registry
registry.host = localhost
registry.port = 1099
# Security Policy
java.security.policy=java.policy
----------------------------------------------
server.properties (befindet sich im Unterordner /server, sollte aber nach meinem Verständnis beim kompilieren von ChatServer eh schon in der Chatserver.class und somit im chat.jar Paket sein)):
# Adresse der RMI-Registry
registry.host = localhost
registry.port = 1099
# Security Policy
java.security.policy=java.policy
# Codebase
java.rmi.server.codebase=http://localhost/
==> bei der Codebase weiss ich leider nicht, worauf diese genau verweisen muss
----------------------------------------------
Ich hoffe, mein problem ist einigermaßen verständlich erläutert. Bin leider blutiger Anfänger in diesem gebiet und tue mich wirklich schwer. Bis jetzt hat das ganze shcon viel zeit beansprucht und wäre schade, wenn ich am Ende dran scheitere..Danke schon mal im voraus.
 
Zurück