CSCI.4220/CSCI.6964 Network Programming

Fall, 2002

Programming Assignment 6.

This assignment is to be done either individually or in pairs. Do not show your code to any other group and do not look at any other group's code. Do not put your code in a public directory or otherwise make it public. However, you may get all the help you need from the TAs or the instructor. You are encouraged to use the WebCT Discussions page to post problems so that other students can also see the answers.


Objective:

The goal of this assignment is to build a web service that provides a simple currency converter. 

The currency converter web service should provide two interfaces: a User interface that allows any client to convert between given sets of currencies and a Manager interface that allows administrators to add new currencies, remove, or update existing currencies. The Manager interface should provide some form of authentication to the web service. Initially the currency converter web service should start with a given list of currencies and values.

Here is how your web service should work. A client application either a Manager or a User, wanting to invoke a function formats a request with XML SOAP (Simple Object Access Protocol) encoding and sends it to the server using HTTP. The server runs a listener that accepts all incoming SOAP packets, reads the information from the XML SOAP packets, and maps them to appropriate method invocations on your server. This application layer on the server processes the request and returns output to the listener, which formats the output into a response packet in the SOAP XML encoding and returns it to the client.

In this assignment you have to perform the following tasks:

Extensions:

Completion of one of these extensions will result in a better grade; however, groups of more than one person MUST complete this extension to receive a full grade. It should also be noted that, if you have an idea for a different extension, ask either the instructor or TAs for approval:

Grading:

Grading will be split in the following way:

Submission:

The due date for this project is October 22nd, 2002, 11:55pm EST. You should use the assignments drop-off box located at the course's WebCT page. Upload a JAR file containing all the relevant documented Java files, along with a README file describing the project and its usage.

Late submissions: