Newcomer2007
Grünschnabel
Hallo zusammen,
bin absoluter Neuling was dieses Thema betrifft und brauche etwas Hilfe
Habe eine kleine Testanwendung geschrieben, welche leider nicht das gewünschte Ergebnis liefert.
Als Ergebnis würde ich folgendes erwarten
Beim einem Client
Antwort fuer Client: A
Beim anderen Client
Antwort fuer Client: B
Leider bekommen beide das Ergebnis:
Antwort fuer Client: A
Hier der Code meines Testprogramms:
client.xml
server.xml
Würde mich über eine kleine Hilfestellung sehr freuen
bin absoluter Neuling was dieses Thema betrifft und brauche etwas Hilfe
Habe eine kleine Testanwendung geschrieben, welche leider nicht das gewünschte Ergebnis liefert.
Als Ergebnis würde ich folgendes erwarten
Beim einem Client
Antwort fuer Client: A
Beim anderen Client
Antwort fuer Client: B
Leider bekommen beide das Ergebnis:
Antwort fuer Client: A
Hier der Code meines Testprogramms:
Java:
public class TestClient
{
public static void main(String[] args)
{
try
{
ApplicationContext appContext = new ClassPathXmlApplicationContext(
"meinTest/client/rmi-client.xml");
RemoteServiceController remoteServiceController = (RemoteServiceController) appContext
.getBean("remoteServiceController");
while(true)
{
remoteServiceController.setString("" + args[0]);
System.out.println(remoteServiceController.getResult());
Thread.sleep(10000);
}
}
catch (Exception e)
{
e.printStackTrace();
}
}
}
Java:
public class TestServer
{
public static void main(String[] args)
{
try
{
ApplicationContext appContext = new ClassPathXmlApplicationContext(
"meinTest/server/rmi-server.xml");
RemoteServiceController remoteServiceController = (RemoteServiceController)
appContext.getBean("remoteServiceController");
while(true)
{
this.remoteServiceController.setResult("Antwort fuer Client "
+ this.remoteServiceController.getString());
Thread.sleep(10000);
}
}
catch (Exception e)
{
e.printStackTrace();
}
}
}
Java:
public interface RemoteServiceController
{
public void setString(String sqlStmt);
public String getString();
public void setResult(Object result);
public Object getResult();
}
Java:
public class RemoteServiceControllerImpl implements RemoteServiceController
{
private String str = null;
private Object obj = null;
public void setString(String str)
{
this.str = str;
}
public String getString()
{
return this.str;
}
public void setResult(Object obj)
{
this.obj = obj;
}
public Object getResult()
{
return this.obj;
}
}
client.xml
XML:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<bean
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="location"
value="meinTest/client/rmi/test/rmi-client.properties"
/>
</bean>
<bean id="remoteServiceController"
class="org.springframework.remoting.rmi.RmiProxyFactoryBean">
<property name="serviceUrl"
value="rmi://${server.ip}:1099/RemoteServiceController" />
<property name="serviceInterface"
value="meinTest.util.rmi.RemoteServiceController" />
</bean>
</beans>
server.xml
XML:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN"
"http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<bean id="remoteServiceController"
class="meinTest.util.rmi.RemoteServiceControllerImpl">
</bean>
<bean class="org.springframework.remoting.rmi.RmiServiceExporter">
<property name="serviceName" value="RemoteServiceController" />
<property name="service" ref="remoteServiceController" />
<property name="serviceInterface" value="meinTest.util.rmi.RemoteServiceController" />
</bean>
</beans>
Würde mich über eine kleine Hilfestellung sehr freuen
Zuletzt bearbeitet von einem Moderator: