From 941483644d9bc45927d90e10d5f946cb2189fefb Mon Sep 17 00:00:00 2001 From: Santo Cariotti Date: Wed, 19 Jan 2022 22:12:29 +0100 Subject: tdwl: example of remote wsdl --- .../TSDWL/WSDL/CountryClient/src/conf/MANIFEST.MF | 2 + .../CountryInfoService.wso.wsdl | 979 +++++++++++++++++++++ .../java/it/dmi/tsdwl/country/CountryServlet.java | 75 ++ .../java/it/dmi/tsdwl/country/SearchCapital.java | 104 +++ 4 files changed, 1160 insertions(+) create mode 100644 Year_3/TSDWL/WSDL/CountryClient/src/conf/MANIFEST.MF create mode 100644 Year_3/TSDWL/WSDL/CountryClient/src/conf/xml-resources/web-service-references/CountryInfoService/wsdl/www.oorsprong.org/websamples.countryinfo/CountryInfoService.wso.wsdl create mode 100644 Year_3/TSDWL/WSDL/CountryClient/src/java/it/dmi/tsdwl/country/CountryServlet.java create mode 100644 Year_3/TSDWL/WSDL/CountryClient/src/java/it/dmi/tsdwl/country/SearchCapital.java (limited to 'Year_3/TSDWL/WSDL/CountryClient/src') diff --git a/Year_3/TSDWL/WSDL/CountryClient/src/conf/MANIFEST.MF b/Year_3/TSDWL/WSDL/CountryClient/src/conf/MANIFEST.MF new file mode 100644 index 0000000..59499bc --- /dev/null +++ b/Year_3/TSDWL/WSDL/CountryClient/src/conf/MANIFEST.MF @@ -0,0 +1,2 @@ +Manifest-Version: 1.0 + diff --git a/Year_3/TSDWL/WSDL/CountryClient/src/conf/xml-resources/web-service-references/CountryInfoService/wsdl/www.oorsprong.org/websamples.countryinfo/CountryInfoService.wso.wsdl b/Year_3/TSDWL/WSDL/CountryClient/src/conf/xml-resources/web-service-references/CountryInfoService/wsdl/www.oorsprong.org/websamples.countryinfo/CountryInfoService.wso.wsdl new file mode 100644 index 0000000..44c806b --- /dev/null +++ b/Year_3/TSDWL/WSDL/CountryClient/src/conf/xml-resources/web-service-references/CountryInfoService/wsdl/www.oorsprong.org/websamples.countryinfo/CountryInfoService.wso.wsdl @@ -0,0 +1,979 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns a list of continents ordered by name. + + + + + Returns a list of continents ordered by code. + + + + + Returns a list of currencies ordered by name. + + + + + Returns a list of currencies ordered by code. + + + + + Returns the name of the currency (if found) + + + + + Returns a list of all stored counties ordered by ISO code + + + + + Returns a list of all stored counties ordered by country name + + + + + Returns a list of all stored counties grouped per continent + + + + + Searches the database for a country by the passed ISO country code + + + + + This function tries to found a country based on the passed country name. + + + + + Returns the name of the captial city for the passed country code + + + + + Returns the currency ISO code and name for the passed country ISO code + + + + + Returns a link to a picture of the country flag + + + + + Returns the internation phone code for the passed ISO country code + + + + + Returns a struct with all the stored country information. Pass the ISO country code + + + + + Returns an array with all countries and all the language information stored + + + + + Returns a list of all countries that use the same currency code. Pass a ISO currency code + + + + + Returns an array of languages ordered by name + + + + + Returns an array of languages ordered by code + + + + + Find a language name based on the passed ISO language code + + + + + Find a language ISO code based on the passed language name + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + This DataFlex Web Service opens up country information. 2 letter ISO codes are used for Country code. There are functions to retrieve the used Currency, Language, Capital City, Continent and Telephone code. + + + + + + + + diff --git a/Year_3/TSDWL/WSDL/CountryClient/src/java/it/dmi/tsdwl/country/CountryServlet.java b/Year_3/TSDWL/WSDL/CountryClient/src/java/it/dmi/tsdwl/country/CountryServlet.java new file mode 100644 index 0000000..f9f4405 --- /dev/null +++ b/Year_3/TSDWL/WSDL/CountryClient/src/java/it/dmi/tsdwl/country/CountryServlet.java @@ -0,0 +1,75 @@ +/* + * 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.tsdwl.country; + +import java.io.IOException; +import java.util.List; +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 org.oorsprong.websamples.ArrayOftCountryCodeAndName; +import org.oorsprong.websamples.TCountryCodeAndName; +/** + * + * @author dcariotti + */ +@WebServlet(name = "CountryServlet", urlPatterns = {"/CountryServlet"}) +public class CountryServlet 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 { + List countries = this.listOfCountryNamesByName().getTCountryCodeAndName(); + + request.setAttribute("countries", countries); + + 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 { + + } + + /** + * Returns a short description of the servlet. + * + * @return a String containing servlet description + */ + @Override + public String getServletInfo() { + return "Short description"; + }// + + private static ArrayOftCountryCodeAndName listOfCountryNamesByName() { + org.oorsprong.websamples.CountryInfoService service = new org.oorsprong.websamples.CountryInfoService(); + org.oorsprong.websamples.CountryInfoServiceSoapType port = service.getCountryInfoServiceSoap(); + return port.listOfCountryNamesByName(); + } + + +} diff --git a/Year_3/TSDWL/WSDL/CountryClient/src/java/it/dmi/tsdwl/country/SearchCapital.java b/Year_3/TSDWL/WSDL/CountryClient/src/java/it/dmi/tsdwl/country/SearchCapital.java new file mode 100644 index 0000000..1a7eb27 --- /dev/null +++ b/Year_3/TSDWL/WSDL/CountryClient/src/java/it/dmi/tsdwl/country/SearchCapital.java @@ -0,0 +1,104 @@ +/* + * 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.tsdwl.country; + +import java.io.IOException; +import java.io.PrintWriter; +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 = "SearchCapital", urlPatterns = {"/SearchCapital"}) +public class SearchCapital 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 SearchCapital"); + out.println(""); + out.println(""); + out.println("

Servlet SearchCapital 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 { + String isoCode = request.getParameter("iso"); + String capital = this.capitalCity(isoCode); + + if (capital.length() == 0) { + try (PrintWriter out = response.getWriter()) { + out.println("Capital not found"); + } + } else { + try (PrintWriter out = response.getWriter()) { + out.println("Capital is " + capital); + } + } + } + + /** + * 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 String capitalCity(java.lang.String sCountryISOCode) { + org.oorsprong.websamples.CountryInfoService service = new org.oorsprong.websamples.CountryInfoService(); + org.oorsprong.websamples.CountryInfoServiceSoapType port = service.getCountryInfoServiceSoap(); + return port.capitalCity(sCountryISOCode); + } + +} -- cgit v1.2.3-18-g5258