我想用Java实现一个简单的RMI应用程序。
这是我的课程;
RMIInterface;
public interface RMIInterface extends Remote
{
String translate ( String wordInTurkish ) throws RemoteException ;
}
RMIImplementation;
public class RMIImplementation implements RMIInterface
{
@Override
public String translate ( String wordInTurkish )
{
if ( wordInTurkish.equalsIgnoreCase( "Merhaba" ) ) { return "Hello" ; }
if ( wordInTurkish.equalsIgnoreCase( "..." ) ) { return "..." ; }
return "Not found in the dictionary" ;
}
}
的RMIServer;
public class RMIServer
{
public static void main ( String args[] ) throws Exception
{
String codebase = "http://localhost:8080/rmi/" ;
String name = "RMIInterface" ;
System.setProperty( "java.rmi.server.codebase" , codebase ) ;
RMIImplementation obj = new RMIImplementation();
RMIInterface stub = (RMIInterface) UnicastRemoteObject.exportObject( obj , 0 );
LocateRegistry.createRegistry(2020).bind(name, stub);
}
}
RMIClient;
public class RMIClient
{
public static void main ( String args[] ) throws Exception
{
String host = "localhost" ;
String name = "RMIInterface" ;
}
}
如何实现RMIClient并且其他部分有什么问题?
答案 0 :(得分:1)
试试这个
RMIInterface cl = (RMIInterface) new InitialContext().lookup("rmi://localhost:2020/RMIInterface");
String res = cl.translate("xxx");
答案 1 :(得分:1)
RMIInterface remote = (RMIInterface )
LocateRegistry.getRegistry("localhost",8080).lookup("RMIInterface");
remote.translate("merhaba");
答案 2 :(得分:0)
serverAddress=127.0.0.1
rmiRegistiry=rmi://127.0.0.1/DanBankServer
Registry locateServerRegistery = LocateRegistry.getRegistry(serverAddress);
System.out.println("Server Registery is been looked up for address: "+rmiRegistiry);
SekelatonInterface danBankServer = (SekelatonInterface) locateServerRegistery.lookup(serverRmiUrl);