1 6 7 package converter; 8 9 import java.io.*; 10 import java.net.*; 11 12 import javax.servlet.*; 13 import javax.servlet.http.*; 14 15 20 public class ConverterServlet extends HttpServlet { 21 22 26 protected void processRequest(HttpServletRequest request, HttpServletResponse response) 27 throws ServletException, IOException { 28 response.setContentType("text/html;charset=UTF-8"); 29 PrintWriter out = response.getWriter(); 30 out.println("<html>"); 31 out.println("<head>"); 32 out.println("<title>Servlet ConverterServlet</title>"); 33 out.println("</head>"); 34 out.println("<body>"); 35 out.println("<h1><b><center>Converter</center></b></h1>"); 36 out.println("<hr>"); 37 out.println("<p>Enter an amount to convert:</p>"); 38 out.println("<form method=\"get\">"); 39 out.println("<input type=\"text\" name=\"amount\" size=\"25\">"); 40 out.println("<br>"); 41 out.println("<p>"); 42 out.println("<input type=\"submit\" value=\"Submit\">"); 43 out.println("<input type=\"reset\" value=\"Reset\">"); 44 out.println("</form>"); 45 String amount = request.getParameter("amount"); 46 if ( amount != null && amount.length() > 0 ) { 47 try { 48 converter.ConverterRemote converter; 49 converter = lookupConverterBean(); 50 51 java.math.BigDecimal d = new java.math.BigDecimal (amount); 52 out.println("<p>"); 53 out.println("<p>"); 54 out.println(amount + " Dollars are " + converter.dollarToYen(d) + " Yen."); 55 out.println("<p>"); 56 out.println(amount + " Yen are " + converter.yenToEuro(d) + " Euro."); 57 58 converter.remove(); 59 } catch (Exception e){ 60 out.println("Cannot lookup or execute EJB!"); 61 } 62 63 } 64 out.println("</body>"); 65 out.println("</html>"); 66 out.close(); 67 } 68 69 74 protected void doGet(HttpServletRequest request, HttpServletResponse response) 75 throws ServletException, IOException { 76 processRequest(request, response); 77 } 78 79 83 protected void doPost(HttpServletRequest request, HttpServletResponse response) 84 throws ServletException, IOException { 85 processRequest(request, response); 86 } 87 88 90 public String getServletInfo() { 91 return "Short description"; 92 } 93 95 private converter.ConverterRemote lookupConverterBean() { 96 try { 97 javax.naming.Context c = new javax.naming.InitialContext (); 98 Object remote = c.lookup("java:comp/env/ejb/ConverterBean"); 99 converter.ConverterRemoteHome rv = (converter.ConverterRemoteHome) javax.rmi.PortableRemoteObject.narrow(remote, converter.ConverterRemoteHome.class); 100 return rv.create(); 101 } catch(javax.naming.NamingException ne) { 102 java.util.logging.Logger.getLogger(getClass().getName()).log(java.util.logging.Level.SEVERE,"exception caught" ,ne); 103 throw new RuntimeException (ne); 104 } catch(javax.ejb.CreateException ce) { 105 java.util.logging.Logger.getLogger(getClass().getName()).log(java.util.logging.Level.SEVERE,"exception caught" ,ce); 106 throw new RuntimeException (ce); 107 } catch(java.rmi.RemoteException re) { 108 java.util.logging.Logger.getLogger(getClass().getName()).log(java.util.logging.Level.SEVERE,"exception caught" ,re); 109 throw new RuntimeException (re); 110 } 111 } 112 } 113 | Popular Tags |