From 79fbf3f9cc2bf2d8b9aa3c96c3d9fe7bee7577d6 Mon Sep 17 00:00:00 2001 From: Santo Cariotti Date: Wed, 19 Jan 2022 21:15:10 +0100 Subject: tdwl: example of remote wsdl --- .../src/java/it/dmi/exams/tsdwl/StadiumInfo.java | 87 +++++++++++++++++ .../src/java/it/dmi/exams/tsdwl/StadiumList.java | 103 +++++++++++++++++++++ 2 files changed, 190 insertions(+) create mode 100644 Year_3/TSDWL/WSDL/FootballClient/src/java/it/dmi/exams/tsdwl/StadiumInfo.java create mode 100644 Year_3/TSDWL/WSDL/FootballClient/src/java/it/dmi/exams/tsdwl/StadiumList.java (limited to 'Year_3/TSDWL/WSDL/FootballClient/src/java') diff --git a/Year_3/TSDWL/WSDL/FootballClient/src/java/it/dmi/exams/tsdwl/StadiumInfo.java b/Year_3/TSDWL/WSDL/FootballClient/src/java/it/dmi/exams/tsdwl/StadiumInfo.java new file mode 100644 index 0000000..d3d3f4f --- /dev/null +++ b/Year_3/TSDWL/WSDL/FootballClient/src/java/it/dmi/exams/tsdwl/StadiumInfo.java @@ -0,0 +1,87 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ +package it.dmi.exams.tsdwl; + +import https.footballpool_dataaccess.TStadiumInfo; +import java.io.IOException; +import java.io.PrintWriter; +import javax.servlet.RequestDispatcher; +import javax.servlet.ServletException; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +/** + * + * @author dcariotti + */ +@WebServlet(name = "StadiumInfo", urlPatterns = {"/StadiumInfo"}) +public class StadiumInfo extends HttpServlet { + /** + * Handles the HTTP GET method. + * + * @param request servlet request + * @param response servlet response + * @throws ServletException if a servlet-specific error occurs + * @throws IOException if an I/O error occurs + */ + @Override + protected void doGet(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException { + RequestDispatcher view = request.getRequestDispatcher("search.html"); + + view.forward(request, response); + } + + /** + * Handles the HTTP POST method. + * + * @param request servlet request + * @param response servlet response + * @throws ServletException if a servlet-specific error occurs + * @throws IOException if an I/O error occurs + */ + @Override + protected void doPost(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException { + TStadiumInfo stadium = this.stadiumInfo(request.getParameter("name")); + + response.setContentType("text/html;charset=UTF-8"); + try (PrintWriter out = response.getWriter()) { + out.println(""); + if (stadium.getSName().length() == 0) { + out.println("

Stadium not found!

"); + } else { + out.println("

Stadium info:

"); + out.println(stadium.getSName()); + out.println(stadium.getISeatsCapacity()); + out.println(stadium.getSCityName()); + out.println(stadium.getSGoogleMapsURL()); + out.println(stadium.getSWikipediaURL()); + } + out.println(""); + } + + } + + /** + * Returns a short description of the servlet. + * + * @return a String containing servlet description + */ + @Override + public String getServletInfo() { + return "Short description"; + }// + + private static TStadiumInfo stadiumInfo(java.lang.String sStadiumName) { + https.footballpool_dataaccess.Info service = new https.footballpool_dataaccess.Info(); + https.footballpool_dataaccess.InfoSoapType port = service.getInfoSoap(); + return port.stadiumInfo(sStadiumName); + } + +} diff --git a/Year_3/TSDWL/WSDL/FootballClient/src/java/it/dmi/exams/tsdwl/StadiumList.java b/Year_3/TSDWL/WSDL/FootballClient/src/java/it/dmi/exams/tsdwl/StadiumList.java new file mode 100644 index 0000000..9f3d037 --- /dev/null +++ b/Year_3/TSDWL/WSDL/FootballClient/src/java/it/dmi/exams/tsdwl/StadiumList.java @@ -0,0 +1,103 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ +package it.dmi.exams.tsdwl; + +import https.footballpool_dataaccess.ArrayOftStadiumInfo; +import https.footballpool_dataaccess.TStadiumInfo; +import java.io.IOException; +import java.io.PrintWriter; +import javax.servlet.RequestDispatcher; +import javax.servlet.ServletException; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.util.ArrayList; +import java.util.List; +/** + * + * @author dcariotti + */ +@WebServlet(name = "StadiumList", urlPatterns = {"/StadiumList"}) +public class StadiumList extends HttpServlet { + + /** + * Processes requests for both HTTP GET and POST + * methods. + * + * @param request servlet request + * @param response servlet response + * @throws ServletException if a servlet-specific error occurs + * @throws IOException if an I/O error occurs + */ + protected void processRequest(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException { + response.setContentType("text/html;charset=UTF-8"); + try (PrintWriter out = response.getWriter()) { + /* TODO output your page here. You may use following sample code. */ + out.println(""); + out.println(""); + out.println(""); + out.println("Servlet StadiumList"); + out.println(""); + out.println(""); + out.println("

Servlet StadiumList at " + request.getContextPath() + "

"); + out.println(""); + out.println(""); + } + } + + // + /** + * Handles the HTTP GET method. + * + * @param request servlet request + * @param response servlet response + * @throws ServletException if a servlet-specific error occurs + * @throws IOException if an I/O error occurs + */ + @Override + protected void doGet(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException { + List stadiumList = this.allStadiumInfo().getTStadiumInfo(); + + request.setAttribute("stadiumList", stadiumList); + RequestDispatcher view = request.getRequestDispatcher("list.jsp"); + + view.forward(request, response); + } + + /** + * Handles the HTTP POST method. + * + * @param request servlet request + * @param response servlet response + * @throws ServletException if a servlet-specific error occurs + * @throws IOException if an I/O error occurs + */ + @Override + protected void doPost(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException { + processRequest(request, response); + } + + /** + * Returns a short description of the servlet. + * + * @return a String containing servlet description + */ + @Override + public String getServletInfo() { + return "Short description"; + }// + + private static ArrayOftStadiumInfo allStadiumInfo() { + https.footballpool_dataaccess.Info service = new https.footballpool_dataaccess.Info(); + https.footballpool_dataaccess.InfoSoapType port = service.getInfoSoap(); + return port.allStadiumInfo(); + } + +} -- cgit v1.2.3-18-g5258