/cse135

Project for CSE135 server side web applications

Primary LanguageJava

This is the project for UCSD course CSE135: Server side web applications

Collaborators:
James Carrier (jpcarrier@aol.com)
Zhanzhan He (z6he@ucsd.edu)

Overview:
All Custom java classes under src/
JSP files under WebContent/
text information support files under WebContent/txtdata

Implementation:
Kept same basic structure with all application data gradually
accumulating in the session object. Only major modifications are the
changes to use the database instead of vectors.

Every file using the database connects using a function defined in
a java class DBConnection.java.

JSP files were used to generate the inserts to the database from the
support vectors. All the sample data is now part of the
ApplicationSystem.sql file.

Phase 3 implementation:
Core application the same as before. Changed settings in the
server.xml file and web.xml to implement the access constraints.

New pages are the Login and login failure pages as well the
registration pages. request.sendRedirect is used to call the
registration form again if there is an error and the registration
form contains to logic to display the error messages.

Phase 4 implementation:
Added the concept of a review to the database. Review references both
an application and a reviewer and includes the grade as an integer
and a comment as a text field.

Added the concept of a Reviewer Workload. Each entry links a reviewer
to an application they are to review.

Added an admission status to the application which will indicate if
the candidate is 'accepted' 'rejected' or 'pending;

Attached a reference to a user to applications.

Phase 5 Implementation:
Implemented phase 5 with MVC architecture as closely following the diagrams
in part 4. Some minor changes - some jsps called by multiple pages were
populated by a certain .do action. Other actions requiring these jsps called
the .do actions instead. 

Most of the links to struts actions work by passing a parameter to 
the action.
More complicated forms and submit buttons use the form beans detailed in the notes.

Phase 6 Implementation:
Implemented checking for existing universities using AJAX to load a
page containing a single XML element containing a string which is "true" if the university exists and "false" otherwise. Used HTML and
CSS properties for appropriate error messages to be visible and
buttons to be enabled on the right inputs.

Implemented showing and hiding applications for the chair using a
similar page to the reviewers page for reviewing an application.
This returns simple HTML which replaces the text in an initially
empty div.
the university sent