2
* ConverterServlet.java
4
* Created on 04 May 2005, 18:38
12
import javax.servlet.*;
13
import javax.servlet.http.*;
17
* @author Administrator
20
public class ConverterServlet extends HttpServlet {
22
/** Processes requests for both HTTP <code>GET</code> and <code>POST</code> methods.
23
* @param request servlet request
24
* @param response servlet response
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>");
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\">");
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 ) {
48
converter.ConverterRemote converter;
49
converter = lookupConverterBean();
51
java.math.BigDecimal d = new java.math.BigDecimal(amount);
54
out.println(amount + " Dollars are " + converter.dollarToYen(d) + " Yen.");
56
out.println(amount + " Yen are " + converter.yenToEuro(d) + " Euro.");
59
} catch (Exception e){
60
out.println("Cannot lookup or execute EJB!");
64
out.println("</body>");
65
out.println("</html>");
69
// <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the left to edit the code.">
70
/** Handles the HTTP <code>GET</code> method.
71
* @param request servlet request
72
* @param response servlet response
74
protected void doGet(HttpServletRequest request, HttpServletResponse response)
75
throws ServletException, IOException {
76
processRequest(request, response);
79
/** Handles the HTTP <code>POST</code> method.
80
* @param request servlet request
81
* @param response servlet response
83
protected void doPost(HttpServletRequest request, HttpServletResponse response)
84
throws ServletException, IOException {
85
processRequest(request, response);
88
/** Returns a short description of the servlet.
90
public String getServletInfo() {
91
return "Short description";
95
private converter.ConverterRemote lookupConverterBean() {
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);
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);