FamilyTree is a simple web application using JavaServerFaces, Java EE, and a SQL database to load, display, edit, and examine a family tree. It was initially created as a project for CS7700 Advanced Database Systems at Wright State, and is currently being used for CS7720 Data Mining at the same school.
- Contents of Repository
- Configuration files
- Source code
- SQL
- Directory structure
- Setup
- Tools
- JavaScript Libraries
- Server and Database
- Development Tools
- Icon
- License
This repository contains two NetBeans configuration files, namely nb-configuration.xml
and nbactions.xml
.
In addition to NetBeans configuration, it contains an IntelliJ configuration file familyTree.iml
and configuration directory .idea/
.
Also, it contains the standard Maven pom.xml
and an extra ojdbc7.pom
to install Oracle's JDBC driver into the local repository.
Finally, it contains .gitignore
so I don't accidently commit and push things I don't want onto GitHub.
The following types of files can be found in this project:
The following file type currently exists in the project, however, the files themselves are not written by me:
All the necessary SQL statements to create the database (should be) is in sql/export.sql
. All the subdirectories in sql/
contain pretty much the same material as export.sql
, they are only in different directories for easier human viewing.
If any directory structure of this project does not match the standard Maven configuration, the aim is to eventually change this project to match a standard Maven project.
Once this project is downloaded, there is one step required before it can be built by Maven.
-
Download and install
ojdbc7.jar
This can be found at http://www.oracle.com/technetwork/database/features/jdbc/jdbc-drivers-12c-download-1958347.html. If that's a dead link, try Googling
ojdbc7.jar
.Install the jar file with one of the following ways:
a.
mvn install:install-file -DgroupId=com.oracle -DartifactId=ojdbc7 -Dversion=12.1.0.1 -Dpackaging=jar -Dfile=ojdbc7.jar -DgeneratePom=true
b.mvn install:install-file -Dfile=ojdbc7.jar -DpomFile=ojdbc7.pom
Option b can also be easily done through either NetBeans or IntelliJ. I've set it up so there should be minimal clicks:
NetBeans: Under the Projects view, right-click your project, go to "Custom", and select "install ojdbc7".
IntelliJ: In the run configuration drop down in the top right, select "install ojdbc7.jar".
In order to run this project, a Java EE server and a SQL database need to be installed beforehand. I use GlassFish 4.1 and Oracle Database 11g Express Edition. You will also need to setup a JDBC connection pool in your Java EE server. I found this website helpful for setting it up in GlassFish. The settings I used (other than username and password) are:
Pool name: | FamilyTreePool |
Resource type: | java.sql.Driver |
Database Driver Vendor: | Oracle |
Initial and Minimum Pool Size: | Zero |
URL: | jdbc:oracle:thin:@localhost:1521:XE |
In addition to the dependencies listed in the pom.xml, I am using the following:
- IntelliJ IDEA 14.1.5 Ultimate Edition Student License
- NetBeans IDE 8.0.2
- Oracle SQL Developer 4.1.0.19
- Notepad++ v6.8.6
- TortoiseGit 1.8.15.0
- Maven 3.3.3
Tested in Firefox 42
The FamilyTree Icon () is originally from:
http://www.iconarchive.com/show/the-community-icons-by-afterglow/Family-Tree-icon.html
which attributes it to http://www.afterglow.ie.
This project is for personal academic purposes. I don't care what you do with it, as long as I get credit. Therefore I am using the the MIT License.
Joseph Hendrix |
Created for CS7700 Advanced Database Systems |
Version 2.0 is for CS7720 Data Mining |
Wright State University |
College of Engineering & Computer Science |
Department of Computer Science & Engineering |