package servlet; import java.io.IOException; import java.io.PrintWriter; import java.util.Enumeration; import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.rmi.RemoteException; import javax.xml.rpc.ServiceException; import javax.xml.rpc.Stub; import ubike.client.*; import noNamespace.*; /** * Servlet implementation class for Servlet: Search * */ public class Search extends javax.servlet.http.HttpServlet implements javax.servlet.Servlet { static final long serialVersionUID = 1L; /* (non-Java-doc) * @see javax.servlet.http.HttpServlet#HttpServlet() */ public Search() { super(); } /* (non-Java-doc) * @see javax.servlet.http.HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response) */ protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doPost(request,response); } /* (non-Java-doc) * @see javax.servlet.http.HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response) */ protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html"); String SKU = (String) request.getParameter("SKU"); System.out.println("****************************************SKU=" + SKU); try { TuxedoWebService service = new TuxedoWebService_Impl("http://localhost:7001/uBikeSearch?WSDL"); Tuxedo_PortType fmlPort = service.getTuxedoWebService_Port(); Stub stub = (Stub)fmlPort; stub._setProperty(Stub.ENDPOINT_ADDRESS_PROPERTY, "http://localhost:7001/uBikeSearch"); Fml32_SEARCHINVENTORY_In inbuf = new Fml32_SEARCHINVENTORY_In(); if (SKU != null && !SKU.equalsIgnoreCase("")) { System.out.println("SKU is not null"); String[] SKUs = new String[1]; SKUs[0] = SKU; inbuf.setSKU(SKUs); } BikeListType bikeList = fmlPort.sEARCHINVENTORY(inbuf); System.out.println("Tuxedo Service Response:"); System.out.println(" Status: " + bikeList.getSTATUS()); int i=0; //Iterate through all returned bikes for (BikeType bike : bikeList.getBike()) { i++; System.out.println("--------- Bike " +i+ " ----------------"); System.out.println("SERIALNO=" + bike.getSERIALNO()); System.out.println("SKU=" + bike.getSKU()); System.out.println("NAME=" + bike.getNAME()); System.out.println("TYPE=" + bike.getTYPE()); System.out.println("PRICE=" + bike.getPRICE()); System.out.println("SIZE=" + bike.getSIZE()); System.out.println("INSTOCK=" + bike.getINSTOCK()); System.out.println("ORDERDATE=" + bike.getORDERDATE()); System.out.println("COLOR=" + bike.getCOLOR()); } request.setAttribute("bikes", bikeList); getServletContext().getRequestDispatcher("/index.jsp").forward(request, response); } catch(Exception e) { System.out.println("uBike: Caught exception: " + e.getMessage()); } } private void printAllParameters(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html"); PrintWriter out = response.getWriter(); Enumeration paramNames = request.getParameterNames(); while(paramNames.hasMoreElements()) { String paramName = (String)paramNames.nextElement(); out.println("
| Parameter Name | Parameter Value(s)"); out.println(" |
|---|