| /* |
| * Copyright (c) 2009, 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 |
| */ |
| |
| package client; |
| |
| import java.io.IOException; |
| import java.io.PrintWriter; |
| import java.util.ArrayList; |
| import javax.naming.Context; |
| import javax.naming.InitialContext; |
| import javax.rmi.PortableRemoteObject; |
| import jakarta.servlet.ServletException; |
| import jakarta.servlet.http.HttpServlet; |
| import jakarta.servlet.http.HttpServletRequest; |
| import jakarta.servlet.http.HttpServletResponse; |
| import roster.Roster; |
| import roster.RosterHome; |
| import util.LeagueDetails; |
| import util.PlayerDetails; |
| import util.TeamDetails; |
| import java.util.Iterator; |
| import java.util.Set; |
| |
| |
| |
| /** |
| * @author unbekannt |
| * @version 1.0 |
| */ |
| public class RosterServlet extends HttpServlet{ |
| |
| private PrintWriter out = null; |
| |
| /** Handles the HTTP <code>GET</code> method. |
| * @param request servlet request |
| * @param response servlet response |
| */ |
| public void doGet(HttpServletRequest request, HttpServletResponse response) |
| throws ServletException, java.io.IOException { |
| processRequest(request, response); |
| } |
| |
| /** Handles the HTTP <code>POST</code> method. |
| * @param request servlet request |
| * @param response servlet response |
| */ |
| public void doPost(HttpServletRequest request, HttpServletResponse response) |
| throws ServletException, java.io.IOException { |
| processRequest(request, response); |
| } |
| |
| /** |
| * |
| * @param req |
| * @param res |
| * @throws ServletException |
| * @throws IOException |
| */ |
| private void processRequest(HttpServletRequest req, HttpServletResponse res) |
| throws ServletException, IOException { |
| |
| res.setContentType("text/html"); |
| out = res.getWriter(); |
| |
| out.println("<html>"); |
| out.println("<head>"); |
| out.println("<title>RosterApp Servlet-Client</title>"); |
| out.println("</head>"); |
| out.println("<body>"); |
| |
| try { |
| Context initial = new InitialContext(); |
| Object objref = initial.lookup("java:comp/env/ejb/SimpleRoster"); |
| |
| RosterHome home = |
| (RosterHome)PortableRemoteObject.narrow(objref, |
| RosterHome.class); |
| |
| //System.err.println("XXXX-1"); |
| Roster myRoster = home.create(); |
| //System.err.println("XXXX-2"); |
| |
| // deleting all exisiting DB-entries |
| myRoster.cleanUp(); |
| //System.err.println("XXXX-3"); |
| |
| insertInfo(myRoster); |
| //System.err.println("XXXX-4"); |
| getSomeInfo(myRoster); |
| //System.err.println("XXXX-5"); |
| |
| getMoreInfo(myRoster); |
| //System.err.println("XXXX-6"); |
| out.println("<BR>ROSTER-FINISHED-OK"); |
| |
| } catch (Exception ex) { |
| out.println("Caught an exception:"); |
| ex.printStackTrace(out); |
| ex.printStackTrace(); |
| } |
| |
| out.println("</body>"); |
| out.println("</html>"); |
| } |
| |
| |
| /** |
| * |
| * @param myRoster |
| */ |
| private void getSomeInfo(Roster myRoster) { |
| |
| try { |
| |
| ArrayList playerList; |
| ArrayList teamList; |
| ArrayList leagueList; |
| |
| playerList = myRoster.getPlayersOfTeam("T2"); |
| printDetailsList(playerList, out); |
| |
| teamList = myRoster.getTeamsOfLeague("L1"); |
| printDetailsList(teamList, out); |
| |
| playerList = myRoster.getPlayersByPosition("defender"); |
| printDetailsList(playerList, out); |
| |
| |
| leagueList = myRoster.getLeaguesOfPlayer("P28"); |
| printDetailsList(leagueList, out); |
| |
| } catch (Exception ex) { |
| System.err.println("Caught an exception:"); |
| ex.printStackTrace(); |
| } |
| |
| } // getSomeInfo |
| |
| |
| |
| |
| /** |
| * |
| * @param myRoster |
| */ |
| private void getMoreInfo(Roster myRoster) { |
| |
| try { |
| |
| LeagueDetails leagueDetails; |
| TeamDetails teamDetails; |
| PlayerDetails playerDetails; |
| ArrayList playerList; |
| ArrayList teamList; |
| ArrayList leagueList; |
| ArrayList sportList; |
| |
| leagueDetails = myRoster.getLeague("L1"); |
| out.println("<BR>" + leagueDetails.toString()); |
| out.println(); |
| out.println("<BR> ----------------------------------------------------------"); |
| |
| teamDetails = myRoster.getTeam("T3"); |
| out.println("<BR>" + teamDetails.toString()); |
| out.println(); |
| out.println("<BR> ----------------------------------------------------------"); |
| |
| playerDetails = myRoster.getPlayer("P20"); |
| out.println("<BR>" + playerDetails.toString()); |
| out.println(); |
| out.println("<BR> ----------------------------------------------------------"); |
| |
| playerList = myRoster.getPlayersOfTeam("T2"); |
| printDetailsList(playerList, out); |
| |
| teamList = myRoster.getTeamsOfLeague("L1"); |
| printDetailsList(teamList, out); |
| |
| playerList = myRoster.getPlayersByPosition("defender"); |
| playerList = myRoster.getAllPlayers(); |
| playerList = myRoster.getPlayersNotOnTeam(); |
| playerList = myRoster.getPlayersByPositionAndName("power forward", |
| "Jack Patterson"); |
| playerList = myRoster.getPlayersByCity("Truckee"); |
| playerList = myRoster.getPlayersBySport("Soccer"); |
| playerList = myRoster.getPlayersByLeagueId("L1"); |
| |
| playerList = myRoster.getPlayersByHigherSalary("Ian Carlyle"); |
| out.println("<BR>/////////////////////////////////////////////"); |
| printDetailsList(playerList, out); |
| out.println("<BR>/////////////////////////////////////////////"); |
| playerList = myRoster.getPlayersBySalaryRange(500.00, 800.00); |
| playerList = myRoster.getPlayersOfTeamCopy("T5"); |
| |
| leagueList = myRoster.getLeaguesOfPlayer("P28"); |
| printDetailsList(leagueList, out); |
| |
| sportList = myRoster.getSportsOfPlayer("P28"); |
| printDetailsList(sportList, out); |
| |
| /**************************************************************** |
| * |
| * new additions!!!! |
| * |
| ****************************************************************/ |
| leagueDetails = myRoster.getLeagueByName("Valley"); |
| out.println("<BR>" + leagueDetails.toString()); |
| out.println("<BR> ----------------------------------------------------------"); |
| |
| leagueDetails = myRoster.getLeagueByName("Mountain"); |
| out.println("<BR>" + leagueDetails.toString()); |
| out.println("<BR> ----------------------------------------------------------"); |
| |
| teamList = myRoster.getTeamsByPlayerAndLeague("P1", "L1"); |
| printDetailsList(teamList, out); |
| |
| Set cities = myRoster.getCitiesOfLeague("L2"); |
| Iterator it = cities.iterator(); |
| while (it.hasNext()) { |
| out.println("<BR>" + it.next()); |
| } |
| out.println("<BR> ----------------------------------------------------------"); |
| |
| |
| teamDetails = myRoster.getTeamOfLeagueByCity("L2", "Truckee"); |
| out.println("<BR>" + teamDetails.toString()); |
| out.println("<BR> ----------------------------------------------------------"); |
| |
| out.println("<BR>" + myRoster.getTeamsNameOfLeagueByCity("L2", "Truckee")); |
| out.println("<BR> ----------------------------------------------------------"); |
| |
| out.println("<BR>" + myRoster.getSalaryOfPlayerFromTeam("T3", "Ben Shore")); |
| out.println("<BR> ----------------------------------------------------------"); |
| |
| playerList = myRoster.getPlayersOfLeague("L2"); |
| printDetailsList(playerList, out); |
| |
| playerList = myRoster.getPlayersWithPositionsGoalkeeperOrDefender(); |
| printDetailsList(playerList, out); |
| |
| playerList = myRoster.getPlayersWithNameEndingWithON(); |
| printDetailsList(playerList, out); |
| |
| playerList = myRoster.getPlayersWithNullName(); |
| printDetailsList(playerList, out); |
| |
| playerList = myRoster.getPlayersWithTeam("T5"); |
| printDetailsList(playerList, out); |
| |
| out.println("<BR>" + myRoster.getTeamNameVariations("T5")); |
| out.println("<BR> ----------------------------------------------------------"); |
| |
| |
| playerList = myRoster.getPlayersWithSalaryUsingABS(100.1212121); |
| printDetailsList(playerList, out); |
| |
| playerList = myRoster.getPlayersWithSalaryUsingSQRT(10000); |
| printDetailsList(playerList, out); |
| |
| |
| out.println("<BR> ----------------------------------------------------------"); |
| |
| // internal NULL - parameter for finder |
| playerList = myRoster.getPlayersByLeagueIdWithNULL("L1"); |
| printDetailsList(playerList, out); |
| |
| |
| } catch (Exception ex) { |
| System.err.println("Caught an exception:"); |
| ex.printStackTrace(); |
| } |
| |
| |
| |
| } // getMoreInfo |
| |
| |
| /** |
| * |
| * @param list |
| * @param out |
| */ |
| private void printDetailsList(ArrayList list, PrintWriter out) { |
| |
| Iterator i = list.iterator(); |
| while (i.hasNext()) { |
| Object details = (Object)i.next(); |
| out.println("<BR>" + details.toString()); |
| } |
| out.println(); |
| out.println("<BR> ----------------------------------------------------------"); |
| } // printDetailsList |
| |
| |
| /** |
| * |
| * @param myRoster |
| */ |
| private void insertInfo(Roster myRoster) { |
| |
| try { |
| // Leagues |
| |
| myRoster.createLeague(new LeagueDetails( |
| "L1", "Mountain", "Soccer")); |
| |
| myRoster.createLeague(new LeagueDetails( |
| "L2", "Valley", "Basketball")); |
| |
| // Teams |
| |
| myRoster.createTeamInLeague(new TeamDetails( |
| "T1", "Honey Bees", "Visalia"), "L1"); |
| |
| myRoster.createTeamInLeague(new TeamDetails( |
| "T2", "Gophers", "Manteca"), "L1"); |
| |
| myRoster.createTeamInLeague(new TeamDetails( |
| "T3", "Deer", "Bodie"), "L2"); |
| |
| myRoster.createTeamInLeague(new TeamDetails( |
| "T4", "Trout", "Truckee"), "L2"); |
| |
| myRoster.createTeamInLeague(new TeamDetails( |
| "T5", "Crows", "Orland"), "L1"); |
| |
| // Players, Team T1 |
| |
| myRoster.createPlayer(new PlayerDetails( |
| "P1", "Phil Jones", "goalkeeper", 100.00)); |
| myRoster.addPlayer("P1", "T1"); |
| |
| myRoster.createPlayer(new PlayerDetails( |
| "P2", "Alice Smith", "defender", 505.00)); |
| myRoster.addPlayer("P2", "T1"); |
| |
| myRoster.createPlayer(new PlayerDetails( |
| "P3", "Bob Roberts", "midfielder", 65.00)); |
| myRoster.addPlayer("P3", "T1"); |
| |
| myRoster.createPlayer(new PlayerDetails( |
| "P4", "Grace Phillips", "forward", 100.00)); |
| myRoster.addPlayer("P4", "T1"); |
| |
| myRoster.createPlayer(new PlayerDetails( |
| "P5", "Barney Bold", "defender", 100.00)); |
| myRoster.addPlayer("P5", "T1"); |
| |
| // Players, Team T2 |
| |
| myRoster.createPlayer(new PlayerDetails( |
| "P6", "Ian Carlyle", "goalkeeper", 555.00)); |
| myRoster.addPlayer("P6", "T2"); |
| |
| myRoster.createPlayer(new PlayerDetails( |
| "P7", "Rebecca Struthers", "midfielder", 777.00)); |
| myRoster.addPlayer("P7", "T2"); |
| |
| myRoster.createPlayer(new PlayerDetails( |
| "P8", "Anne Anderson", "forward", 65.00)); |
| myRoster.addPlayer("P8", "T2"); |
| |
| myRoster.createPlayer(new PlayerDetails( |
| "P9", "Jan Wesley", "defender", 100.00)); |
| myRoster.addPlayer("P9", "T2"); |
| |
| myRoster.createPlayer(new PlayerDetails( |
| "P10", "Terry Smithson", "midfielder", 100.00)); |
| myRoster.addPlayer("P10", "T2"); |
| |
| // Players, Team T3 |
| |
| myRoster.createPlayer(new PlayerDetails( |
| "P11", "Ben Shore", "point guard", 188.00)); |
| myRoster.addPlayer("P11", "T3"); |
| |
| myRoster.createPlayer(new PlayerDetails( |
| "P12", "Chris Farley", "shooting guard", 577.00)); |
| myRoster.addPlayer("P12", "T3"); |
| |
| myRoster.createPlayer(new PlayerDetails( |
| "P13", "Audrey Brown", "small forward", 995.00)); |
| myRoster.addPlayer("P13", "T3"); |
| |
| myRoster.createPlayer(new PlayerDetails( |
| "P14", "Jack Patterson", "power forward", 100.00)); |
| myRoster.addPlayer("P14", "T3"); |
| |
| myRoster.createPlayer(new PlayerDetails( |
| "P15", "Candace Lewis", "point guard", 100.00)); |
| myRoster.addPlayer("P15", "T3"); |
| |
| // Players, Team T4 |
| |
| myRoster.createPlayer(new PlayerDetails( |
| "P16", "Linda Berringer", "point guard", 844.00)); |
| myRoster.addPlayer("P16", "T4"); |
| |
| myRoster.createPlayer(new PlayerDetails( |
| "P17", "Bertrand Morris", "shooting guard", 452.00)); |
| myRoster.addPlayer("P17", "T4"); |
| |
| myRoster.createPlayer(new PlayerDetails( |
| "P18", "Nancy White", "small forward", 833.00)); |
| myRoster.addPlayer("P18", "T4"); |
| |
| myRoster.createPlayer(new PlayerDetails( |
| "P19", "Billy Black", "power forward", 444.00)); |
| myRoster.addPlayer("P19", "T4"); |
| |
| myRoster.createPlayer(new PlayerDetails( |
| "P20", "Jodie James", "point guard", 100.00)); |
| myRoster.addPlayer("P20", "T4"); |
| |
| // Players, Team T5 |
| |
| myRoster.createPlayer(new PlayerDetails( |
| "P21", "Henry Shute", "goalkeeper", 205.00)); |
| myRoster.addPlayer("P21", "T5"); |
| |
| myRoster.createPlayer(new PlayerDetails( |
| "P22", "Janice Walker", "defender", 857.00)); |
| myRoster.addPlayer("P22", "T5"); |
| |
| myRoster.createPlayer(new PlayerDetails( |
| "P23", "Wally Hendricks", "midfielder", 748.00)); |
| myRoster.addPlayer("P23", "T5"); |
| |
| myRoster.createPlayer(new PlayerDetails( |
| "P24", "Gloria Garber", "forward", 777.00)); |
| myRoster.addPlayer("P24", "T5"); |
| |
| myRoster.createPlayer(new PlayerDetails( |
| "P25", "Frank Fletcher", "defender", 399.00)); |
| myRoster.addPlayer("P25", "T5"); |
| |
| // Players, no team |
| |
| myRoster.createPlayer(new PlayerDetails( |
| "P26", "Hobie Jackson", "pitcher", 582.00)); |
| |
| myRoster.createPlayer(new PlayerDetails( |
| "P27", "Melinda Kendall", "catcher", 677.00)); |
| |
| myRoster.createPlayer(new PlayerDetails( |
| "P99", null, "_", 666.66)); |
| |
| // Players, multiple teams |
| |
| myRoster.createPlayer(new PlayerDetails( |
| "P28", "Constance Adams", "substitue", 966.00)); |
| myRoster.addPlayer("P28", "T1"); |
| myRoster.addPlayer("P28", "T3"); |
| |
| |
| |
| |
| } catch (Exception ex) { |
| System.err.println("Caught an exception:"); |
| ex.printStackTrace(); |
| } |
| |
| } // insertInfo |
| |
| |
| } |
| |
| |
| |