Markou's stupid assignments are a pain in the ass
This commit is contained in:
@@ -0,0 +1,21 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project-shared-configuration>
|
||||
<!--
|
||||
This file contains additional configuration written by modules in the NetBeans IDE.
|
||||
The configuration is intended to be shared among all the users of project and
|
||||
therefore it is assumed to be part of version control checkout.
|
||||
Without this configuration present, some functionality in the IDE may be limited or fail altogether.
|
||||
-->
|
||||
<properties xmlns="http://www.netbeans.org/ns/maven-properties-data/1">
|
||||
<!--
|
||||
Properties that influence various parts of the IDE, especially code formatting and the like.
|
||||
You can copy and paste the single properties, into the pom.xml file and the IDE will pick them up.
|
||||
That way multiple projects can share the same settings (useful for formatting rules for example).
|
||||
Any value defined here will override the pom.xml file value but is only applicable to the current project.
|
||||
-->
|
||||
<org-netbeans-modules-maven-j2ee.netbeans_2e_hint_2e_j2eeVersion>9.0-web</org-netbeans-modules-maven-j2ee.netbeans_2e_hint_2e_j2eeVersion>
|
||||
<org-netbeans-modules-maven-j2ee.netbeans_2e_hint_2e_deploy_2e_server>gfv700ee10</org-netbeans-modules-maven-j2ee.netbeans_2e_hint_2e_deploy_2e_server>
|
||||
<org-netbeans-modules-projectapi.jsf_2e_language>Facelets</org-netbeans-modules-projectapi.jsf_2e_language>
|
||||
<netbeans.hint.jdkPlatform>JDK_11__System_</netbeans.hint.jdkPlatform>
|
||||
</properties>
|
||||
</project-shared-configuration>
|
@@ -0,0 +1,88 @@
|
||||
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<groupId>com.mycompany</groupId>
|
||||
<artifactId>Suppliers_Parts_Calendar_Primefaces</artifactId>
|
||||
<version>1.0-SNAPSHOT</version>
|
||||
<packaging>war</packaging>
|
||||
<name>Suppliers_Parts_Calendar_Primefaces</name>
|
||||
|
||||
<properties>
|
||||
<maven.compiler.source>1.8</maven.compiler.source>
|
||||
<maven.compiler.target>1.8</maven.compiler.target>
|
||||
<endorsed.dir>${project.build.directory}/endorsed</endorsed.dir>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
<failOnMissingWebXml>false</failOnMissingWebXml>
|
||||
<jakartaee>9.0.0</jakartaee>
|
||||
</properties>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>jakarta.platform</groupId>
|
||||
<artifactId>jakarta.jakartaee-api</artifactId>
|
||||
<version>${jakartaee}</version>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.mysql</groupId>
|
||||
<artifactId>mysql-connector-j</artifactId>
|
||||
<version>8.1.0</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.primefaces</groupId>
|
||||
<artifactId>primefaces</artifactId>
|
||||
<version>12.0.0</version>
|
||||
<classifier>jakarta</classifier>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-compiler-plugin</artifactId>
|
||||
<version>3.1</version>
|
||||
<configuration>
|
||||
<source>1.8</source>
|
||||
<target>1.8</target>
|
||||
<compilerArguments>
|
||||
<endorseddirs>${endorsed.dir}</endorseddirs>
|
||||
</compilerArguments>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-war-plugin</artifactId>
|
||||
<version>2.3</version>
|
||||
<configuration>
|
||||
<failOnMissingWebXml>false</failOnMissingWebXml>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-dependency-plugin</artifactId>
|
||||
<version>2.6</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<phase>validate</phase>
|
||||
<goals>
|
||||
<goal>copy</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<outputDirectory>${endorsed.dir}</outputDirectory>
|
||||
<silent>true</silent>
|
||||
<artifactItems>
|
||||
<artifactItem>
|
||||
<groupId>jakarta.platform</groupId>
|
||||
<artifactId>jakarta.jakartaee-api</artifactId>
|
||||
<version>${jakartaee}</version>
|
||||
<type>jar</type>
|
||||
</artifactItem>
|
||||
</artifactItems>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
</project>
|
@@ -0,0 +1,13 @@
|
||||
package com.mycompany.supplierspartsdatabase;
|
||||
|
||||
import jakarta.ws.rs.ApplicationPath;
|
||||
import jakarta.ws.rs.core.Application;
|
||||
|
||||
/**
|
||||
* Configures Jakarta RESTful Web Services for the application.
|
||||
* @author Juneau
|
||||
*/
|
||||
@ApplicationPath("resources")
|
||||
public class JakartaRestConfiguration extends Application {
|
||||
|
||||
}
|
@@ -0,0 +1,20 @@
|
||||
package com.mycompany.supplierspartsdatabase.resources;
|
||||
|
||||
import jakarta.ws.rs.GET;
|
||||
import jakarta.ws.rs.Path;
|
||||
import jakarta.ws.rs.core.Response;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author
|
||||
*/
|
||||
@Path("jakartaee9")
|
||||
public class JakartaEE9Resource {
|
||||
|
||||
@GET
|
||||
public Response ping(){
|
||||
return Response
|
||||
.ok("ping Jakarta EE")
|
||||
.build();
|
||||
}
|
||||
}
|
@@ -0,0 +1,166 @@
|
||||
/*
|
||||
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
|
||||
* Click nbfs://nbhost/SystemFileSystem/Templates/JSF/JSFManagedBean.java to edit this template
|
||||
*/
|
||||
package edu.slcc.asdv.beans;
|
||||
|
||||
import edu.slcc.asdv.bl.DBase;
|
||||
import edu.slcc.asdv.bl.players.DatabaseManipulationPlayers;
|
||||
import edu.slcc.asdv.bl.players.Players;
|
||||
import jakarta.annotation.PostConstruct;
|
||||
import jakarta.inject.Named;
|
||||
import jakarta.enterprise.context.SessionScoped;
|
||||
import jakarta.faces.application.FacesMessage;
|
||||
import jakarta.faces.application.FacesMessage.Severity;
|
||||
import jakarta.faces.context.FacesContext;
|
||||
import jakarta.faces.event.ComponentSystemEvent;
|
||||
import jakarta.inject.Inject;
|
||||
import java.io.Serializable;
|
||||
import java.util.List;
|
||||
|
||||
@Named(value = "supplierBean")
|
||||
@SessionScoped
|
||||
public class SupplierBean implements Serializable {
|
||||
|
||||
//DBase dms = new DatabaseManipulationSupplier();
|
||||
@Inject
|
||||
DatabaseManipulationPlayers dms;
|
||||
List<Players> suppliers;
|
||||
|
||||
|
||||
/*
|
||||
public SupplierBean()
|
||||
{
|
||||
try
|
||||
{
|
||||
suppliers = dms.listAll();
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
suppliers = null;
|
||||
}
|
||||
}
|
||||
*/
|
||||
@PostConstruct
|
||||
public void init()
|
||||
{
|
||||
try {
|
||||
suppliers = dms.listAll();
|
||||
} catch (Exception e) {
|
||||
suppliers = null;
|
||||
}
|
||||
}
|
||||
|
||||
public DatabaseManipulationPlayers getDms()
|
||||
{
|
||||
return dms;
|
||||
}
|
||||
|
||||
public void displayExceptionMessageAtPreRenderListener(ComponentSystemEvent event)
|
||||
{
|
||||
if (suppliers == null) {
|
||||
addMessage("Database problem occured.",
|
||||
"", FacesMessage.SEVERITY_ERROR);
|
||||
}
|
||||
}
|
||||
|
||||
public List<Players> getSuppliers()
|
||||
{
|
||||
return suppliers;
|
||||
}
|
||||
|
||||
public void insertSupplier()
|
||||
{
|
||||
System.out.println("insertSupplier(Supplier s)");
|
||||
suppliers.add(new Players());
|
||||
}
|
||||
|
||||
public void deleteSupplier(Players s)
|
||||
{
|
||||
if (suppliers == null) {
|
||||
return;
|
||||
}
|
||||
int totalRowsUpdated = 0;
|
||||
try {
|
||||
int rowsUpdated = this.dms.delete(s);
|
||||
if (rowsUpdated > 0) {
|
||||
suppliers = dms.listAll();
|
||||
totalRowsUpdated += rowsUpdated;
|
||||
}
|
||||
} catch (Exception e) {
|
||||
String msg = ("Numbers of rows updated is 0.");
|
||||
addMessage(msg, e.getMessage(), FacesMessage.SEVERITY_ERROR);
|
||||
}
|
||||
if (totalRowsUpdated > 0) {
|
||||
String msg = ("Numbers of rows updated: " + totalRowsUpdated);
|
||||
addMessage(msg, "no exception", FacesMessage.SEVERITY_INFO);
|
||||
}
|
||||
}
|
||||
|
||||
public void deleteSupplier()
|
||||
{
|
||||
if (suppliers == null) {
|
||||
return;
|
||||
}
|
||||
int totalRowsUpdated = 0;
|
||||
for (Players s : this.suppliers) {
|
||||
if (s.isModify()) {
|
||||
try {
|
||||
int rowsUpdated = this.dms.delete(s);
|
||||
if (rowsUpdated > 0) {
|
||||
totalRowsUpdated += rowsUpdated;
|
||||
s.setModify(false);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
String msg = ("Numbers of rows updated is 0.");
|
||||
addMessage(msg, e.getMessage(), FacesMessage.SEVERITY_ERROR);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (totalRowsUpdated > 0) {
|
||||
try {
|
||||
suppliers = dms.listAll();
|
||||
} catch (Exception e) {
|
||||
suppliers = null;
|
||||
addMessage("Unable to obtain suppliers!", "no exception", FacesMessage.SEVERITY_INFO);
|
||||
}
|
||||
String msg = ("Numbers of rows updated: " + totalRowsUpdated);
|
||||
addMessage(msg, "no exception", FacesMessage.SEVERITY_INFO);
|
||||
}
|
||||
}
|
||||
|
||||
public void saveFromUpdate()
|
||||
{
|
||||
if (suppliers == null) {
|
||||
return;
|
||||
}
|
||||
int totalRowsUpdated = 0;
|
||||
for (Players s : this.suppliers) {
|
||||
if (s.isModify()) {
|
||||
try {
|
||||
int rowsUpdated = this.dms.update(s);
|
||||
if (rowsUpdated > 0) {
|
||||
System.out.println(s);
|
||||
totalRowsUpdated += rowsUpdated;
|
||||
s.setModify(false);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
String msg = ("Numbers of rows updated is 0.");
|
||||
addMessage(msg, e.getMessage(), FacesMessage.SEVERITY_ERROR);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (totalRowsUpdated > 0) {
|
||||
String msg = ("Numbers of rows updated: " + totalRowsUpdated);
|
||||
addMessage(msg, "no exception", FacesMessage.SEVERITY_INFO);
|
||||
}
|
||||
}
|
||||
|
||||
public void addMessage(String summary, String detail, Severity severity)
|
||||
{
|
||||
FacesMessage msg = new FacesMessage(severity, summary, detail);
|
||||
FacesContext.getCurrentInstance().addMessage(null, msg);
|
||||
}
|
||||
}
|
@@ -0,0 +1,30 @@
|
||||
/*
|
||||
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
|
||||
* Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
|
||||
*/
|
||||
package edu.slcc.asdv.bl;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.sql.SQLException;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author asdv5
|
||||
*/
|
||||
public interface DBase<T>
|
||||
{
|
||||
List<T> listAll()
|
||||
throws SQLException;
|
||||
|
||||
int update( T t)
|
||||
throws SQLException;
|
||||
|
||||
int delete( T t)
|
||||
throws SQLException;
|
||||
|
||||
|
||||
int insert( T t)
|
||||
throws SQLException;
|
||||
|
||||
}
|
@@ -0,0 +1,103 @@
|
||||
/*
|
||||
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
|
||||
* Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
|
||||
*/
|
||||
package edu.slcc.asdv.bl;
|
||||
|
||||
import java.sql.Connection;
|
||||
import java.sql.DriverManager;
|
||||
import java.sql.SQLException;
|
||||
import java.text.ParseException;
|
||||
import java.text.SimpleDateFormat;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author asdv5
|
||||
*/
|
||||
public class UtilitiesDatabase
|
||||
{
|
||||
public Connection connection(
|
||||
String databaseName,
|
||||
String userName,
|
||||
String password,
|
||||
String URL2
|
||||
|
||||
) //throws InstantiationException, IllegalAccessException
|
||||
{
|
||||
/*
|
||||
String databaseName = "suppliers_parts_23";
|
||||
String userName = "root";
|
||||
String password = "root";
|
||||
String URL2 = "com.mysql.jdbc.Driver";
|
||||
Connection con = null;
|
||||
*/
|
||||
Connection con;
|
||||
try
|
||||
{// Load Sun's jdbc driver
|
||||
Class.forName(URL2).newInstance();
|
||||
System.out.println("JDBC Driver loaded!");
|
||||
}
|
||||
catch (Exception e) // driver not found
|
||||
{
|
||||
System.err.println("Unable to load database driver");
|
||||
System.err.println("Details : " + e);
|
||||
return null;
|
||||
}
|
||||
String ip = "localhost"; //internet connection
|
||||
String url = "jdbc:mysql://" + ip + ":3306/" + databaseName + "?allowPublicKeyRetrieval=true&useSSL=false";
|
||||
try
|
||||
{
|
||||
con = DriverManager.getConnection(url, userName, password);
|
||||
con.setReadOnly(false);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
System.err.println(e.toString());
|
||||
return null;
|
||||
}
|
||||
System.out.println("connection successfull");
|
||||
return con;
|
||||
}
|
||||
|
||||
|
||||
public void closeDatabaseConnection( Connection con)
|
||||
{
|
||||
try
|
||||
{
|
||||
if (con != null)
|
||||
{
|
||||
con.close();
|
||||
}
|
||||
}
|
||||
catch (SQLException e)
|
||||
{
|
||||
System.out.println(e);
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
public static java.sql.Date stringDateToSqlDate(String sDate)
|
||||
{
|
||||
java.util.Date date = null;
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
||||
try
|
||||
{
|
||||
date = sdf.parse(sDate);
|
||||
}
|
||||
catch (ParseException e)
|
||||
{
|
||||
e.printStackTrace();
|
||||
}
|
||||
return new java.sql.Date( date.getTime() );
|
||||
|
||||
}
|
||||
|
||||
|
||||
public static java.util.Date stringDateToJavaUtilitiesDate(String sDate)
|
||||
{
|
||||
java.sql.Date sqldate = stringDateToSqlDate(sDate);
|
||||
return new java.util.Date(sqldate.getTime() );
|
||||
}
|
||||
}
|
@@ -0,0 +1,104 @@
|
||||
/*
|
||||
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
|
||||
* Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
|
||||
*/
|
||||
package edu.slcc.asdv.bl.part;
|
||||
|
||||
import edu.slcc.asdv.bl.DBase;
|
||||
import edu.slcc.asdv.bl.UtilitiesDatabase;
|
||||
import java.sql.Connection;
|
||||
import java.sql.PreparedStatement;
|
||||
import java.sql.ResultSet;
|
||||
import java.sql.SQLException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author asdv5
|
||||
*/
|
||||
public class DatabaseManipulationPart implements DBase<Part>
|
||||
{
|
||||
@Override
|
||||
public List<Part> listAll()
|
||||
{
|
||||
List<Part> tableParts = new ArrayList<Part>();
|
||||
String databaseName = "suppliers_parts_23";
|
||||
String userName = "root";
|
||||
String password = "root";
|
||||
String URL2 = "com.mysql.jdbc.Driver";
|
||||
Connection con = new UtilitiesDatabase().connection(
|
||||
databaseName, userName, password, URL2);
|
||||
PreparedStatement ps = null;
|
||||
try
|
||||
{
|
||||
if (con == null)
|
||||
{
|
||||
throw new RuntimeException("cannot connect to database");
|
||||
}
|
||||
String table = "";
|
||||
ResultSet rs = null;
|
||||
String sqlStr = "SELECT * FROM part";
|
||||
//prepare statement
|
||||
ps = con.prepareStatement(sqlStr);
|
||||
//execute
|
||||
rs = ps.executeQuery();
|
||||
int row = 0;
|
||||
while (rs.next())
|
||||
{
|
||||
String pNumber = rs.getString(1);
|
||||
String pName = rs.getString(2);
|
||||
String color = rs.getString(3) + " ";
|
||||
String city = rs.getString(4) + " ";
|
||||
Part part = new Part(pNumber, pName, color, city);
|
||||
tableParts.add(part);
|
||||
row++;
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
ex.printStackTrace();
|
||||
}
|
||||
finally
|
||||
{
|
||||
try
|
||||
{
|
||||
new UtilitiesDatabase().closeDatabaseConnection(con);
|
||||
// close the resources
|
||||
if (ps != null)
|
||||
{
|
||||
ps.close();
|
||||
}
|
||||
}
|
||||
catch (SQLException sqle)
|
||||
{
|
||||
sqle.printStackTrace();
|
||||
}
|
||||
}
|
||||
return tableParts;
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
DatabaseManipulationPart dmp = new DatabaseManipulationPart();
|
||||
System.out.println(dmp.listAll());
|
||||
}
|
||||
|
||||
@Override
|
||||
public int update(Part t)
|
||||
{
|
||||
throw new UnsupportedOperationException("Not supported yet."); // Generated from nbfs://nbhost/SystemFileSystem/Templates/Classes/Code/GeneratedMethodBody
|
||||
}
|
||||
|
||||
@Override
|
||||
public int delete(Part t) throws SQLException
|
||||
{
|
||||
throw new UnsupportedOperationException("Not supported yet."); // Generated from nbfs://nbhost/SystemFileSystem/Templates/Classes/Code/GeneratedMethodBody
|
||||
}
|
||||
|
||||
@Override
|
||||
public int insert(Part t) throws SQLException
|
||||
{
|
||||
return -1;
|
||||
}
|
||||
}
|
@@ -0,0 +1,75 @@
|
||||
/*
|
||||
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
|
||||
* Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
|
||||
*/
|
||||
package edu.slcc.asdv.bl.part;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author asdv5
|
||||
*/
|
||||
public class Part
|
||||
{
|
||||
private String pnumber;
|
||||
private String pname;
|
||||
private String color;
|
||||
private String city;
|
||||
|
||||
public Part(String pnumber, String pname, String color, String city)
|
||||
{
|
||||
this.pnumber = pnumber;
|
||||
this.pname = pname;
|
||||
this.color = color;
|
||||
this.city = city;
|
||||
}
|
||||
|
||||
|
||||
public String getColor()
|
||||
{
|
||||
return color;
|
||||
}
|
||||
|
||||
public void setColor(String color)
|
||||
{
|
||||
this.color = color;
|
||||
}
|
||||
|
||||
public String getCity()
|
||||
{
|
||||
return city;
|
||||
}
|
||||
|
||||
public void setCity(String city)
|
||||
{
|
||||
this.city = city;
|
||||
}
|
||||
|
||||
public String getPname()
|
||||
{
|
||||
return pname;
|
||||
}
|
||||
|
||||
public void setPname(String pname)
|
||||
{
|
||||
this.pname = pname;
|
||||
}
|
||||
|
||||
public String getPnumber()
|
||||
{
|
||||
return pnumber;
|
||||
}
|
||||
|
||||
public void setPnumber(String pnumber)
|
||||
{
|
||||
this.pnumber = pnumber;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString()
|
||||
{
|
||||
return "Part{" + "pnumber=" + pnumber + ", pname=" + pname + ", color=" + color + ", city=" + city + '}';
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
@@ -0,0 +1,220 @@
|
||||
/*
|
||||
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
|
||||
* Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
|
||||
*/
|
||||
package edu.slcc.asdv.bl.players;
|
||||
|
||||
import edu.slcc.asdv.bl.DBase;
|
||||
import edu.slcc.asdv.bl.UtilitiesDatabase;
|
||||
import java.io.Serializable;
|
||||
import java.sql.Connection;
|
||||
import java.sql.PreparedStatement;
|
||||
import java.sql.ResultSet;
|
||||
import java.sql.SQLException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author asdv5
|
||||
*/
|
||||
public class DatabaseManipulationPlayers
|
||||
implements DBase<Players>, Serializable
|
||||
{
|
||||
final String userName = "java";
|
||||
final String password = "8VCS49HT2xjsEZvC";
|
||||
final String databaseName = "tennis_db";
|
||||
@Override
|
||||
public List<Players> listAll()
|
||||
throws SQLException
|
||||
{
|
||||
// test exception code
|
||||
//if ( true)
|
||||
// throw new SQLException();
|
||||
|
||||
List<Players> tableSuppliers = new ArrayList<Players>();
|
||||
String URL2 = "com.mysql.jdbc.Driver";
|
||||
Connection con = new UtilitiesDatabase().connection(
|
||||
databaseName, userName, password, URL2);
|
||||
PreparedStatement ps = null;
|
||||
try
|
||||
{
|
||||
if (con == null)
|
||||
{
|
||||
throw new RuntimeException("cannot connect to database");
|
||||
}
|
||||
String table = "";
|
||||
ResultSet rs = null;
|
||||
String sqlStr = "SELECT * FROM tennis_db";
|
||||
//prepare statement
|
||||
ps = con.prepareStatement(sqlStr);
|
||||
//execute
|
||||
rs = ps.executeQuery();
|
||||
int row = 0;
|
||||
while (rs.next())
|
||||
{
|
||||
String sNumber = rs.getString(1);
|
||||
String sName = rs.getString(2);
|
||||
String bdate = "";
|
||||
if ( rs.getDate(3) == null )
|
||||
{
|
||||
bdate = "2000-01-01 ";
|
||||
}
|
||||
else
|
||||
bdate = rs.getDate(3) + " ";
|
||||
int status = rs.getInt(4);
|
||||
String city = rs.getString(5) + " ";
|
||||
Players supplier = new Players(String town, String postCode, int houseNo, String street, int yearJoined, String gender, int playerNo, String name, String init, String birthDate, Date birthDateDate);
|
||||
tableSuppliers.add(supplier);
|
||||
row++;
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
ex.printStackTrace();
|
||||
throw ex;
|
||||
}
|
||||
finally
|
||||
{
|
||||
try
|
||||
{
|
||||
new UtilitiesDatabase().closeDatabaseConnection(con);
|
||||
// close the resources
|
||||
if (ps != null)
|
||||
{
|
||||
ps.close();
|
||||
}
|
||||
}
|
||||
catch (SQLException sqle)
|
||||
{
|
||||
System.out.println(sqle);
|
||||
sqle.printStackTrace();
|
||||
throw sqle;
|
||||
}
|
||||
}
|
||||
return tableSuppliers;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int update(Players t)
|
||||
throws SQLException
|
||||
{
|
||||
String URL2 = "com.mysql.jdbc.Driver";
|
||||
Connection con = new UtilitiesDatabase().connection(
|
||||
databaseName, userName, password, URL2);
|
||||
int result = 0;
|
||||
PreparedStatement updateSupplier = null;
|
||||
try
|
||||
{
|
||||
if (con == null)
|
||||
{
|
||||
throw new RuntimeException("cannot connect to database");
|
||||
}
|
||||
|
||||
|
||||
updateSupplier = con.prepareStatement(
|
||||
"UPDATE supplier SET snumber=?, sname=?, status=?, birthday=?, city=? WHERE snumber=?");
|
||||
updateSupplier.setString(1, t.getSnumber());
|
||||
updateSupplier.setString(2, t.getSname());
|
||||
updateSupplier.setInt(3, t.getStatus());
|
||||
java.sql.Date bd = UtilitiesDatabase.stringDateToSqlDate(t.getBirthday());
|
||||
updateSupplier.setDate(4, bd);
|
||||
updateSupplier.setString(5, t.getCity());
|
||||
updateSupplier.setString(6, t.getSnumber());
|
||||
result = updateSupplier.executeUpdate();
|
||||
}
|
||||
catch (SQLException ex)
|
||||
{
|
||||
System.err.println(ex.toString());
|
||||
throw ex;
|
||||
}
|
||||
finally
|
||||
{
|
||||
try
|
||||
{
|
||||
new UtilitiesDatabase().closeDatabaseConnection(con);
|
||||
// close the resources
|
||||
if (updateSupplier != null)
|
||||
{
|
||||
updateSupplier.close();
|
||||
}
|
||||
}
|
||||
catch (SQLException sqle)
|
||||
{
|
||||
sqle.printStackTrace();
|
||||
throw sqle;
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int delete(Players c) throws SQLException
|
||||
{
|
||||
String URL2 = "com.mysql.jdbc.Driver";
|
||||
Connection con = new UtilitiesDatabase().connection(
|
||||
databaseName, userName, password, URL2);
|
||||
int result = 0;
|
||||
PreparedStatement ps = null;
|
||||
try
|
||||
{
|
||||
if (con == null)
|
||||
{
|
||||
throw new RuntimeException("Database connection failed.");
|
||||
}
|
||||
String query = "DELETE FROM supplier WHERE snumber=? ";
|
||||
ps = con.prepareStatement(query);
|
||||
ps.setString(1, c.getSnumber());
|
||||
result = ps.executeUpdate();
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
System.err.println(ex.toString());
|
||||
}
|
||||
finally
|
||||
{
|
||||
try
|
||||
{
|
||||
new UtilitiesDatabase().closeDatabaseConnection(con);
|
||||
// close the resources
|
||||
if (ps != null)
|
||||
{
|
||||
ps.close();
|
||||
}
|
||||
}
|
||||
catch (SQLException sqlee)
|
||||
{
|
||||
sqlee.printStackTrace();
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int insert(Players c) throws SQLException {
|
||||
String databaseName = "tennis-23";
|
||||
String driver = "com.mysql.jdbc.Driver";
|
||||
Connection con = new UtilitiesDatabase().connection(databaseName, userName, password, driver);
|
||||
///"UPDATE supplier SET snumber=?, sname=?, status=?, birthday=?, city=? WHERE snumber=?"
|
||||
String sqlStr = "INSERT INTO suppliers (snumber, sname, status, birthday, city) VALUES (?, ?, ?, ?, ?)";
|
||||
int result = 0;
|
||||
|
||||
try (PreparedStatement ps = con.prepareStatement(sqlStr)) {
|
||||
ps.setString(1, c.getSnumber());
|
||||
ps.setString(2, c.getSname());
|
||||
ps.setInt(3, c.getStatus());
|
||||
ps.setDate(4, new java.sql.Date(c.getBirthday_date().getTime())); // Converts java.util.Date to java.sql.Date
|
||||
ps.setString(5, c.getCity());
|
||||
|
||||
result = ps.executeUpdate();
|
||||
} catch (SQLException sqle) {
|
||||
sqle.printStackTrace();
|
||||
throw sqle;
|
||||
} finally {
|
||||
new UtilitiesDatabase().closeDatabaseConnection(con);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
}
|
@@ -0,0 +1,159 @@
|
||||
/*
|
||||
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
|
||||
* Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
|
||||
*/
|
||||
package edu.slcc.asdv.bl.players;
|
||||
|
||||
import edu.slcc.asdv.bl.UtilitiesDatabase;
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author asdv5
|
||||
*/
|
||||
public class Players implements Serializable {
|
||||
|
||||
private String town;
|
||||
private String postCode;
|
||||
private int houseNo;
|
||||
private String street;
|
||||
private int yearJoined;
|
||||
private String gender;
|
||||
private int playerNo;
|
||||
private String name;
|
||||
private String init;
|
||||
private String birthDate;
|
||||
private Date birthDateDate;
|
||||
private boolean insertFromDatatable;
|
||||
private boolean modify;
|
||||
|
||||
public boolean isModify() {
|
||||
return modify;
|
||||
}
|
||||
|
||||
public void setModify(boolean modify) {
|
||||
this.modify = modify;
|
||||
}
|
||||
|
||||
public int getPlayerNo() {
|
||||
return playerNo;
|
||||
}
|
||||
|
||||
public void setPlayerNo(int playerNo) {
|
||||
this.playerNo = playerNo;
|
||||
}
|
||||
|
||||
public String getInit() {
|
||||
return init;
|
||||
}
|
||||
|
||||
public int getYearJoined() {
|
||||
return yearJoined;
|
||||
}
|
||||
|
||||
public String getPostCode() {
|
||||
return postCode;
|
||||
}
|
||||
|
||||
public void setPostCode(String postCode) {
|
||||
this.postCode = postCode;
|
||||
}
|
||||
|
||||
public String getStreet() {
|
||||
return street;
|
||||
}
|
||||
|
||||
public void setStreet(String street) {
|
||||
this.street = street;
|
||||
}
|
||||
|
||||
public int getHouseNo() {
|
||||
return houseNo;
|
||||
}
|
||||
|
||||
public void setHouseNo(int houseNo) {
|
||||
this.houseNo = houseNo;
|
||||
}
|
||||
|
||||
public void setYearJoined(int yearJoined) {
|
||||
this.yearJoined = yearJoined;
|
||||
}
|
||||
|
||||
public void setInit(String init) {
|
||||
this.init = init;
|
||||
}
|
||||
|
||||
public String getTown() {
|
||||
return town;
|
||||
}
|
||||
|
||||
public void setTown(String town) {
|
||||
this.town = town;
|
||||
}
|
||||
|
||||
public String getGender() {
|
||||
return gender;
|
||||
}
|
||||
|
||||
public void setGender(String gender) {
|
||||
this.gender = gender;
|
||||
}
|
||||
|
||||
public Players(String town, String postCode, int houseNo, String street, int yearJoined, String gender, int playerNo, String name, String init, String birthDate, Date birthDateDate) {
|
||||
this.town = town;
|
||||
this.postCode = postCode;
|
||||
this.houseNo = houseNo;
|
||||
this.street = street;
|
||||
this.yearJoined = yearJoined;
|
||||
this.gender = gender;
|
||||
this.playerNo = playerNo;
|
||||
this.name = name;
|
||||
this.init = init;
|
||||
this.modify = true;
|
||||
this.insertFromDatatable = true;
|
||||
this.birthDate = "2000-01-01";
|
||||
this.birthDateDate = UtilitiesDatabase.stringDateToJavaUtilitiesDate(this.birthDate);
|
||||
}
|
||||
|
||||
|
||||
public boolean isInsertFromDatatable() {
|
||||
return insertFromDatatable;
|
||||
}
|
||||
|
||||
public void setInsertFromDatatable(boolean insertFromDatatable) {
|
||||
this.insertFromDatatable = insertFromDatatable;
|
||||
}
|
||||
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
public void setName(String name) {
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
public String getBirthday() {
|
||||
return birthDate;
|
||||
}
|
||||
|
||||
public void setBirthday(String birthday) {
|
||||
this.birthDate = birthday;
|
||||
}
|
||||
|
||||
public Date getBirthday_date() {
|
||||
birthDateDate = UtilitiesDatabase.stringDateToJavaUtilitiesDate(this.birthDate);
|
||||
return birthDateDate;
|
||||
}
|
||||
|
||||
public void setBirthday_date(Date birthday_date) {
|
||||
this.birthDateDate = birthday_date;
|
||||
int year = this.birthDateDate.getYear() + 1900;
|
||||
int month = this.birthDateDate.getMonth() + 1;
|
||||
int day = this.birthDateDate.getDate();
|
||||
this.birthDate = Integer.toString(year) + "-"
|
||||
+ Integer.toString(month) + "-"
|
||||
+ Integer.toString(day);
|
||||
}
|
||||
|
||||
}
|
@@ -0,0 +1,138 @@
|
||||
/*
|
||||
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
|
||||
* Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
|
||||
*/
|
||||
package edu.slcc.asdv.bl.players;
|
||||
|
||||
import edu.slcc.asdv.bl.UtilitiesDatabase;
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author asdv5
|
||||
*/
|
||||
public class Supplier implements Serializable
|
||||
{
|
||||
private String snumber;
|
||||
private String sname;
|
||||
private String birthday;
|
||||
private int status;
|
||||
private String city;
|
||||
private Date birthday_date;
|
||||
private boolean insertFromDatatable;
|
||||
private boolean modify;
|
||||
|
||||
public boolean isModify()
|
||||
{
|
||||
return modify;
|
||||
}
|
||||
|
||||
public void setModify(boolean modify)
|
||||
{
|
||||
this.modify = modify;
|
||||
}
|
||||
|
||||
public Supplier()
|
||||
{
|
||||
this.modify = true;
|
||||
insertFromDatatable = true;
|
||||
birthday = "2000-01-01";
|
||||
birthday_date = UtilitiesDatabase.stringDateToJavaUtilitiesDate(birthday);
|
||||
}
|
||||
|
||||
public Supplier(String snumber, String sname, String birthday, int status, String city)
|
||||
{
|
||||
insertFromDatatable = false;
|
||||
this.snumber = snumber;
|
||||
this.sname = sname;
|
||||
this.birthday = birthday;
|
||||
this.status = status;
|
||||
this.city = city;
|
||||
this.modify = false;
|
||||
}
|
||||
|
||||
public boolean isInsertFromDatatable()
|
||||
{
|
||||
return insertFromDatatable;
|
||||
}
|
||||
|
||||
public void setInsertFromDatatable(boolean insertFromDatatable)
|
||||
{
|
||||
this.insertFromDatatable = insertFromDatatable;
|
||||
}
|
||||
|
||||
public String getCity()
|
||||
{
|
||||
return city;
|
||||
}
|
||||
|
||||
public void setCity(String city)
|
||||
{
|
||||
this.city = city;
|
||||
}
|
||||
|
||||
public int getStatus()
|
||||
{
|
||||
return status;
|
||||
}
|
||||
|
||||
public void setStatus(int status)
|
||||
{
|
||||
this.status = status;
|
||||
}
|
||||
|
||||
public String getBirthday()
|
||||
{
|
||||
return birthday;
|
||||
}
|
||||
|
||||
public void setBirthday(String birthday)
|
||||
{
|
||||
this.birthday = birthday;
|
||||
}
|
||||
|
||||
public Date getBirthday_date()
|
||||
{
|
||||
birthday_date = UtilitiesDatabase.stringDateToJavaUtilitiesDate(this.birthday);
|
||||
return birthday_date;
|
||||
}
|
||||
|
||||
public void setBirthday_date(Date birthday_date)
|
||||
{
|
||||
this.birthday_date = birthday_date;
|
||||
int year = this.birthday_date.getYear() + 1900;
|
||||
int month = this.birthday_date.getMonth() + 1;
|
||||
int day = this.birthday_date.getDate();
|
||||
this.birthday = Integer.toString(year) + "-"
|
||||
+ Integer.toString(month) + "-"
|
||||
+ Integer.toString(day);
|
||||
}
|
||||
|
||||
public String getSname()
|
||||
{
|
||||
return sname;
|
||||
}
|
||||
|
||||
public void setSname(String sname)
|
||||
{
|
||||
System.out.println(sname);
|
||||
this.sname = sname;
|
||||
}
|
||||
|
||||
public String getSnumber()
|
||||
{
|
||||
return snumber;
|
||||
}
|
||||
|
||||
public void setSnumber(String snumber)
|
||||
{
|
||||
this.snumber = snumber;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString()
|
||||
{
|
||||
return "Supplier{" + "snumber=" + snumber + ", sname=" + sname + ", birthday=" + birthday + ", status=" + status + ", city=" + city + '}';
|
||||
}
|
||||
}
|
@@ -0,0 +1,7 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<persistence version="3.0" xmlns="https://jakarta.ee/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="https://jakarta.ee/xml/ns/persistence https://jakarta.ee/xml/ns/persistence/persistence_3_0.xsd">
|
||||
<!-- Define Persistence Unit -->
|
||||
<persistence-unit name="my_persistence_unit">
|
||||
|
||||
</persistence-unit>
|
||||
</persistence>
|
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<beans xmlns="https://jakarta.ee/xml/ns/jakartaee"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/beans_3_0.xsd"
|
||||
bean-discovery-mode="all">
|
||||
</beans>
|
@@ -0,0 +1,25 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE glassfish-web-app PUBLIC "-//GlassFish.org//DTD GlassFish Application Server 3.1 Servlet 3.0//EN" "http://glassfish.org/dtds/glassfish-web-app_3_0-1.dtd">
|
||||
<!--
|
||||
Copyright (c) 1997, 2018 Oracle and/or its affiliates. All rights reserved.
|
||||
|
||||
This program and the accompanying materials are made available under the
|
||||
terms of the Eclipse Public License v. 2.0, which is available at
|
||||
http://www.eclipse.org/legal/epl-2.0.
|
||||
|
||||
This Source Code may also be made available under the following Secondary
|
||||
Licenses when the conditions for such availability set forth in the
|
||||
Eclipse Public License v. 2.0 are satisfied: GNU General Public License,
|
||||
version 2 with the GNU Classpath Exception, which is available at
|
||||
https://www.gnu.org/software/classpath/license.html.
|
||||
|
||||
SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
||||
-->
|
||||
<glassfish-web-app error-url="">
|
||||
<class-loader delegate="true"/>
|
||||
<jsp-config>
|
||||
<property name="keepgenerated" value="true">
|
||||
<description>Keep a copy of the generated servlet class' java code.</description>
|
||||
</property>
|
||||
</jsp-config>
|
||||
</glassfish-web-app>
|
@@ -0,0 +1,24 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<web-app version="5.0" xmlns="https://jakarta.ee/xml/ns/jakartaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/web-app_5_0.xsd">
|
||||
<context-param>
|
||||
<param-name>jakarta.faces.PROJECT_STAGE</param-name>
|
||||
<param-value>Development</param-value>
|
||||
</context-param>
|
||||
<servlet>
|
||||
<servlet-name>Faces Servlet</servlet-name>
|
||||
<servlet-class>jakarta.faces.webapp.FacesServlet</servlet-class>
|
||||
<load-on-startup>1</load-on-startup>
|
||||
</servlet>
|
||||
<servlet-mapping>
|
||||
<servlet-name>Faces Servlet</servlet-name>
|
||||
<url-pattern>/faces/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
<session-config>
|
||||
<session-timeout>
|
||||
30
|
||||
</session-timeout>
|
||||
</session-config>
|
||||
<welcome-file-list>
|
||||
<welcome-file>faces/supplier.xhtml</welcome-file>
|
||||
</welcome-file-list>
|
||||
</web-app>
|
@@ -0,0 +1,51 @@
|
||||
<?xml version='1.0' encoding='UTF-8' ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml"
|
||||
xmlns:h="http://xmlns.jcp.org/jsf/html">
|
||||
<h:head>
|
||||
<h:outputStylesheet library="css" name="styles.css"/>
|
||||
<title>Supplier Parts DB</title>
|
||||
</h:head>
|
||||
<h:body>
|
||||
|
||||
<h:form>
|
||||
<h1> Suppliers-Parts Database </h1>
|
||||
|
||||
<h:panelGrid columns="2">
|
||||
<h:outputLabel styleClass="label" value="Supplier ID:"/>
|
||||
<h:inputText value="#{suppliers.snumber}"/>
|
||||
</h:panelGrid>
|
||||
|
||||
<h:panelGrid columns="8">
|
||||
<h:outputLabel styleClass="label" value="Supplier Name"/>
|
||||
<h:inputText
|
||||
value="#{suppliers.sname}"/>
|
||||
<h:outputLabel styleClass="label" value="Status" />
|
||||
<h:inputText
|
||||
value="#{suppliers.status}"/>
|
||||
<h:outputLabel styleClass="label" value="Birthday" />
|
||||
<h:inputText value="#{suppliers.birthday}"/>
|
||||
|
||||
<h:outputLabel styleClass="label" value="City" />
|
||||
<h:inputText
|
||||
value="#{suppliers.city}"/>
|
||||
</h:panelGrid>
|
||||
|
||||
<h:panelGrid columns="6">
|
||||
<h:commandButton styleClass="button" value="View Supplier" action="#{suppliers.viewSupplier()}"/>
|
||||
<h:commandButton value="Insert Supplier" action="#{suppliers.insertSupplier}"/>
|
||||
<h:commandButton value="Update Supplier" action="#{suppliers.updateSupplier}"/>
|
||||
<h:commandButton value="Delete Supplier" action="#{suppliers.deleteSupplier}"/>
|
||||
<h:commandButton value="List All Suppliers" action="#{suppliers.listAll}"/>
|
||||
<h:commandButton value="Clear" action="#{suppliers.clear}"/>
|
||||
</h:panelGrid>
|
||||
|
||||
<h:panelGrid>
|
||||
<h:outputText escape="false" style="color:green"
|
||||
value="#{suppliers.result}">
|
||||
</h:outputText>
|
||||
</h:panelGrid>
|
||||
|
||||
</h:form>
|
||||
</h:body>
|
||||
</html>
|
@@ -0,0 +1,71 @@
|
||||
.body {
|
||||
background: #eee;
|
||||
}
|
||||
|
||||
.button {
|
||||
margin: 10px;
|
||||
border-left: thin solid darkGray;
|
||||
border-bottom: thin solid darkGray;
|
||||
border-top: thin solid lightGray;
|
||||
border-right: thin solid lightGray;
|
||||
color: #777;
|
||||
background: #A7C942;
|
||||
font-family: "Comic Sans MS";
|
||||
border-radius: 20%;
|
||||
}
|
||||
h1
|
||||
{
|
||||
vertical-align: top;
|
||||
text-align: middle;
|
||||
font-style: italic;
|
||||
color: #888;
|
||||
font-size: 2em;
|
||||
font-family: "Comic Sans MS";
|
||||
|
||||
}
|
||||
|
||||
.label
|
||||
{
|
||||
color: #888;
|
||||
font-size: 0.8em;
|
||||
font-family: "Comic Sans MS";
|
||||
}
|
||||
.leftImage {
|
||||
float: left;
|
||||
margin-right: 1em;
|
||||
}
|
||||
|
||||
.backLink {
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
|
||||
.tableHeader {
|
||||
font-family:"Trebuchet MS", Arial, Helvetica, sans-serif;
|
||||
border-collapse:collapse;
|
||||
font-size:1.1em;
|
||||
text-align:left;
|
||||
padding-top:5px;
|
||||
padding-bottom:4px;
|
||||
background-color:#A7C942;
|
||||
color:white;
|
||||
border:1px solid #98bf21;
|
||||
}
|
||||
|
||||
.oddTableRow {
|
||||
border:1px solid #98bf21;
|
||||
}
|
||||
|
||||
.evenTableRow {
|
||||
background-color: #eeeeee;
|
||||
font-size:1em;
|
||||
|
||||
padding:3px 7px 2px 7px;
|
||||
|
||||
color:#000000;
|
||||
background-color:#EAF2D3;
|
||||
}
|
||||
|
||||
.table {
|
||||
border:1px solid green;
|
||||
}
|
@@ -0,0 +1,101 @@
|
||||
<?xml version='1.0' encoding='UTF-8' ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml"
|
||||
xmlns:h="http://xmlns.jcp.org/jsf/html"
|
||||
xmlns:f="http://xmlns.jcp.org/jsf/core"
|
||||
xmlns:p="http://primefaces.org/ui">
|
||||
<h:head>
|
||||
<title>Suppliers Table</title>
|
||||
</h:head>
|
||||
<h:body>
|
||||
<h:form>
|
||||
<p:growl id="globalgrowl" showDetail="false" showSummary="true" life="2000"/>
|
||||
|
||||
<p:dataTable id="id_supplier_table"
|
||||
var="supplier"
|
||||
value="#{supplierBean.getSuppliers()}"
|
||||
scrollable="true"
|
||||
paginatorAlwaysVisible="true"
|
||||
paginator="true"
|
||||
paginatorPosition="top"
|
||||
rows="10"
|
||||
lazy="true"
|
||||
>
|
||||
<f:facet name="header"> <h:outputText value="Suppliers Table" style="font-size: 1.2em"/></f:facet>
|
||||
<f:event type="preRenderView"
|
||||
listener="#{supplierBean.displayExceptionMessageAtPreRenderListener}"
|
||||
/>
|
||||
|
||||
<p:column>
|
||||
<f:facet name="header"> <h:outputText value="update" /></f:facet>
|
||||
<h:selectBooleanCheckbox onclick="submit()"
|
||||
value="#{supplier.modify}">
|
||||
</h:selectBooleanCheckbox >
|
||||
</p:column>
|
||||
<p:column id="idColumnSnumber">
|
||||
<f:facet name="header"> <h:outputText value="snumber" /></f:facet>
|
||||
|
||||
<h:inputText disabled ="#{!supplier.insertFromDatatable and !supplier.modify}" value="#{supplier.snumber}">
|
||||
|
||||
</h:inputText>
|
||||
</p:column>
|
||||
|
||||
<p:column>
|
||||
<f:facet name="header"> <h:outputText value="sname" /></f:facet>
|
||||
|
||||
<h:inputText disabled ="#{!supplier.modify}" value="#{supplier.sname}"/>
|
||||
</p:column>
|
||||
<p:column>
|
||||
<f:facet name="header"> <h:outputText value="birthday" /></f:facet>
|
||||
|
||||
<p:calendar
|
||||
disabled ="#{!supplier.modify}"
|
||||
value="#{supplier.birthday_date}"
|
||||
pattern="yyyy/MM/dd"/>
|
||||
</p:column>
|
||||
<p:column>
|
||||
<f:facet name="header"> <h:outputText value="status" /></f:facet>
|
||||
|
||||
<h:inputText disabled ="#{!supplier.modify}" value="#{supplier.status}"/>
|
||||
</p:column>
|
||||
<p:column>
|
||||
<f:facet name="header"> <h:outputText value="city" /></f:facet>
|
||||
|
||||
<h:inputText disabled ="#{!supplier.modify}" value="#{supplier.city}"/>
|
||||
</p:column>
|
||||
|
||||
|
||||
|
||||
</p:dataTable>
|
||||
<p:draggable for="id_supplier_table"/>
|
||||
|
||||
<p:commandButton value="Save" action="#{supplierBean.saveFromUpdate()}" />
|
||||
<p:commandButton id="idInsertRow" value="Insert Row" action="#{supplierBean.insertSupplier()}" />
|
||||
<p:commandButton title="Delete Supplier"
|
||||
value="X" styleClass="ui-button-raised ui-button-danger"
|
||||
icon="pi pi-trash"
|
||||
onclick="PF('asdv-dlg-delete').show();"
|
||||
>
|
||||
|
||||
</p:commandButton >
|
||||
<p:dialog id="dlg" header="Delete a Supplier"
|
||||
widgetVar="asdv-dlg-delete" modal="true">
|
||||
<h:outputText value="Are you sure you want to delete this supplier?"/>
|
||||
<br/>
|
||||
<br/>
|
||||
<p:commandButton value="OK" icon="pi pi-check"
|
||||
update="@form:globalgrowl"
|
||||
onclick="PF('dlg').hide();"
|
||||
action="#{supplierBean.deleteSupplier()}">
|
||||
</p:commandButton >
|
||||
<span> </span>
|
||||
<p:commandButton value="Cancel"
|
||||
styleClass="ui-button-raised ui-button-warning"
|
||||
update="@none"
|
||||
partialSubmit = "true"
|
||||
onclick="PF('dlg').hide();"/>
|
||||
</p:dialog>
|
||||
|
||||
</h:form>
|
||||
</h:body>
|
||||
</html>
|
Binary file not shown.
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<beans xmlns="https://jakarta.ee/xml/ns/jakartaee"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/beans_3_0.xsd"
|
||||
bean-discovery-mode="all">
|
||||
</beans>
|
@@ -0,0 +1,7 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<persistence version="3.0" xmlns="https://jakarta.ee/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="https://jakarta.ee/xml/ns/persistence https://jakarta.ee/xml/ns/persistence/persistence_3_0.xsd">
|
||||
<!-- Define Persistence Unit -->
|
||||
<persistence-unit name="my_persistence_unit">
|
||||
|
||||
</persistence-unit>
|
||||
</persistence>
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,25 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE glassfish-web-app PUBLIC "-//GlassFish.org//DTD GlassFish Application Server 3.1 Servlet 3.0//EN" "http://glassfish.org/dtds/glassfish-web-app_3_0-1.dtd">
|
||||
<!--
|
||||
Copyright (c) 1997, 2018 Oracle and/or its affiliates. All rights reserved.
|
||||
|
||||
This program and the accompanying materials are made available under the
|
||||
terms of the Eclipse Public License v. 2.0, which is available at
|
||||
http://www.eclipse.org/legal/epl-2.0.
|
||||
|
||||
This Source Code may also be made available under the following Secondary
|
||||
Licenses when the conditions for such availability set forth in the
|
||||
Eclipse Public License v. 2.0 are satisfied: GNU General Public License,
|
||||
version 2 with the GNU Classpath Exception, which is available at
|
||||
https://www.gnu.org/software/classpath/license.html.
|
||||
|
||||
SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
||||
-->
|
||||
<glassfish-web-app error-url="">
|
||||
<class-loader delegate="true"/>
|
||||
<jsp-config>
|
||||
<property name="keepgenerated" value="true">
|
||||
<description>Keep a copy of the generated servlet class' java code.</description>
|
||||
</property>
|
||||
</jsp-config>
|
||||
</glassfish-web-app>
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,24 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<web-app version="5.0" xmlns="https://jakarta.ee/xml/ns/jakartaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/web-app_5_0.xsd">
|
||||
<context-param>
|
||||
<param-name>jakarta.faces.PROJECT_STAGE</param-name>
|
||||
<param-value>Development</param-value>
|
||||
</context-param>
|
||||
<servlet>
|
||||
<servlet-name>Faces Servlet</servlet-name>
|
||||
<servlet-class>jakarta.faces.webapp.FacesServlet</servlet-class>
|
||||
<load-on-startup>1</load-on-startup>
|
||||
</servlet>
|
||||
<servlet-mapping>
|
||||
<servlet-name>Faces Servlet</servlet-name>
|
||||
<url-pattern>/faces/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
<session-config>
|
||||
<session-timeout>
|
||||
30
|
||||
</session-timeout>
|
||||
</session-config>
|
||||
<welcome-file-list>
|
||||
<welcome-file>faces/supplier.xhtml</welcome-file>
|
||||
</welcome-file-list>
|
||||
</web-app>
|
@@ -0,0 +1,51 @@
|
||||
<?xml version='1.0' encoding='UTF-8' ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml"
|
||||
xmlns:h="http://xmlns.jcp.org/jsf/html">
|
||||
<h:head>
|
||||
<h:outputStylesheet library="css" name="styles.css"/>
|
||||
<title>Supplier Parts DB</title>
|
||||
</h:head>
|
||||
<h:body>
|
||||
|
||||
<h:form>
|
||||
<h1> Suppliers-Parts Database </h1>
|
||||
|
||||
<h:panelGrid columns="2">
|
||||
<h:outputLabel styleClass="label" value="Supplier ID:"/>
|
||||
<h:inputText value="#{suppliers.snumber}"/>
|
||||
</h:panelGrid>
|
||||
|
||||
<h:panelGrid columns="8">
|
||||
<h:outputLabel styleClass="label" value="Supplier Name"/>
|
||||
<h:inputText
|
||||
value="#{suppliers.sname}"/>
|
||||
<h:outputLabel styleClass="label" value="Status" />
|
||||
<h:inputText
|
||||
value="#{suppliers.status}"/>
|
||||
<h:outputLabel styleClass="label" value="Birthday" />
|
||||
<h:inputText value="#{suppliers.birthday}"/>
|
||||
|
||||
<h:outputLabel styleClass="label" value="City" />
|
||||
<h:inputText
|
||||
value="#{suppliers.city}"/>
|
||||
</h:panelGrid>
|
||||
|
||||
<h:panelGrid columns="6">
|
||||
<h:commandButton styleClass="button" value="View Supplier" action="#{suppliers.viewSupplier()}"/>
|
||||
<h:commandButton value="Insert Supplier" action="#{suppliers.insertSupplier}"/>
|
||||
<h:commandButton value="Update Supplier" action="#{suppliers.updateSupplier}"/>
|
||||
<h:commandButton value="Delete Supplier" action="#{suppliers.deleteSupplier}"/>
|
||||
<h:commandButton value="List All Suppliers" action="#{suppliers.listAll}"/>
|
||||
<h:commandButton value="Clear" action="#{suppliers.clear}"/>
|
||||
</h:panelGrid>
|
||||
|
||||
<h:panelGrid>
|
||||
<h:outputText escape="false" style="color:green"
|
||||
value="#{suppliers.result}">
|
||||
</h:outputText>
|
||||
</h:panelGrid>
|
||||
|
||||
</h:form>
|
||||
</h:body>
|
||||
</html>
|
@@ -0,0 +1,71 @@
|
||||
.body {
|
||||
background: #eee;
|
||||
}
|
||||
|
||||
.button {
|
||||
margin: 10px;
|
||||
border-left: thin solid darkGray;
|
||||
border-bottom: thin solid darkGray;
|
||||
border-top: thin solid lightGray;
|
||||
border-right: thin solid lightGray;
|
||||
color: #777;
|
||||
background: #A7C942;
|
||||
font-family: "Comic Sans MS";
|
||||
border-radius: 20%;
|
||||
}
|
||||
h1
|
||||
{
|
||||
vertical-align: top;
|
||||
text-align: middle;
|
||||
font-style: italic;
|
||||
color: #888;
|
||||
font-size: 2em;
|
||||
font-family: "Comic Sans MS";
|
||||
|
||||
}
|
||||
|
||||
.label
|
||||
{
|
||||
color: #888;
|
||||
font-size: 0.8em;
|
||||
font-family: "Comic Sans MS";
|
||||
}
|
||||
.leftImage {
|
||||
float: left;
|
||||
margin-right: 1em;
|
||||
}
|
||||
|
||||
.backLink {
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
|
||||
.tableHeader {
|
||||
font-family:"Trebuchet MS", Arial, Helvetica, sans-serif;
|
||||
border-collapse:collapse;
|
||||
font-size:1.1em;
|
||||
text-align:left;
|
||||
padding-top:5px;
|
||||
padding-bottom:4px;
|
||||
background-color:#A7C942;
|
||||
color:white;
|
||||
border:1px solid #98bf21;
|
||||
}
|
||||
|
||||
.oddTableRow {
|
||||
border:1px solid #98bf21;
|
||||
}
|
||||
|
||||
.evenTableRow {
|
||||
background-color: #eeeeee;
|
||||
font-size:1em;
|
||||
|
||||
padding:3px 7px 2px 7px;
|
||||
|
||||
color:#000000;
|
||||
background-color:#EAF2D3;
|
||||
}
|
||||
|
||||
.table {
|
||||
border:1px solid green;
|
||||
}
|
@@ -0,0 +1,101 @@
|
||||
<?xml version='1.0' encoding='UTF-8' ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml"
|
||||
xmlns:h="http://xmlns.jcp.org/jsf/html"
|
||||
xmlns:f="http://xmlns.jcp.org/jsf/core"
|
||||
xmlns:p="http://primefaces.org/ui">
|
||||
<h:head>
|
||||
<title>Suppliers Table</title>
|
||||
</h:head>
|
||||
<h:body>
|
||||
<h:form>
|
||||
<p:growl id="globalgrowl" showDetail="false" showSummary="true" life="2000"/>
|
||||
|
||||
<p:dataTable id="id_supplier_table"
|
||||
var="supplier"
|
||||
value="#{supplierBean.getSuppliers()}"
|
||||
scrollable="true"
|
||||
paginatorAlwaysVisible="true"
|
||||
paginator="true"
|
||||
paginatorPosition="top"
|
||||
rows="10"
|
||||
lazy="true"
|
||||
>
|
||||
<f:facet name="header"> <h:outputText value="Suppliers Table" style="font-size: 1.2em"/></f:facet>
|
||||
<f:event type="preRenderView"
|
||||
listener="#{supplierBean.displayExceptionMessageAtPreRenderListener}"
|
||||
/>
|
||||
|
||||
<p:column>
|
||||
<f:facet name="header"> <h:outputText value="update" /></f:facet>
|
||||
<h:selectBooleanCheckbox onclick="submit()"
|
||||
value="#{supplier.modify}">
|
||||
</h:selectBooleanCheckbox >
|
||||
</p:column>
|
||||
<p:column id="idColumnSnumber">
|
||||
<f:facet name="header"> <h:outputText value="snumber" /></f:facet>
|
||||
|
||||
<h:inputText disabled ="#{!supplier.insertFromDatatable and !supplier.modify}" value="#{supplier.snumber}">
|
||||
|
||||
</h:inputText>
|
||||
</p:column>
|
||||
|
||||
<p:column>
|
||||
<f:facet name="header"> <h:outputText value="sname" /></f:facet>
|
||||
|
||||
<h:inputText disabled ="#{!supplier.modify}" value="#{supplier.sname}"/>
|
||||
</p:column>
|
||||
<p:column>
|
||||
<f:facet name="header"> <h:outputText value="birthday" /></f:facet>
|
||||
|
||||
<p:calendar
|
||||
disabled ="#{!supplier.modify}"
|
||||
value="#{supplier.birthday_date}"
|
||||
pattern="yyyy/MM/dd"/>
|
||||
</p:column>
|
||||
<p:column>
|
||||
<f:facet name="header"> <h:outputText value="status" /></f:facet>
|
||||
|
||||
<h:inputText disabled ="#{!supplier.modify}" value="#{supplier.status}"/>
|
||||
</p:column>
|
||||
<p:column>
|
||||
<f:facet name="header"> <h:outputText value="city" /></f:facet>
|
||||
|
||||
<h:inputText disabled ="#{!supplier.modify}" value="#{supplier.city}"/>
|
||||
</p:column>
|
||||
|
||||
|
||||
|
||||
</p:dataTable>
|
||||
<p:draggable for="id_supplier_table"/>
|
||||
|
||||
<p:commandButton value="Save" action="#{supplierBean.saveFromUpdate()}" />
|
||||
<p:commandButton id="idInsertRow" value="Insert Row" action="#{supplierBean.insertSupplier()}" />
|
||||
<p:commandButton title="Delete Supplier"
|
||||
value="X" styleClass="ui-button-raised ui-button-danger"
|
||||
icon="pi pi-trash"
|
||||
onclick="PF('asdv-dlg-delete').show();"
|
||||
>
|
||||
|
||||
</p:commandButton >
|
||||
<p:dialog id="dlg" header="Delete a Supplier"
|
||||
widgetVar="asdv-dlg-delete" modal="true">
|
||||
<h:outputText value="Are you sure you want to delete this supplier?"/>
|
||||
<br/>
|
||||
<br/>
|
||||
<p:commandButton value="OK" icon="pi pi-check"
|
||||
update="@form:globalgrowl"
|
||||
onclick="PF('dlg').hide();"
|
||||
action="#{supplierBean.deleteSupplier()}">
|
||||
</p:commandButton >
|
||||
<span> </span>
|
||||
<p:commandButton value="Cancel"
|
||||
styleClass="ui-button-raised ui-button-warning"
|
||||
update="@none"
|
||||
partialSubmit = "true"
|
||||
onclick="PF('dlg').hide();"/>
|
||||
</p:dialog>
|
||||
|
||||
</h:form>
|
||||
</h:body>
|
||||
</html>
|
@@ -0,0 +1,7 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<persistence version="3.0" xmlns="https://jakarta.ee/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="https://jakarta.ee/xml/ns/persistence https://jakarta.ee/xml/ns/persistence/persistence_3_0.xsd">
|
||||
<!-- Define Persistence Unit -->
|
||||
<persistence-unit name="my_persistence_unit">
|
||||
|
||||
</persistence-unit>
|
||||
</persistence>
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,5 @@
|
||||
#Generated by Maven
|
||||
#Sun Nov 19 23:24:30 CST 2023
|
||||
groupId=com.mycompany
|
||||
artifactId=Suppliers_Parts_Calendar_Primefaces
|
||||
version=1.0-SNAPSHOT
|
@@ -0,0 +1,9 @@
|
||||
edu/slcc/asdv/bl/DBase.class
|
||||
edu/slcc/asdv/bl/UtilitiesDatabase.class
|
||||
com/mycompany/supplierspartsdatabase/JakartaRestConfiguration.class
|
||||
edu/slcc/asdv/bl/supplier/DatabaseManipulationSupplier.class
|
||||
edu/slcc/asdv/bl/supplier/Supplier.class
|
||||
edu/slcc/asdv/bl/part/DatabaseManipulationPart.class
|
||||
edu/slcc/asdv/beans/SupplierBean.class
|
||||
edu/slcc/asdv/bl/part/Part.class
|
||||
com/mycompany/supplierspartsdatabase/resources/JakartaEE9Resource.class
|
@@ -0,0 +1,9 @@
|
||||
/home/caleb/ASDV-WebDev/Semester 2/Assignments/Tennis_Database_Primefaces_CalebFontenot/src/main/java/edu/slcc/asdv/bl/part/Part.java
|
||||
/home/caleb/ASDV-WebDev/Semester 2/Assignments/Tennis_Database_Primefaces_CalebFontenot/src/main/java/edu/slcc/asdv/bl/part/DatabaseManipulationPart.java
|
||||
/home/caleb/ASDV-WebDev/Semester 2/Assignments/Tennis_Database_Primefaces_CalebFontenot/src/main/java/com/mycompany/supplierspartsdatabase/JakartaRestConfiguration.java
|
||||
/home/caleb/ASDV-WebDev/Semester 2/Assignments/Tennis_Database_Primefaces_CalebFontenot/src/main/java/edu/slcc/asdv/bl/DBase.java
|
||||
/home/caleb/ASDV-WebDev/Semester 2/Assignments/Tennis_Database_Primefaces_CalebFontenot/src/main/java/edu/slcc/asdv/bl/supplier/DatabaseManipulationSupplier.java
|
||||
/home/caleb/ASDV-WebDev/Semester 2/Assignments/Tennis_Database_Primefaces_CalebFontenot/src/main/java/com/mycompany/supplierspartsdatabase/resources/JakartaEE9Resource.java
|
||||
/home/caleb/ASDV-WebDev/Semester 2/Assignments/Tennis_Database_Primefaces_CalebFontenot/src/main/java/edu/slcc/asdv/beans/SupplierBean.java
|
||||
/home/caleb/ASDV-WebDev/Semester 2/Assignments/Tennis_Database_Primefaces_CalebFontenot/src/main/java/edu/slcc/asdv/bl/UtilitiesDatabase.java
|
||||
/home/caleb/ASDV-WebDev/Semester 2/Assignments/Tennis_Database_Primefaces_CalebFontenot/src/main/java/edu/slcc/asdv/bl/supplier/Supplier.java
|
Reference in New Issue
Block a user