RMI RMI Methodenaufruf funktioniert nur spontan

_Andi91

Bekanntes Mitglied
Hi,

bin gerade dabei eine kleine C/S Anwendung mit RMI zu schreiben.
Für die Kommunikation zwischen Backend <-> Frontend verwende ich RMI.
Das Problem ist, dass ca. im Schnitt bei jeder 3. Anfrage an den RMI Server eine Exception auftritt
Stacktrace dazu ist:

Code:
java.rmi.ConnectIOException: error during JRMP connection establishment; nested exception is: 
	java.net.SocketTimeoutException: Read timed out
java.util.concurrent.ExecutionException: java.rmi.ConnectIOException: error during JRMP connection establishment; nested exception is: 
	java.net.SocketTimeoutException: Read timed out
	at java.util.concurrent.FutureTask$Sync.innerGet(Unknown Source)
	at java.util.concurrent.FutureTask.get(Unknown Source)
	at javax.swing.SwingWorker.get(Unknown Source)
	at de.joerg.framework.xmlEditor.frontend.ListXMLFilesVC$1.done(ListXMLFilesVC.java:46)
	at javax.swing.SwingWorker$5.run(Unknown Source)
	at javax.swing.SwingWorker$DoSubmitAccumulativeRunnable.run(Unknown Source)
	at sun.swing.AccumulativeRunnable.run(Unknown Source)
	at javax.swing.SwingWorker$DoSubmitAccumulativeRunnable.actionPerformed(Unknown Source)
	at javax.swing.Timer.fireActionPerformed(Unknown Source)
	at javax.swing.Timer$DoPostEvent.run(Unknown Source)
	at java.awt.event.InvocationEvent.dispatch(Unknown Source)
	at java.awt.EventQueue.dispatchEvent(Unknown Source)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.run(Unknown Source)
Caused by: java.rmi.ConnectIOException: error during JRMP connection establishment; nested exception is: 
	java.net.SocketTimeoutException: Read timed out
	at sun.rmi.transport.tcp.TCPChannel.createConnection(Unknown Source)
	at sun.rmi.transport.tcp.TCPChannel.newConnection(Unknown Source)
	at sun.rmi.server.UnicastRef.newCall(Unknown Source)
	at sun.rmi.registry.RegistryImpl_Stub.lookup(Unknown Source)
	at java.rmi.Naming.lookup(Unknown Source)
	at de.joerg.framework.mvc.backendService.JFBackendRequest.getRequestedData(JFBackendRequest.java:17)
	at de.joerg.framework.xmlEditor.frontend.ListXMLFilesVC$1.doInBackground(ListXMLFilesVC.java:38)
	at de.joerg.framework.xmlEditor.frontend.ListXMLFilesVC$1.doInBackground(ListXMLFilesVC.java:1)
	at javax.swing.SwingWorker$1.call(Unknown Source)
	at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
	at java.util.concurrent.FutureTask.run(Unknown Source)
	at javax.swing.SwingWorker.run(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)
Caused by: java.net.SocketTimeoutException: Read timed out
	at java.net.SocketInputStream.socketRead0(Native Method)
	at java.net.SocketInputStream.read(Unknown Source)
	at java.io.BufferedInputStream.fill(Unknown Source)
	at java.io.BufferedInputStream.read(Unknown Source)
	at java.io.DataInputStream.readByte(Unknown Source)
	... 15 more

Wo ist da das Problem, kann doch nicht sein, dass es manchmal geht und dann wieder nicht.
Aber irgendwas muss doch falsch sein oder ist RMI wirklich so instabil?


Gruß, Andi
 
mh scheint an meinem PC daheim zu liegen. Hab das ganze mal in der Arbeit laufen lassen.
Da gehts ohne Probleme egal wie oft ichs versuch.
 
möglich, hab ich mir auch schon gedacht, dass die die Anfragen evtl. ab und zu von der FW abgefangen werden und es dann zu lange dauert.
Werds heut wenn ich heim komm mal probieren mit ausgeschalteter Firewall.
 
Kleiner Tipp:

Wenns auch nicht mit ausgeschalteter Firewall läuft, deinstallier sie mal probehalber. Hatte schon zwei Firewalls auf mehreren, unterschieldichen Rechnern, die man definitiv deinstallieren musste damit sie wirklich ganz abgeschaltet waren und so keinen unerwünschten Nebeneffekt erzeugt haben.

- Alex
 

Zurück
Oben