Web applications - specification
- The webapp should include a page called
/start.html. This should contain a link to the home page of the app (i.e. where users will normally start, e.g.
index.jsp) and links to all documentation.
- Where possible, submit your work as a NetBeans project tree. Zip up the entire project directory structure containing your webapp.
- If requested, the following files should be located in the specified folders (or sub-folders thereof) relative to the project directory:
|Internal documentation, including requirements and design specifications
|Report (in either HTML or MS-Word format; PDF or plain text may be used as a last resort)
|References and acknowledgements for code that is not your own work, or not original to this coursework (e.g. reused from a previous project you have done)
|JavaDB-compatible database creation script(s) (if you create or have modified a database schema) (in SQL format)
|External documentation (e.g. user guides)
|Source code you have written for this coursework (please use package names starting with your name, e.g. "jim.projname")
|Source code you have taken from elsewhere
|JAR libraries used (all assumed to be taken from elsewhere; document where you downloaded them from)
Database and security requirements
- Your application should use either:
- a database connection that I have provided; or
- if you have created your own, one where the (i) schema name; (ii) username and (iii) password are all the same and of the form <YourSurname><YourFirstInitial> (e.g. BRIGGSJ) or <Groupname> (e.g. GROUPA), and the scripts for creating the database are compatible with JavaDB.
- It is preferred that instead of using a script to setup the database, you:
- allow JPA to create the database tables on first use (set strategy to CREATE in persistence.xml)
- implement a user interface button that runs code to populate the database with initial and/or test data
if it does not already exist
- alternatively implement a web listener class that runs on application startup, looks to see whether sample data already exists in the database and, if not, creates it using JPA persistence
- If the application requires any setup in Glassfish (e.g. a security realm), provide full instructions (e.g. a Glassfish control panel screenshot) on how this should be done. The name of the realm should be based on your user or your group's name, e.g. BriggsJRealm or GroupARealm.
- Alternatively (or in addition to the screenshot), include in your project folder (
/web/glassfish) the part of your
domain.xml file that contains the realm configuration. Don't include the whole file, just the relevant bits. On my machine, this file can be found in the folder
- The application should meet Java EE 7 (or later) specifications.
To see an example of a webapp that meets the above specification, download webapp appspec2.zip (2.6Mb).
If you have any questions about the above specification, please raise them with me as soon as possible to avoid problems. Don't leave it to deadline day!