User: salborini
  Date: 00/10/23 12:35:42

  Added:       tomcat/src/main/org/jboss/test/tomcat/servlet HelloEJB.java
  Log:
  initial revision
  
  Revision  Changes    Path
  1.1                  
contrib/tomcat/src/main/org/jboss/test/tomcat/servlet/HelloEJB.java
  
  Index: HelloEJB.java
  ===================================================================
  package org.jboss.test.tomcat.servlet;
  
  import java.io.*;
  import java.text.*;
  import java.util.*;
  import javax.servlet.*;
  import javax.servlet.http.*;
  
  import javax.naming.*;
  
  import org.jboss.test.tomcat.ejb.interfaces.StatelessSessionHome;
  import org.jboss.test.tomcat.ejb.interfaces.StatelessSession;
  
  public class HelloEJB extends HttpServlet {
        Context ctx;
        PrintWriter out;
        
        public void doGet(HttpServletRequest request,
                HttpServletResponse response)
        throws IOException, ServletException {
                
                response.setContentType("text/html");
                out = response.getWriter();
                
                out.println("<html>");
                out.println("<head>");
                
                out.println("<title>HelloEJB</title>");
                out.println("</head>");
                
                out.println("<body>");
                
                out.println("<h1>Servlet calling EJB</h1>");
                
                try {
                        
System.setProperty("java.naming.factory.initial","org.jnp.interfaces.NamingContextFactory");
                        System.setProperty("java.naming.provider.url","localhost");
                        
System.setProperty("java.naming.factory.url.pkgs","org.jboss.naming;");
                        
                        ctx = new InitialContext();
                        
                        boolean speedTest = "speed".equals(request.getQueryString());
                        testBean("NonOptimized", speedTest);
                        testBean("Optimized", speedTest);
                
                
                } catch (Exception e) {
                        out.println("Context not found: exception message:<pre>");
                        e.printStackTrace(out);
                        out.println("</pre>");
                } finally {
                        
                        out.println("</body>");
                        out.println("</html>");
                }
        }
        
        
        private void testBean(String jndiName, boolean speedTest) {
                try {
                        
                        StatelessSessionHome home = 
(StatelessSessionHome)ctx.lookup(jndiName);
                        StatelessSession bean = home.create();
                        
                        out.print("<p>Using jndi name " + jndiName + ": 
<tt>getMessage()</tt> returned: \"");
                                out.print(bean.getMessage());
                                out.println("\"</p>");
                                        
                                        int iter = 1000;
                                        
                                        if (speedTest) {
                                                
                                                out.println("<p>Speed Test now ("+ 
iter + " iterations)");
                                                
                                                long start = 
System.currentTimeMillis();
                                                long start2 = start;
                                                
                                                for (int i = 0 ; i < iter; i++) {
                                                        bean.getMessage();
                                                        
                                                        if (i % 100 == 0 && i != 0) {
                                                                long end = 
System.currentTimeMillis();
                                                                
out.println("<br>Time/call(ms):"+((end-start2)/100.0));
                                                                start2 = end;
                                                        }
                                                }                       
                                                
                                                long end = System.currentTimeMillis();
                                                out.println("<br>Avg. 
time/call(ms):"+((end-start)/(float)iter)+"</p>");
                                        }
                                
                                } catch (Exception e) {
                                        
                                        out.println("Call failed... Exception:");
                                        out.println("<pre>");
                                        e.printStackTrace(out);
                                        out.println("</pre>");
                                
                                }
                        }
                }
                
                
                
                
  
  

Reply via email to