Mega Code Archive

 
Categories / Java Tutorial / EJB3
 

Transaction In Servlet

File: application.xml <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE application PUBLIC "-//Sun Microsystems, Inc.//DTD J2EE Application 1.3//EN" "http://java.sun.com/dtd/application_1_3.dtd"> <application>     <display-name>Hello Ear File</display-name>     <!-- <module>         <ejb>rntsoft.jar</ejb>     </module> -->     <module>         <web>             <web-uri>rntsoft.war</web-uri>             <context-root>/webapp</context-root>         </web>     </module> </application> File: Customer.java import java.util.Date; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.Id; import javax.persistence.Table; import javax.persistence.Temporal; import javax.persistence.TemporalType; @Entity @Table(name = "CUSTOMER_TABLE") public class Customer implements java.io.Serializable {   private int id;   private String lastName;   private String firstName;   private Date timeCreated = new Date();   @Id   @GeneratedValue   @Column(name = "CUST_ID")   public int getId() {     return id;   }   public void setId(int pk) {     id = pk;   }   public String getLastName() {     return lastName;   }   public void setLastName(String lastName) {     this.lastName = lastName;   }   public String getFirstName() {     return firstName;   }   public void setFirstName(String firstName) {     this.firstName = firstName;   }   @Temporal(TemporalType.TIME)   public Date getTimeCreated() {     return timeCreated;   }   public void setTimeCreated(Date time) {     timeCreated = time;   } } File: HelloService.java import javax.ejb.Local; @Local public interface HelloService {     public void doAction(); } File: HelloServiceBean.java import javax.ejb.Stateless; import javax.persistence.EntityManager; import javax.persistence.PersistenceContext; @Stateless public class HelloServiceBean implements HelloService {   public void doAction(){   } } File: MyServlet.java import java.io.IOException; import java.io.PrintWriter; import javax.annotation.Resource; import javax.ejb.EJB; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.transaction.NotSupportedException; import javax.transaction.SystemException; import javax.transaction.UserTransaction; public class MyServlet extends HttpServlet {   @EJB   HelloService hello;   @Resource   UserTransaction tx;   public void doGet(HttpServletRequest request, HttpServletResponse response)       throws ServletException, IOException {     response.setContentType("text/html");     PrintWriter out = response.getWriter();     out.println("<body>");     out.println("<html>");     out.println("<head><title>TITLE </title></head><body>");     // try {     // service = (HelloService) new     // InitialContext().lookup("java:comp/env/ejb/HelloService");     // service = (HelloService) new     // InitialContext().lookup("HelloService/Local");     // } catch (Exception e) {     // throw new ServletException(e);     // }     hello = new HelloServiceBean();     try {       tx.begin();       hello.doAction();       tx.commit();     } catch (Exception e) {     }     out.println("saved:");          out.println("</body></html>");   }   public void doPost(HttpServletRequest request, HttpServletResponse response)       throws ServletException, IOException {     doGet(request, response);   } }