Programm in der RMIRegistry anmelden und benutzen (RMI)

Status
Nicht offen für weitere Antworten.

LocoCroco

Mitglied
Also hallo erst einmal!
Ich hab ein kleines Problem das mir keine Ruhe lässt! Ich muss für die Schule eine Jahresarbeit machen und hab mich dazu entschieden einen kleinen Messenger auf RMI-Basis zu programmieren.

Es geht um folgendes:

Wenn ich etwas über das Programm verschicken will, benötige ich eine Variable des Typs meines Interfaces. Verschicke ich nun eine Nachricht muss der Variablenname dem Namen entsprechen mit dem ich das andere Programm in der RMIRegistry angemeldet habe. Soviel zu dem drum herum!

Das Problem:

Ich habe eine List in der alle Benutzer des Programmes sind. Mit einem Doppelklick auf auf einen Eintrag soll ein Fenster geöffnet werden der als Client dient und Nachrichten sendet und empfängt. Ich will natürlich nur eine Klasse (!!!!) schreiben, das heißt sie muss allgemeingültig sein!!! Das heißt wiederum ich muss die Variable meines Interfaces dynamisch benennen können?! Geht das oder gibt es da RMI spezifische Lösungen?

Kleines Beispiel:

>class Connector{

....
Interface a=new InterfaceImpl(); //erstellen des Objekts des Interface

Naming.rebind("rmi://localhost:1099/ShortService",a); // anmelden in der RMIRegistry das Unterstrichene ist der Name mit dem das Programm in der RMIRegistry angemeldet wird

....
}

>class Client{

....

Interface a=(Interface)Naming.lookup("rmi://localhost:1099/ShortService"); // hier wird nachgeschaut ob es ShortService in der RMIRegistry überhaupt gibt

a.send("hello world"); // hier wird an ShortService gesendet
...
}

Also ich könnt natürlich für jeden User einen neuen Client schreiben aber das ist absolut nicht das was ich mir vorstelle!!! Ich hoffe ich habe alles einigermaßen verständlich erklärt wenn nicht einfach noch einmal nachfragen!

Ich danke euch schon im voraus!

Mfg Raffi
 
T

tuxedo

Gast
Nö, also ich habs nicht verstanden. BTW: Das Forum bietet Code-Tags ...

Vor allem ist nicht rausgekommen _was_ du _senden_ willst (RMI macht ja nur aufrufe), und wieso das von Client zu Client anders sein soll?!

Nebenbei hat dein Beispiel den Fehler, dass du "ShortService" registrierst, aber "InterfaceService" anforderst...

- Alex
 

LocoCroco

Mitglied
Aaaaalso ich hab mir die Frage grad selber beantwortet :oops: war schon etwas peinlich!!

Aber trotzdem:

Also ich will einen String verschicken, das hat auch wunderbar funktioniert. Das eigentlich Problem war eher meine Begriffsstutzigkeit^^ hab nochmal alles durchgelesen was ich gefunden hab und irgendwann ist mir aufgegangen das der Variablenname gar nicht entscheidend ist ist sonder die Methode Naming.lookup() alles regelt. Diese Methode braucht die Adresse der RMIRegistry und den -> "Namen" <- unter dem das andere Programm angemeldet ist. Somit wäre dieses Problem gelöst funktioniert wunderbar!

self owned :oops:
 
T

tuxedo

Gast
Also lags tatsächlich daran dass du am Server "ShortService" in der Registry angemeldet hast, und am Client nicht den "ShortService" bei der Registry erfragt hast sondern "InterfaceService" ???

Wenn Client und Server zusammenarbeiten sollen, dann sollten sie sich auch auf einen gemeinsamen RMI-Service-Namen einigen ...

- Alex
 

LocoCroco

Mitglied
Ich hab die ganze Zeit voll falsch gedacht ... und somit bemerke ich gerade das ich RMI immer noch nicht wirklich verstanden habe ... argh
Das kann noch was werden^^

