Skip to content

abahmadb/Web-Applications

Repository files navigation

30/30

EDUCATION-WA1920

                             University of Padova
             Master Degree in ICT for Internet and Multimedia 
                   Master Degree in Computer Engineering
                             Web Applications 
                                  2019/2020

This directory contains the source code of the project developed for RemyTutor, a remote teaching website.

Prerequisites:

  • Apache Tomcat - Java Servlet, JavaServer Pages, Java Expression Language and Java WebSocket technologies
  • Git - Version Control System
  • JDK 8 - Java Development Kit
  • Maven - Software project management and comprehension tool
  • MySQL - Relational Database Management System

Usage

Simply clone this repo with Git and compile with Maven:

mvn clean package

This will generate a 'target' folder with a WAR package named education.X.X.X.war, where X.X.X is the version of the project.

To create and populate the MySQL database simply take the sql scripts in src/main/database and source them in a MySQL console:

mysql> source path/to/sql/db_creation.sql
..
mysql> source path/to/sql/db_population.sql

The MySQL db will also need to be accessible on port 3306 by user 'root' with password 'root' (both without the single quotes). We also require to place the 'imageset' folder present in this repo to be placed inside the $CATALINA_HOME$\webapps folder (e.g. in Windows C:\Program Files\Apache Software Foundation\Tomcat 9.0\webapps); this is required because images are not stored in the database, but in this case when a redeploy occurs (e.g. we want to update the website) all images changes will be lost; storing them in a path relative to the Tomcat folder solves redeploy problems.

If you are experiencing problems on image loading, be sure to set the right Tomcat CATALINA_HOME environment variable before starting the server, especially if you use MacOS/Unix systems; using the terminal you would do:

export CATALINA_HOME = path/to/tomcat

The WAR package can then be deployed in Tomcat and the website should be now accessible and usable from the Tomcat Manager. Testing the website is fairly easy, you can create an account or use credentials from the already default populated database (credentials in clear text are of course outside of the database, in db_population.sql).

On client side we used some HTML5-CSS3 experimental features for the sign-up/in phase, that are not (currently) supported by all browsers. We tested this project on Google Chrome, Microsoft Edge, Mozilla Firefox with good results, the use of Safari is instead (as of now) highly discouraged due to these features that seem unsupported.

Features

See HW1-RemyTutor-2019-2020.pdf and HW2-RemyTutor-2019-2020.ppt for a detailed description of this project

Contributors:

Students who made this Project possible

License:

  • This project is released under the MIT License.
  • Further information can be found in the LICENSE file.

Acknowledgments:

We extend our appreciation to Professor Nicola Ferro for his invaluable insights throughout our project.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published