Latest Remote Method Invocation Simple Program(RMI) For Carrier 2010 2011

Latest Remote Method Invocation Simple Program(RMI) For Carrier 2010 2011

File Interfave.java:
import java.rmi.Remote;
import java.rmi.RemoteException;
public interface FileInterface extends Remote {
public byte[] downloadFile(String fileName) throws
RemoteException; }


FileImpl.java:
import java.io.*;
import java.rmi.*;
import java.rmi.server.UnicastRemoteObject;
public class FileImpl extends UnicastRemoteObject
implements FileInterface {
private String name;
public FileImpl(String s) throws RemoteException{
super();
name = s; }
public byte[] downloadFile(String fileName){
try {
File file = new File(fileName);
byte buffer[] = new byte[(int)file.length()];
BufferedInputStream input = new
BufferedInputStream(new FileInputStream(fileName));
input.read(buffer,0,buffer.length);
input.close();
return(buffer);
} catch(Exception e){
System.out.println("FileImpl: "+e.getMessage());
e.printStackTrace();
return(null);
} }}


FileClient.java:

import java.io.*;import java.rmi.*;
public class FileClient{
public static void main(String argv[]) {
if(argv.length != 2) {
System.out.println("Usage: java FileClient fileName machineName");
System.exit(0);
}
try {
String name = "//" + argv[1] + "/FileServer";
FileInterface fi = (FileInterface) Naming.lookup(name);
byte[] filedata = fi.downloadFile(argv[0]);
File file = new File(argv[0]);
BufferedOutputStream output = new
BufferedOutputStream(new FileOutputStream(file.getName()));
output.write(filedata,0,filedata.length);
output.flush();
output.close();
} catch(Exception e) {
System.err.println("FileServer exception: "+ e.getMessage());
e.printStackTrace();
} }}


FileServer.java:
import java.io.*;
import java.rmi.*;
public class FileServer {
public static void main(String argv[]) {
if(System.getSecurityManager() == null) {
System.setSecurityManager(new RMISecurityManager());
}
try {
FileInterface fi = new FileImpl("FileServer");
Naming.rebind("//127.0.0.1/FileServer", fi);
} catch(Exception e) {
System.out.println("FileServer: "+e.getMessage());
e.printStackTrace();
} }}


Policy.txt:
grant {
permission java.security.AllPermission "", "";
};


Running steps :
Z:\rmiex>javac FileInterface.java
Z:\rmiex>javac FileImpl.java
Z:\rmiex>javac FileServer.java
Z:\rmiex>javac FileClient.java
Z:\rmiex>rmic FileImpl
Z:\rmiex>start rmiregistry
Z:\rmiex>java -Djava.security.policy=policy.txt FileServer
Z:\rmiex>java FileClient fileName machineName
exp: java FileClient z:\calci.docx ittft27


Latest Remote Method Invocation Simple Program(RMI) For Carrier 2010 2011

Recommended Posts



Privacy Policy

All the Colleges, Schools, Universities, Top lists, Interview question paper, Programming, Tips, Tutorials and all other's just information purpose only. We are not responsible for any damages caused to you.