Distributed Programming Lab Submission
Given that the lab is a distributed programming experience
you will have programs running at two places.
For ease of loading, running, and grading, I would like submissions
to follow the following structure:
- Submissions should be via a web page which contain links to
the following:
-
An Object Model
-
Documentation link which points to each class(es) API (including ADT purpose and pre post info) (javadoc)
-
Link(s) to source code
-
A README text file for how to set up each side and commands to start both.
(Also in the jar file below, but both places is nice for ease of access)
-
For the advanced class. The "What I Learned using Distributed Objects"
discussion. Again, this could be understood as meaning, "What design issues
arise when writing distributed code" as well as "The hell I
went through in trying to do this lab", with specific examples :-)
-
A link to a .jar file which has in it (one of these could be the exported project from Eclipse for me to import)
-
One .jar file for the Client side source and code ready to run
(really nice if make so can call from command line. You can still allow the user to give parameters e.g., "java -jar lab3clnt.jar localhost 36469")
-
One .jar file for the Server side source and code ready to run
(really nice if make so can call from command line)
-
A README text file for how to set up each side and commands to start both.
Once you make this "top" jar file, edit the name to make it a .zip file.
This is because when I download .jar files from Netscape when in the
Windows environment, it does not recognize .jar and thus does not
sent it using binary. If it has a .zip extension, all is well.
And, I can use jar to open the .zip file just as easily.
In DOS, on the command line do rename myfile.jar myfile.zip
In UNIX, on the command line do mv myfile.jar myfile.zip
-
I should not have to edit your files. You may have run it with
loopback, but it is rather silly to think that most people will run
RMI or Client/Server stuff on one machine. Either
- Prompt the user with a GUI or something so that they (the user) can specify
where the server is running, and then have your code handle this
- Make it quite explicit in the README exactly where this client
and server must be run. Since you might have a firewall, I will need to
run them here so explicitly tell me where (what directory) and how (what file to call, what arguments to provide) to start the programs
on the machines here (example machines: ect-unix.ecst.csuchico.edu, tiglon.ecst.csuchico.edu)
- You should submit your lab as one .jar file which holds as
contents all of the above materials (i.e., two files of this one
.jar file will be the two .jar files for the client and the server)
Jar Information: