MIDTERM
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).

[Implementation]

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]