Danke für deine Antwort alex0801
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
M Erstelltes Programm über Internet Browser ausführen Netzwerkprogrammierung 26
I Socket Das erste Server-Client Programm Netzwerkprogrammierung 16
Aruetiise Socket Java Programm auf Server Netzwerkprogrammierung 3
G Programm unter anderer IP ausführen Netzwerkprogrammierung 6
T Socket Java Programm hängt sich auf bei dem versuch von einem Socket scanner Daten zu erhalten. Netzwerkprogrammierung 1
P RMI Client Server Programm über Internet Netzwerkprogrammierung 2
A Classpath Tomcat, Start von Programm aus Tomcat Container Netzwerkprogrammierung 1
M Java-Programm aus dem Web laden Netzwerkprogrammierung 3
E Eingabe (auf Internetseite) durch ein Programm machen lassen Netzwerkprogrammierung 19
T UDP Pakete empfangen ohne Programm zu blockieren Netzwerkprogrammierung 3
S HTTP Servlet als Instanzen im Programm starten Netzwerkprogrammierung 3
M Paktete abfangen und zu eigenem Programm umleiten - wie? Netzwerkprogrammierung 5
C Programm per Hompage ansprechen Netzwerkprogrammierung 4
T Download Programm - Download endet vorzeitig (bricht ab) Netzwerkprogrammierung 11
K Programm als Webservice laufen lassen Netzwerkprogrammierung 5
G ObjectInputStream hängt ganzes Programm auf... Netzwerkprogrammierung 7
C Vom Server Programm auf Client starten Netzwerkprogrammierung 2
J net send Popups abfangen und in eigenem Programm ausgeben. Netzwerkprogrammierung 12
M Befehle an externes Java-Programm senden Netzwerkprogrammierung 8
D client programm, passwortverschlüsselung Netzwerkprogrammierung 16
S HTTP Kleines Programm für den Routerneustart Netzwerkprogrammierung 3
M Java-Programm als Webserver erzeugt HTML Netzwerkprogrammierung 8
J Framework/ Muster für Chat-ähnliches Programm gesucht Netzwerkprogrammierung 2
N Datenaustausch zwischen Java-GUI und PHP-Programm über SOAP Netzwerkprogrammierung 19
1 Kommunikation mit externem Programm über TCP Netzwerkprogrammierung 2
B Server-Programm wird durch "read" beendet Netzwerkprogrammierung 8
P Wie gibt man einem GUI Programm ein Web interface? Netzwerkprogrammierung 5
A Programm umschreiben von Pipes auf Sockets Netzwerkprogrammierung 12
P Java Programm als Dienst auf Server Netzwerkprogrammierung 11
T Theoriefrage : Programm-zugriffsrechte auf Netzlaufwerk Netzwerkprogrammierung 14
J Mit Java Anwendung ein (externes) Programm auf einem AIX Rechner starten Netzwerkprogrammierung 6
S Commons Net 2.0 und FTP in meinem Programm Netzwerkprogrammierung 4
lordcarlos Erstes TCP programm - output stream problem Netzwerkprogrammierung 2
A Probleme mit kleinem Netzwerk Programm Netzwerkprogrammierung 30
L RMI Programm beendet ohne Fehler sofort nach Start (Windows 2000) Netzwerkprogrammierung 7
L SSL Verbindung aber Server wird erst im Programm festgelegt Netzwerkprogrammierung 4
J programm zum autom. ausdruck einer webseite Netzwerkprogrammierung 2
A Probleme mit kleinem Messenger-Programm Netzwerkprogrammierung 4
H Webserver mit PHP als Java-Programm, gibt es schon so etwas? Netzwerkprogrammierung 12
A Java-Programm auf einem Server laufen lassen Netzwerkprogrammierung 9
F Chat Programm. Verständnisfrage while-Schleife Netzwerkprogrammierung 7
P Probleme bei Chat programm Netzwerkprogrammierung 2
M Log In Programm für Seiten Netzwerkprogrammierung 2
A download programm Netzwerkprogrammierung 2
G Einfaches Client-Server Programm (verbindungslos) Netzwerkprogrammierung 2
L RMI-Programm ausführen Netzwerkprogrammierung 6
J Java Programm für Upload von Dateien per HTTP Netzwerkprogrammierung 7
J Server soll Zugriff auf Java Programm ermöglichen Netzwerkprogrammierung 3
A JSP->Servlet->Programm (Ausführung) -> Servlet -&gt Netzwerkprogrammierung 2
L einfaches Programm zum herunterladen von Bildern Netzwerkprogrammierung 2
V probleme mit dem chat programm Netzwerkprogrammierung 4
N Hexcode an ein Programm senden. Netzwerkprogrammierung 4
R Mein FileTransfer Programm Netzwerkprogrammierung 12
T Kann man jeden Port für Programm verwenden? Netzwerkprogrammierung 2
B Wie Router einstellen für CLient-Server-Programm? Netzwerkprogrammierung 4
B Client-Server-Programm! Netzwerkprogrammierung 9
S P2P Programm Netzwerkprogrammierung 2
H E-Mail Programm Netzwerkprogrammierung 3
G Chat Programm - was ist los? Netzwerkprogrammierung 9
K rmic / rmiregistry in Java 5&6 Netzwerkprogrammierung 4
G RMI Server starten - rmiregistry Aufruf? Netzwerkprogrammierung 17
B Umfangreiche Batch Datei (Rmiregistry prüfung + Prog. start) Netzwerkprogrammierung 4
D rmic/rmiregistry rauben mir den letzten nerv! Netzwerkprogrammierung 12
L Mit Java über PHP in MySQL anmelden (Login script) Netzwerkprogrammierung 3
turmaline HTTP OAuth Automatisches Anmelden Netzwerkprogrammierung 2
M httpclient kann sich nicht auf asp.net Seite anmelden Netzwerkprogrammierung 2
A RMI: Wieviele Clients können sich gleichzeitig anmelden? Netzwerkprogrammierung 34
D Anmelden an einer Windows-Domäne Netzwerkprogrammierung 2

Ähnliche Java Themen

Neue Themen


Oben