DarthShader
Erfahrenes Mitglied
Hallo,
ich verwende Spring's Funktionen zum "exposen" von Services, sodass ich sie via RMI ansprechen kann. So habe ich eine Kommunikation zwischen Client und Server implementiert, wobei die Klasse RmiProxyFactoryBean zum Einsatz kam.
Nun eine einfache Frage: Kann ich das Verbinden zum Remote Service beim erstellen der Bean irgendwie verhindern? Mit anderen Worten, wenn mein Client gestartet wird, und der Server ist nicht da, so wird sofort diese Exception geworfen:
Die Bean Konfiguration auf Clientseite sieht so aus:
Da die "RemoteLookupFailureException" vom Typ "RuntimeException" ist, geht das Programm auch nicht weiter.
Dass er ohne Server keine Verbindung aufbauen kann, ist klar. Aber wie bringe ich ihm bei, erst beim Aufruf einer Remote-Service-Methode die Verbindung zu versuchen? Oder ist hier konzeptionell etwas so gestaltet, was ich gerade nicht verstehe?
Vielen Dank für Eure Hilfe!
ich verwende Spring's Funktionen zum "exposen" von Services, sodass ich sie via RMI ansprechen kann. So habe ich eine Kommunikation zwischen Client und Server implementiert, wobei die Klasse RmiProxyFactoryBean zum Einsatz kam.
Nun eine einfache Frage: Kann ich das Verbinden zum Remote Service beim erstellen der Bean irgendwie verhindern? Mit anderen Worten, wenn mein Client gestartet wird, und der Server ist nicht da, so wird sofort diese Exception geworfen:
Java:
Caused by: org.springframework.remoting.RemoteLookupFailureException: Lookup of RMI stub failed; nested exception is jav
a.rmi.ConnectException: Connection refused to host: localhost; nested exception is:
java.net.ConnectException: Connection refused: connect
// [...]
Caused by: java.rmi.ConnectException: Connection refused to host: localhost; nested exception is:
java.net.ConnectException: Connection refused: connect
Die Bean Konfiguration auf Clientseite sieht so aus:
XML:
<bean id="remoteService" class="org.springframework.remoting.rmi.RmiProxyFactoryBean">
<property name="serviceUrl" value="rmi://localhost:12345/RemoteService"/>
<property name="serviceInterface" value="de.test.service.RemoteService"/>
</bean>
Da die "RemoteLookupFailureException" vom Typ "RuntimeException" ist, geht das Programm auch nicht weiter.
Dass er ohne Server keine Verbindung aufbauen kann, ist klar. Aber wie bringe ich ihm bei, erst beim Aufruf einer Remote-Service-Methode die Verbindung zu versuchen? Oder ist hier konzeptionell etwas so gestaltet, was ich gerade nicht verstehe?

Vielen Dank für Eure Hilfe!
Zuletzt bearbeitet von einem Moderator: