LAB MANUAL                     Advanced Java Programming Laboratory                   16MCA46
1. Write a JAVA Servlet Program to implement a dynamic HTML using Servlet (user name and
   Password should be accepted using HTML and displayed using a Servlet).
Project Structure
Index.html
 <html>
   <head><title>login</title> </head>
   <body>
     <form action="loginServlet" method="get">
       <fieldset>
         <legend>Login Form</legend>
         Username:<input type="text" name="username"/><br/></br>
         Password: <input type="password" name="pass"/><br/></br>
         <input type="submit" value="send"/>
         <input type="reset" value="clear"/>
       </fieldset>
     </form>
   </body>
 </html>
Prepared By: Rajatha S, Assistant Professor, Dept. of MCA, RNSIT
    LAB MANUAL                     Advanced Java Programming Laboratory            16MCA46
    loginServlet.java
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class loginServlet extends HttpServlet {
  @Override
  protected void doGet(HttpServletRequest request, HttpServletResponse response)
       throws ServletException, IOException {
          PrintWriter out = response.getWriter();
         String name=request.getParameter("username");
         String secretword=request.getParameter("pass");
         out.println("<html>");
         out.println("<head><title>Servlet</title></head>");
         out.println("<body>");
         out.println("<fieldset>");
         out.println("<h2>You have Entered</h2>");
         out.println("<p>Name: " + name + "</p>");
         out.println("<p> Password: " +secretword+"</p>");
         out.println("</fieldset>");
         out.println("</body>");
         out.println("</html>");
    }
}
    output:
    Prepared By: Rajatha S, Assistant Professor, Dept. of MCA, RNSIT
LAB MANUAL                     Advanced Java Programming Laboratory   16MCA46
   2. Write a JAVA Servlet Program to Auto Web Page Refresh
       Project Structure
Refresh.java
Prepared By: Rajatha S, Assistant Professor, Dept. of MCA, RNSIT
   LAB MANUAL                      Advanced Java Programming Laboratory                     16MCA46
import java.io.IOException;
import java.io.PrintWriter;
import java.util.*;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class Refreshpage extends HttpServlet {
  protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException,
IOException {
    response.setContentType("text/html;charset=UTF-8");
    PrintWriter out = response.getWriter();
      response.addHeader("Refresh", "3");
      out.println("<h1>Auto page Refresh using Servlet: </h1>");
      out.println("<br><h2>Today's date and time </h2>"+new Date());
      }
  }
   output
   Prepared By: Rajatha S, Assistant Professor, Dept. of MCA, RNSIT
LAB MANUAL                     Advanced Java Programming Laboratory                        16MCA46
   3. Write a java servlet program to implement and demonstrate get() and post() methods
   Project structure
Index.html
 <html>
   <head>
     <title>TODO supply a title</title> </head>
   <body>
     <form action="loginServ" method="get">
       <h2> Using Get method</h2>
       <h3> UserName: <input type="text" name="uname"/></h3>
       <h3> Password:<input type="password" name="pwd"/></h3>
       <input type="submit" value="get()"/>
       <input type="reset">
       <hr>
     </form>
     <form action="loginServ" method="post">
       <h2> Using Post method</h2>
       <h3> UserName: <input type="text" name="uname1"/></h3>
       <h3> Password:<input type="password" name="pwd1"/></h3>
       <input type="submit" value="post()"/>
       <input type="reset">
       <hr>
     </form>
   </body>
 </html>
Prepared By: Rajatha S, Assistant Professor, Dept. of MCA, RNSIT
LAB MANUAL                      Advanced Java Programming Laboratory                16MCA46
loginServ.java
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class loginServ extends HttpServlet {
  @Override
  protected void doGet(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {
    String uname = request.getParameter("uname");
    String pwd=request.getParameter("pwd");
    PrintWriter out=response.getWriter();
    out.println("<!DOCTYPE html>");
    out.println("<html>");
    out.println("<head><title>Servlet loginServ</title></head>");
    out.println("<body>");
    out.println("<h1>Details of Get()</h1>");
    out.println("<h1>username: " + uname+ "</h1>");
    out.println("<h1>password: " + pwd+ "</h1>");
    out.println("</body></html>");
  }
  @Override
  protected void doPost(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {
      String uname1 = request.getParameter("uname1");
      String pwd1=request.getParameter("pwd1");
      PrintWriter out=response.getWriter();
      out.println("<!DOCTYPE html>");
      out.println("<html>");
      out.println("<head>");
      out.println("<title>Servlet loginServ</title>");
      out.println("</head>");
      out.println("<body>");
Prepared By: Rajatha S, Assistant Professor, Dept. of MCA, RNSIT
LAB MANUAL                     Advanced Java Programming Laboratory   16MCA46
        out.println("<h1>Details of Post()</h1>");
        out.println("<h1>username: " + uname1+ "</h1>");
        out.println("<h1>password: " + pwd1+ "</h1>");
        out.println("</body>");
        out.println("</html>");
    }
Output
Get request
Prepared By: Rajatha S, Assistant Professor, Dept. of MCA, RNSIT
LAB MANUAL                     Advanced Java Programming Laboratory   16MCA46
Post request
Prepared By: Rajatha S, Assistant Professor, Dept. of MCA, RNSIT
LAB MANUAL                     Advanced Java Programming Laboratory          16MCA46
4. Write a JAVA Servlet Program using cookies to remember user preferences
Index.html
<html>
  <head>
    <title>cookie example</title>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width">
  </head>
  <body>
   <form method="post" action="Validate">
     <fieldset>
     <h2> Setting cookie </h2>
     <h3>Name: <input type="text" name="user" /></h3>
     <h3>Password:<input type="password" name="pass" /></h3>
      <input type="submit" value="submit">
     </fieldset>
  </form>
  </body>
</html>
Validate.java
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
Prepared By: Rajatha S, Assistant Professor, Dept. of MCA, RNSIT
LAB MANUAL                            Advanced Java Programming Laboratory           16MCA46
public class Validate extends HttpServlet {
   @Override
  protected void doPost(HttpServletRequest request, HttpServletResponse response)
       throws ServletException, IOException {
         String name = request.getParameter("user");
         String pass = request.getParameter("pass");
         if(pass.equals("1234"))
         {
            Cookie ck = new Cookie("username",name);
            response.addCookie(ck);
             response.sendRedirect("First");
         }
    }
First.java
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class First extends HttpServlet {
    protected void doGet(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
         PrintWriter out = response.getWriter();
         //read cookie
        Cookie[] cks = request.getCookies();
           out.println("Welcome "+cks[0].getValue());
    }
}
Prepared By: Rajatha S, Assistant Professor, Dept. of MCA, RNSIT
LAB MANUAL                     Advanced Java Programming Laboratory   16MCA46
Output:
Prepared By: Rajatha S, Assistant Professor, Dept. of MCA, RNSIT
LAB MANUAL                     Advanced Java Programming Laboratory                       16MCA46
5. Write a JAVA Servlet program to track HttpSession by accepting user name and password using
HTML and display the profile page on successful login.
Index.html
<html>
  <head>
    <title>setting session</title>
  </head>
  <body>
   <form method="post" action="Validate">
     <fieldset>
     <h2> Setting session </h2>
     <h3>Name: <input type="text" name="user" /></h3>
     <h3>Password:<input type="password" name="pass" /></h3>
      <input type="submit" value="submit">
     </fieldset>
  </form>
  </body>
</html>
Validate.java
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
Prepared By: Rajatha S, Assistant Professor, Dept. of MCA, RNSIT
LAB MANUAL                          Advanced Java Programming Laboratory            16MCA46
import javax.servlet.http.HttpSession;
public class Validate extends HttpServlet {
  protected void doPost(HttpServletRequest request, HttpServletResponse response)
       throws ServletException, IOException {
        String name = request.getParameter("user");
        String pass = request.getParameter("pass");
        if(pass.equals("1234"))
        {
           //creating a session
           HttpSession session = request.getSession();
           session.setAttribute("user", name);
           response.sendRedirect("Welcome");
        }
    }
}
Welcome.java
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
public class Welcome extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {
    PrintWriter out = response.getWriter();
        // getting session
        HttpSession session = request.getSession();
        String user = (String)session.getAttribute("user");
        out.println("Hello "+user);
    }
}
Prepared By: Rajatha S, Assistant Professor, Dept. of MCA, RNSIT
LAB MANUAL                     Advanced Java Programming Laboratory                         16MCA46
Output
6. Write a JAVA JSP Program which uses jsp:include and jsp:forward action to display a Webpage.
Project Structure:
Prepared By: Rajatha S, Assistant Professor, Dept. of MCA, RNSIT
LAB MANUAL                     Advanced Java Programming Laboratory        16MCA46
Index.html
 <!DOCTYPE html>
 <html>
   <head>
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
     <title>JSP Page</title></head>
   <body>
     <form action="Homepage.jsp" method="post">
       <h2> Enter your birth date </h2>
         Date: <input type="text" name="day"/>
               <input type="submit" value="submit"/>
                <input type="reset" value="clear"/>
     </form>
   </body>
 </html>
Homepage.jsp
 <%@page import="java.util.Date"%>
 <%@page import="java.util.GregorianCalendar"%>
 <%@page import="java.util.Calendar"%>
 <!DOCTYPE html>
 <html>
   <head>
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
     <title>Homepage</title>
   </head>
   <body>
     <h1>Happy Birthday</h1>
     <%
       Date date = new Date();
       int udate = Integer.parseInt(request.getParameter("day"));
     %>
     <%if(udate==(date.getDate())){ %>
          <jsp:include page="date.jsp"/>
               <%}else{ %>
           <jsp:forward page="date.jsp"/>
      <%}%>
       </body> </html>
Prepared By: Rajatha S, Assistant Professor, Dept. of MCA, RNSIT
LAB MANUAL                     Advanced Java Programming Laboratory        16MCA46
date.jsp
 <%@page contentType="text/html" pageEncoding="UTF-8"%>
 <!DOCTYPE html>
 <html>
   <head>
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
     <title>welcome</title> </head>
   <body>
     <h1>Welcome to home page</h1>
   </body>
 </html>
output
Prepared By: Rajatha S, Assistant Professor, Dept. of MCA, RNSIT
LAB MANUAL                     Advanced Java Programming Laboratory         16MCA46
7. Write a JAVA JSP program which uses <jsp:pulgin> tag to run an applet.
Project Structure
Prepared By: Rajatha S, Assistant Professor, Dept. of MCA, RNSIT
LAB MANUAL                     Advanced Java Programming Laboratory                   16MCA46
 Index.jsp
 <%@page contentType="text/html" pageEncoding="UTF-8"%>
 <!DOCTYPE html>
 <html>
   <head>
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
     <title>JSP Page</title>
   </head>
   <body>
     <h1>Applet Demo</h1>
     <jsp:plugin type="applet" code="MyApp.class" height="500" codebase="mypack" width="500">
       <jsp:fallback>
          unable to load
       </jsp:fallback>
     </jsp:plugin>
     <h4><font color=red>
       The above applet is loaded using the Java Plugin from a jsp page using the plugin tag
     </font>
   </body>
 </html>
MyApp.java
 package mypack;
 import java.applet.Applet;
 import java.awt.Color;
 import java.awt.Graphics;
 public class MyApp extends Applet {
   public void init() {
     // TODO start asynchronous download of heavy resources
   }
  public void paint(Graphics g){
    setBackground(Color.red);
    setForeground(Color.blue);
    g.drawString("hello from jsp", 100, 200);
  }
Prepared By: Rajatha S, Assistant Professor, Dept. of MCA, RNSIT
LAB MANUAL                     Advanced Java Programming Laboratory                      16MCA46
Output:
8. Write a JAVA JSP Program to get student information through a HTML and create a JAVA Bean
class, populate Bean and display the same information through another JSP
Index.html
<!DOCTYPE html>
<html>
  <head>
Prepared By: Rajatha S, Assistant Professor, Dept. of MCA, RNSIT
LAB MANUAL                      Advanced Java Programming Laboratory      16MCA46
    <title>Student Info</title>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width">
  </head>
  <body>
    <form action="userdetails.jsp" method="post">
      <center><h2> Enter the student details </h2>
      <p> Name: <input type="text" name="name"><br> </p>
      <p>USN: <input type="text" name="usn"><br> </p>
      <p>Branch: <input type="text" name="branch"><br></p>
      <input type="submit" value="register"> </center>
    </form>
  </body>
</html>
userdetails.jsp
<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>JSP Page</title>
  </head>
  <body>
    <jsp:useBean id="userinfo" class="mypack.Details">
    </jsp:useBean>
    <jsp:setProperty property="*" name="userinfo" />
    <strong> Entered Details are below: </strong>
    <p>
      <jsp:getProperty property="name" name="userinfo"/><br>
      <jsp:getProperty property="usn" name="userinfo"/><br>
      <jsp:getProperty property="branch" name="userinfo" /><br>
    </p>
  </body>
</html>
Details.java
package mypack;
import java.io.Serializable;
public class Details implements Serializable{
Prepared By: Rajatha S, Assistant Professor, Dept. of MCA, RNSIT
LAB MANUAL                      Advanced Java Programming Laboratory   16MCA46
  private String name;
  public String getName() {
    return name;
  }
  public void setName(String name) {
    this.name = name;
  }
  public String getBranch() {
    return branch;
  }
  public void setBranch(String branch) {
    this.branch = branch;
  }
  public String getUsn() {
    return usn;
  }
  public void setUsn(String usn) {
    this.usn = usn;
  }
  private String branch;
  private String usn;
}
Output
Prepared By: Rajatha S, Assistant Professor, Dept. of MCA, RNSIT
LAB MANUAL                      Advanced Java Programming Laboratory            16MCA46
9. Write a JSP program to implement all the attributes of page directive tag.
Index.html
 <html>
   <head>
     <title>page attribute</title>
     <meta charset="UTF-8">
     <meta name="viewport" content="width=device-width">
   </head>
   <body>
     <h2>Read two value to divide</h2>
     <form action="lab09.jsp">
     Enter First Value:<input type="text" name="val1"/><br>
     Enter Second Value:<input type="text" name="val2"/><br>
       <input type="submit" value="Calculate"/>
     </form>
   </body>
 </html>
Prepared By: Rajatha S, Assistant Professor, Dept. of MCA, RNSIT
LAB MANUAL                     Advanced Java Programming Laboratory   16MCA46
Lab09.jsp
 <%@page import="java.util.Date"
 contentType="text/html"
 pageEncoding="UTF-8"
 session="true"
 buffer="16kb"
 autoFlush="true"
 isThreadSafe="true"
 isELIgnored="false"
 extends="org.apache.jasper.runtime.HttpJspBase"
 info="Lab 10: demo of all page directive" language="java"
 errorPage="showerror.jsp"
 %>
 <!DOCTYPE html>
 <html>
 <head>
 <title>JSP Page</title> </head>
   <%! int a, b;
   Date d=new Date();%>
   <body>
   <h2>Welcome! Today is <%= d.getDate()%></h2>
     <%
     String str1=request.getParameter("val1");
     String str2=request.getParameter("val2");
      a=Integer.parseInt(str1);
      b=Integer.parseInt(str2);%>
      <h2>Using Expression Language</h2>
       A= ${param.val1}<br>
       B= ${param.val2}<br>
     <h3>Result: <%= a / b %></h3>
 </body>
 </html>
Prepared By: Rajatha S, Assistant Professor, Dept. of MCA, RNSIT
LAB MANUAL                     Advanced Java Programming Laboratory   16MCA46
showerror.jsp
 <%@page isErrorPage="true"%>
 <!DOCTYPE html> <html>
 <head>
 <title>JSP Page</title> </head>
 <body>
   <h3>Sorry an exception occured!</h3>
   <h2>The exception is: <%= exception %> </h2> </body>
 </html>
Output:
Prepared By: Rajatha S, Assistant Professor, Dept. of MCA, RNSIT
LAB MANUAL                     Advanced Java Programming Laboratory                        16MCA46
10. Write a JAVA Program to insert data into Student DATA BASE and retrieve info based on
particular queries(For example update, delete, search etc…)
 import java.sql.*;
 import java.util.Scanner;
 public class Student
 {
   Connection con;
   public void establishConnection()throws ClassNotFoundException,SQLException
   {
     Class.forName("com.mysql.jdbc.Driver");
     con=DriverManager.getConnection("jdbc:mysql://localhost:3306/studentlogin","root","rnsit");
   }
   public void sInsert(String usn, String name, String dept)throws ClassNotFoundException, SQLException
   {
     PreparedStatement pst=null;
     establishConnection();
     try
     {
        if(con!=null)
        {
        pst=con.prepareStatement("insert into student values(?,?,?)");
        pst.setString(1, usn);
        pst.setString(2,name);
        pst.setString(3,dept);
        int i=pst.executeUpdate();
        if(i==1)
        {
           System.out.println("Record inserted successfully");
        }}}
     catch(SQLException e)
     {
        System.err.println(e.getMessage());
     }
     finally
     {
        pst.close();
        con.close();
     }}
     public void sSelect(String usn)throws ClassNotFoundException,SQLException
     {
        PreparedStatement pst=null;
        ResultSet res;
        establishConnection();
Prepared By: Rajatha S, Assistant Professor, Dept. of MCA, RNSIT
LAB MANUAL                     Advanced Java Programming Laboratory                          16MCA46
         try
         {
            if(con!=null)
            {
               pst=con.prepareStatement("select * from student where usn=?");
               pst.setString(1, usn);
               res=pst.executeQuery();
               if(res.next())
               {
                  System.out.println("USN= "+res.getString(1)+"\tName="+ res.getString(2)+ "\tDepartment=
 "+res.getString(3));
             } }}
          finally
         {
            pst.close();
            con.close();
         } }
 public void sUpdate(String usn, String name, String dept)throws ClassNotFoundException, SQLException
 {
   PreparedStatement pst=null;
   establishConnection();
   try
   {
      if(con!=null)
      {
         pst=con.prepareStatement("update student set name=?,dept=? where usn=?");
         pst.setString(1, name);
         pst.setString(2,dept);
         pst.setString(3,usn);
         int i=pst.executeUpdate();
         System.out.println(i);
      if(i==1)
      {
         System.out.println("Record updated successfully");
      } } }
      finally
      {
         pst.close();
         con.close();
      }}
 public void sDelete(String usn)throws ClassNotFoundException, SQLException
 {
   PreparedStatement pst=null;
   establishConnection();
   try
   {
      if(con!=null)
      {
Prepared By: Rajatha S, Assistant Professor, Dept. of MCA, RNSIT
LAB MANUAL                     Advanced Java Programming Laboratory                       16MCA46
         pst=con.prepareStatement("delete from student where usn=?");
         pst.setString(1, usn);
         int i=pst.executeUpdate();
         if(i==1)
         {
            System.out.println("Record deleted successfully");
         }}}
   catch(SQLException e)
   {
      System.err.println(e.getMessage());
   }
   finally
   {
      pst.close();
      con.close();
   }}
 public void viewAll( )throws ClassNotFoundException, SQLException
 {
   PreparedStatement pst=null;
   ResultSet res;
   establishConnection();
   try
   {
      if(con!=null)
      {
         pst=con.prepareStatement("select * from student");
         res=pst.executeQuery();
         while(res.next())
         {
            System.out.println("USN= "+res.getString(1)+"\tName="+res.getString(2)+"\tDepartment=
 "+res.getString(3));
         } } }
         catch(SQLException e)
         {
            System.err.println(e.getMessage());
         }
         finally
         {
            pst.close();
            con.close();
         } }
 public static void main(String[] a) throws ClassNotFoundException, SQLException
 {
   Student std=new Student();
   String usn,name,dept;
   Scanner sc=new Scanner(System.in);
   while(true)
Prepared By: Rajatha S, Assistant Professor, Dept. of MCA, RNSIT
LAB MANUAL                          Advanced Java Programming Laboratory                     16MCA46
     {
         System.out.println("Operations on Student table");
         System.out.println("1.Insert\n2.Select\n3.Update\n4.Delete\n5.View All\n6.Exit");
         System.out.println("select the operation");
         switch(sc.nextInt())
         {
           case 1: System.out.println("Enter USN to insert");
           usn=sc.next();
           System.out.println("Enter Name to insert");
           name=sc.next();
           System.out.println("Enter Deaprtment to insert");
           dept=sc.next();
           std.sInsert(usn, name, dept);
           break;
           case 2: System.out.println("Enter USN to select");
           usn=sc.next();
           std.sSelect(usn);
           break;
           case 3: System.out.println("Enter USN to update");
           usn=sc.next();
           System.out.println("Enter Name to update");
           name=sc.next();
           System.out.println("Enter department to update");
           dept=sc.next();
           std.sUpdate(usn, name, dept);
           break;
           case 4: System.out.println("Enter USN to delete");
           usn=sc.next();
           std.sDelete(usn);
           break;
           case 5: std.viewAll();
           break;
           case 6: System.exit(0);
           default: System.out.println("Invalid operation");
           break;
 }
 }
 }
 }
Prepared By: Rajatha S, Assistant Professor, Dept. of MCA, RNSIT
LAB MANUAL                      Advanced Java Programming Laboratory   16MCA46
11. An EJB application that demonstrates Session bean
SessionB.java
package com;
import javax.ejb.Stateless;
@Stateless
public class SessionB implements SessionBLocal {
    @Override
    public int Square(int side) {
      return side*side;
    }
Prepared By: Rajatha S, Assistant Professor, Dept. of MCA, RNSIT
LAB MANUAL                     Advanced Java Programming Laboratory   16MCA46
SessionBLocal
package com;
import javax.ejb.Local;
@Local
public interface SessionBLocal {
  int Square(int side);
}
index.html
<!DOCTYPE html>
<html>
  <head>
    <title>lab11</title>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width">
  </head>
  <body>
    <form action="SessionServlet">
       Enter the number:
       <input type="text" name="num"/><br>
       <input type="submit"/>
    </form>
  </body>
</html>
SessionServlet.java
package com;
import java.io.IOException;
import java.io.PrintWriter;
import javax.ejb.EJB;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class SessionServlet extends HttpServlet {
  @EJB
  private SessionBLocal sessionB;
Prepared By: Rajatha S, Assistant Professor, Dept. of MCA, RNSIT
LAB MANUAL                     Advanced Java Programming Laboratory                  16MCA46
    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response)
         throws ServletException, IOException {
        PrintWriter out=response.getWriter();
        int i, result;
        i=Integer.parseInt(request.getParameter("num"));
        result=sessionB.Square(i);
        out.println("the result "+result);
    }
}
Output:
12. An EJB application that demonstrates MDB (with appropriate business
logic).
Project Structure
Prepared By: Rajatha S, Assistant Professor, Dept. of MCA, RNSIT
LAB MANUAL                     Advanced Java Programming Laboratory               16MCA46
MessageB.java
 package com;
 import java.util.logging.Level;
 import java.util.logging.Logger;
 import javax.ejb.ActivationConfigProperty;
 import javax.ejb.MessageDriven;
 import javax.jms.JMSException;
 import javax.jms.Message;
 import javax.jms.MessageListener;
 import javax.jms.TextMessage;
 @MessageDriven(mappedName = "jms/destlab12", activationConfig = {
    @ActivationConfigProperty(propertyName = "destinationType", propertyValue =
 "javax.jms.Queue")
 })
 public class MessageB implements MessageListener {
   public MessageB() {
   }
   @Override
   public void onMessage(Message message) {
Prepared By: Rajatha S, Assistant Professor, Dept. of MCA, RNSIT
LAB MANUAL                     Advanced Java Programming Laboratory                   16MCA46
         TextMessage t=null;
         t=(TextMessage) message;
         try {
            System.out.println(t.getText());
         } catch (JMSException ex) {
            Logger.getLogger(MessageB.class.getName()).log(Level.SEVERE, null, ex);
         }
     }
index.jsp
 <%@page contentType="text/html" pageEncoding="UTF-8"%>
 <!DOCTYPE html>
 <html>
   <head>
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
     <title>JSP Page</title>
   </head>
   <body>
     <form action="MDB">
            Type your message :<input type="text" name="msg"/><br>
            <input type="submit"/>
     </form>
   </body>
 </html>
MDB.java
 package com;
 import java.io.IOException;
 import java.io.PrintWriter;
 import java.util.logging.Level;
 import java.util.logging.Logger;
 import javax.annotation.Resource;
 import javax.jms.Connection;
 import javax.jms.ConnectionFactory;
 import javax.jms.JMSException;
 import javax.jms.Message;
 import javax.jms.MessageProducer;
 import javax.jms.Queue;
Prepared By: Rajatha S, Assistant Professor, Dept. of MCA, RNSIT
LAB MANUAL                     Advanced Java Programming Laboratory                 16MCA46
 import javax.jms.Session;
 import javax.jms.TextMessage;
 import javax.servlet.ServletException;
 import javax.servlet.http.HttpServlet;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 public class MDB extends HttpServlet {
   @Resource(mappedName = "jms/destlab12")
   private Queue destlab12;
   @Resource(mappedName = "jms/lab12")
   private ConnectionFactory lab12;
   @Override
   protected void doGet(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
     PrintWriter out=response.getWriter();
     String m=request.getParameter("msg");
     try {
        sendJMSMessageToDestlab12(m);
     } catch (JMSException ex) {
        Logger.getLogger(MDB.class.getName()).log(Level.SEVERE, null, ex);
     }
      out.println("check output in server log");
    private Message createJMSMessageForjmsDestlab12(Session session, Object messageData)
 throws JMSException {
       // TODO create and populate message to send
       TextMessage tm = session.createTextMessage();
       tm.setText(messageData.toString());
       return tm;
    }
   private void sendJMSMessageToDestlab12(Object messageData) throws JMSException {
      Connection connection = null;
      Session session = null;
      try {
         connection = lab12.createConnection();
         session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
         MessageProducer messageProducer = session.createProducer(destlab12);
         messageProducer.send(createJMSMessageForjmsDestlab12(session, messageData));
      } finally {
Prepared By: Rajatha S, Assistant Professor, Dept. of MCA, RNSIT
LAB MANUAL                     Advanced Java Programming Laboratory              16MCA46
         if (session != null) {
            try {
               session.close();
            } catch (JMSException e) {
               Logger.getLogger(this.getClass().getName()).log(Level.WARNING, "Cannot
 close session", e);
            }
         }
         if (connection != null) {
            connection.close();
         }
      }
    }
Output
     1. Right Click on JMS
              Select clean and build
     2. Right Click on JMS
              Deploy
     3. Right Click on JMS
              Run
Go back to Netbeans->GlassFish Server 4.0
Prepared By: Rajatha S, Assistant Professor, Dept. of MCA, RNSIT
LAB MANUAL                     Advanced Java Programming Laboratory                       16MCA46
13. An EJB application that demonstrates persistence (with appropriate business logic).
Project Structure
Prepared By: Rajatha S, Assistant Professor, Dept. of MCA, RNSIT
LAB MANUAL                     Advanced Java Programming Laboratory          16MCA46
EMP1Facade.java
 package com;
 import javax.ejb.Stateless;
 import javax.persistence.EntityManager;
 import javax.persistence.PersistenceContext;
 @Stateless
 public class Emp1Facade extends AbstractFacade<Emp1> implements Emp1FacadeLocal {
   @PersistenceContext(unitName = "lab13-ejbPU")
   private EntityManager em;
     @Override
     protected EntityManager getEntityManager() {
       return em;
     }
     public Emp1Facade() {
       super(Emp1.class);
     }
     public void addEmp(String eid, String ename)
     {
       Emp1 e=new Emp1();
       e.setEid(eid);
       e.setEname(ename);
       create(e);
     }
Emp1FacadeLocal.java
 package com;
 import java.util.List;
 import javax.ejb.Local;
 @Local
 public interface Emp1FacadeLocal {
     void create(Emp1 emp1);
     void edit(Emp1 emp1);
     void remove(Emp1 emp1);
     Emp1 find(Object id);
Prepared By: Rajatha S, Assistant Professor, Dept. of MCA, RNSIT
LAB MANUAL                     Advanced Java Programming Laboratory                   16MCA46
     List<Emp1> findAll();
     List<Emp1> findRange(int[] range);
     int count();
     void addEmp(String eid, String ename);
index.jsp
 <%@page contentType="text/html" pageEncoding="UTF-8"%>
 <!DOCTYPE html>
 <html>
   <head>
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
      <title>JSP Page</title>
   </head>
   <body>
           <form action="EmpServlet" method="GET">
         <b>Employee Form</b><br/><br/>
            Emp Id: <input type="text" name="id"/><br/>
            Name: <input type="text" name="name"/><br/>
            <input type="submit" value="Add"/>
      </form>
   </body>
 </html>
EmpServlet.java
 package com;
 import java.io.IOException;
 import java.io.PrintWriter;
 import javax.ejb.EJB;
 import javax.servlet.ServletException;
 import javax.servlet.http.HttpServlet;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 public class EmpServlet extends HttpServlet {
   @EJB
   private Emp1FacadeLocal emp1Facade;
     @Override
     protected void doGet(HttpServletRequest request, HttpServletResponse response)
Prepared By: Rajatha S, Assistant Professor, Dept. of MCA, RNSIT
LAB MANUAL                     Advanced Java Programming Laboratory     16MCA46
           throws ServletException, IOException {
         PrintWriter out=response.getWriter();
         String eid=request.getParameter("id");
         String ename=request.getParameter("name");
         emp1Facade.addEmp(eid, ename);
         out.println("<b> Employee Id: " + eid + "</b><br/>");
         out.println("<b> Employee Ename: " + ename + "</b><br/><br/>
                       <b>Added to database</b>");
     }
 }
Output:
1.Clean and Build
2. Deploy
3. Run
Prepared By: Rajatha S, Assistant Professor, Dept. of MCA, RNSIT