CS320, Fall 2007

Please upload your files to CSNS. The files should include all the source code, documentation, and an HTML file midterm.html which contains a link to your JSP page on the CS3 server. Note that file uploading will be disabled automatically after 8:40PM, and late submission will not be accepted.

[Problem Description]

In this exam you are going to implement a web application that helps the CS students to select the courses that they can take next quarter. In particular, the application works as follows:

Your application should consist of a JSP page CoursePlanner.jsp and a Java bean CoursePlanner.java. You may use more JSP pages or Java classes if necessary, but note that no scripting elements or JavaScript is allowed in the JSP page(s).


When CoursePlanner.jsp is requested without any parameters, it displays the list of the courses read from courses.txt and let a user to choose which courses he or she has taken. For example:

Please select the courses you have taken:

After the user select the courses and click the Next button, the JSP page displays the list of courses the user can take in the next quarter. For example, suppose a user selects CS122, CS201, CS202, and CS203, the JSP page should display the following after the user clicks the Next button:

You may take the following courses next quarter:

And if there is no course that the user can take next quarter, the JSP page should display "Sorry, there is no course that you can take next quarter".

[Grading Criteria]