User Tools

Site Tools


proj1

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
proj1 [2010/10/07 20:46] – created roumaniproj1 [2010/10/09 22:45] (current) roumani
Line 6: Line 6:
 This project has the exact same requirement as Project 0. The difference is that we need to implement it using Java EE rather than Perl.  This project has the exact same requirement as Project 0. The difference is that we need to implement it using Java EE rather than Perl. 
  
 +====== Resources ======
 +The (highly readable) authoritative documents on Servlets and JSP are posted under //Resources// along with their APIs. Also posted is a tutorial and a link to a site with JEE highlights.
 +
 +====== Base Requirement ======
 +See the page of Project 0.
 +
 +
 +====== Possible Variations ======
 +The same variations listed in Project 0 apply as-is to this project. In addition, the following enhancements over our reference implementation (posted as ''Proj1B.war'') are to be explored:
 +
 +  * Persist the webapp data when the controller is destroyed and load it when it starts.
 +  * When you implement the above data persistence, pay attention to concurrency. In addition, avoid mixing concerns. Specifically, saving data is the concern of the model; the name of the file is the concern of the end-user; the path leading to the file is environmental and is therefore the concern of the controller.
 +
 +  * Migrate messages (such as //Cannot be Blank//) from the controller to the view.
 +  * Make one error message appear in red and the other in blue.
 +
 +  * Reset the user's count if the user remained idle for 1 minute. Do this even if the session has not expired yet.
 +  * Send an error message if the used URL includes the string "York" (case insensitive), e.g. /york.do. Ideally, set some unused HTTP error status code and have web.xml auto serve an error page (see the <error-page> tag in web.xml).
 +
 +  * Deploy your webapp on red. To that end, install tomcat (via the ''tomcat_install'' command) and then start it via ''tomcat_start''. Add ''web.xml'' to your webapp (see posted sample and instructions) and comment out the annotation import line. Export your webapp to a war and put it in the ''webapps'' directory. If you need to make (minor) changes in red, edit the source files and compile them using ''tomcat_compile''. Alternatively, use the ''eclipseEE' command to launch eclipse on red.  
 +
 +The following two variations require filters and listeners:
 +
 +  * If a client managed to enter over five countries within a session, flag it as a "Power User" and post its IP at the top of each served page.
 +  * Inject a new validation rule: //"countries less than three characters are not allowed during lunch hour"// :-D
  
proj1.1286484368.txt.gz · Last modified: 2010/10/07 20:46 by roumani

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki