proj1
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
proj1 [2010/10/07 21:00] – roumani | proj1 [2010/10/09 22:45] (current) – roumani | ||
---|---|---|---|
Line 7: | Line 7: | ||
====== Resources ====== | ====== 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. | |
- | [[http://www.perl.org/|Authoritative page]] | + | |
- | [[http://www.comp.leeds.ac.uk/ | + | |
- | [[http:// | + | |
====== Base Requirement ====== | ====== Base Requirement ====== | ||
- | Whenever a user visits | + | See the page of Project 0. |
- | {{: | ||
- | |||
- | The webapp allows several users to concurrently create a list of countries. The user enters a country name and then clicks the " | ||
- | |||
- | **Validation** \\ | ||
- | |||
- | * If the entry made by the user is already present in the master list then it is rejected. In that case, the same screen is re-served (with its information updated to reflect any changes made by others in the master list) but with a line added at the top containing, in red colour, the message: "This country has already been added" | ||
- | |||
- | * If the entry is empty or contains only whitespace then it is also rejected, and the form is re-served, as above, with the message: " | ||
- | |||
- | In all other cases, the country is added, the form re-served, and no message appears at the top. | ||
====== Possible Variations ====== | ====== 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 '' | ||
- | * Country name must be made up of letters and possibly a hyphen in the middle. | + | * Persist |
- | * The master list should be displayed sorted. | + | * When you implement the above data persistence, |
- | + | ||
- | * Don't send the master list if the client | + | |
- | * If a user remained idle while others are adding countries, | + | |
- | + | ||
- | * Map your app's URL to a directory. | + | |
- | * Add logging to your webapp. | + | |
- | * Add authentication | + | * Migrate messages (such as //Cannot be Blank//) from the controller |
- | * Add confidentiality to your webapp. | + | * Make one error message appear in red and the other in blue. |
- | * Trigger an event if a user successfully added more than 5 counties per session. | + | * Reset the user's count if the user remained idle for 1 minute. Do this even if the session |
- | * Compress your webapp' | + | * Send an error message if the used URL includes the string " |
- | * Keep track of the counties entered by the user in the session, not just the count, | + | * Deploy your webapp on red. To that end, install tomcat (via the '' |
- | * Enable richer content. Rather than just a country name, the user may also enter the capital and possibly the population. | + | |
- | The following two variations require | + | The following two variations require |
- | * Rather than serve the list every time, change the UI to a sidebar and two links "Add a Country" and " | + | * If a client managed |
- | * To improve responsiveness, | + | * Inject a new validation rule: //" |
proj1.1286485254.txt.gz · Last modified: 2010/10/07 21:00 by roumani