Example usage for org.hibernate SessionFactory openSession

List of usage examples for org.hibernate SessionFactory openSession

Introduction

In this page you can find the example usage for org.hibernate SessionFactory openSession.

Prototype

Session openSession() throws HibernateException;

Source Link

Document

Open a Session .

Usage

From source file:TesteMain.java

public void addCliente() {
    cli.setApelidofantasia("Junior");
    cli.setCodigo("123");
    cli.getAtendente().setApelidofantasia("santana");
    Email mail = new Email();
    mail.setEmail("santana@terra");
    cli.getEmails().add(mail);//ww w  . j  a va2  s .c om
    SessionFactory sf = HibernateUtil.getSessionFactory();
    Session ss = sf.openSession();
    Transaction tx = ss.beginTransaction();
    ss.save(p1);
    ss.save(cli);
    tx.commit();
    ss.close();

    System.out.println("ok");
}

From source file:take_lab_app.java

/**
 * Processes requests for both HTTP <code>GET</code> and <code>POST</code>
 * methods.// w w  w .  j a  v a  2 s  .com
 *
 * @param request servlet request
 * @param response servlet response
 * @throws ServletException if a servlet-specific error occurs
 * @throws IOException if an I/O error occurs
 */
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    response.setContentType("text/html;charset=UTF-8");
    try (PrintWriter out = response.getWriter()) {
        /* TODO output your page here. You may use following sample code. */
        SessionFactory sf = HibernateUtil.getSessionFactory();
        Session ss = sf.openSession();
        Transaction tr = ss.beginTransaction();
        HttpSession hs = request.getSession();
        if (hs.getAttribute("patient") != null) {

            if (request.getParameter("labid") != null) {
                Patient p = (Patient) hs.getAttribute("patient");
                int l1 = Integer.parseInt(request.getParameter("labid"));

                Lab l = new Lab(l1);

                String[] tlist = null;
                if (request.getParameterValues("testlist") != null) {
                    tlist = request.getParameterValues("testlist");

                    if (tlist.length > 0) {

                        LabAppointment lappo = new LabAppointment();
                        lappo.setPId(p);
                        lappo.setStatus("Pending");

                        lappo.setLId(l);
                        ss.save(lappo);

                        for (int i = 0; i < tlist.length; i++) {
                            int ltid = Integer.parseInt(tlist[i]);
                            Labtest lt = new Labtest(ltid);
                            PatienttestDetail ptd = new PatienttestDetail();
                            ptd.setLtId(lt);
                            ptd.setLaId(lappo);
                            ss.save(ptd);
                        }

                        request.setAttribute("msg", "Your Appointment has been booked..!");
                        //                        where it view list of his/her appointmmmmm

                    }
                } else {
                    tr.commit();
                    request.setAttribute("msg", "Please select atlist one test.!");
                    System.out.println("Go Take test.!");
                    RequestDispatcher rd = request
                            .getRequestDispatcher("take_test?labid=" + request.getParameter("labid") + ""); //take_test
                    rd.forward(request, response);
                }
            }
            tr.commit();
            RequestDispatcher rd = request.getRequestDispatcher("consult_lab.jsp");
            rd.forward(request, response);

        } else {
            tr.commit();
            RequestDispatcher rd = request.getRequestDispatcher("login.jsp");
            rd.forward(request, response);
        }
    }
}

From source file:prediction_sample.java

/**
 * Processes requests for both HTTP <code>GET</code> and <code>POST</code>
 * methods./*from w  w  w. ja v  a 2  s .c  o m*/
 *
 * @param request servlet request
 * @param response servlet response
 * @throws ServletException if a servlet-specific error occurs
 * @throws IOException if an I/O error occurs
 */
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    response.setContentType("text/html;charset=UTF-8");
    PrintWriter out = response.getWriter();

    try {

        SessionFactory sf = NewHibernateUtil.getSessionFactory();
        Session ss = sf.openSession();
        Transaction tr = ss.beginTransaction();

        System.out.println("before criteria");

        Criteria cr = ss.createCriteria(AssetData.class);
        System.out.println("before list");

        List<AssetData> asd = (List<AssetData>) cr.list();

        System.out.println("after list");

        double ip = Double.parseDouble(asd.get(0).getFinalPrice());
        double n = 2017 - (Double.parseDouble(asd.get(0).getFinalYear()));
        double r = 10;
        double x;
        x = 1 + (r / 100);

        double b;
        b = Math.pow(x, n);

        double fp = ip * b;
        out.printf("%.2f", fp);

    } catch (Exception e) {
        System.out.println(e.getMessage());
    }
}

From source file:view_pastsystemreport_bydoc.java

/**
 * Processes requests for both HTTP <code>GET</code> and <code>POST</code>
 * methods.//from  ww  w.  ja va  2 s  .c o  m
 *
 * @param request servlet request
 * @param response servlet response
 * @throws ServletException if a servlet-specific error occurs
 * @throws IOException if an I/O error occurs
 */
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    response.setContentType("text/html;charset=UTF-8");
    PrintWriter out = response.getWriter();

    try {

        SessionFactory sf = HibernateUtil.getSessionFactory();
        Session ss = sf.openSession();
        Transaction tr = ss.beginTransaction();
        HttpSession hs = request.getSession();

        if (hs.getAttribute("docotr") != null) {
            Patient a = (Patient) hs.getAttribute("patient");
            int pid = a.getPId();
            Calculationmeteredata cal = (Calculationmeteredata) ss.get(Calculationmeteredata.class, pid);
            Criteria cr = ss.createCriteria(Calculationmeteredata.class);
            cr.add(Restrictions.eq("pId", a));
            // cr.add(Restrictions.eq("status", "PENDING"));
            ArrayList<DoctorAppointment> da = (ArrayList<DoctorAppointment>) cr.list();
            if (da.size() > 0) {
                request.setAttribute("da", da);
            }
            tr.commit();
            RequestDispatcher rd = request.getRequestDispatcher("patient_my_system_report.jsp");
            rd.forward(request, response);

        } else {
            tr.commit();
            RequestDispatcher rd = request.getRequestDispatcher("login.jsp");
            rd.forward(request, response);
        }

    }

    catch (HibernateException he) {
        out.println(he.getMessage());
    }

    finally {
        out.close();
    }

}

From source file:prop_add_serv.java

/**
 * Processes requests for both HTTP <code>GET</code> and <code>POST</code>
 * methods./*from www.  ja v a 2 s .  co m*/
 *
 * @param request servlet request
 * @param response servlet response
 * @throws ServletException if a servlet-specific error occurs
 * @throws IOException if an I/O error occurs
 */
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException, FileUploadException {
    response.setContentType("text/html;charset=UTF-8");

    HttpSession hs = request.getSession();
    PrintWriter out = response.getWriter();
    try {

        if (hs.getAttribute("user") != null) {
            Login ln = (Login) hs.getAttribute("user");
            System.out.println(ln.getUId());
            String pradd1 = "";
            String pradd2 = "";
            String prage = "";
            String prarea = "";
            String prbhk = "";
            String prdescrip = "";
            String prprice = "";
            String prcity = "";
            String prstate = "";
            String prname = "";
            String prtype = "";

            String prfarea = "";
            String prphoto1 = "";
            String prphoto2 = "";
            String prphoto3 = "";
            String prphoto4 = "";

            //             
            // creates FileItem instances which keep their content in a temporary file on disk
            FileItemFactory factory = new DiskFileItemFactory();
            // Create a new file upload handler
            ServletFileUpload upload = new ServletFileUpload(factory);

            //get the list of all fields from request
            List<FileItem> fields = upload.parseRequest(request);
            // iterates the object of list
            Iterator<FileItem> it = fields.iterator();
            //getting objects one by one
            while (it.hasNext()) {
                //assigning coming object if list to object of FileItem
                FileItem fileItem = it.next();
                //check whether field is form field or not
                boolean isFormField = fileItem.isFormField();

                if (isFormField) {
                    //get the filed name 
                    String fieldName = fileItem.getFieldName();

                    if (fieldName.equals("pname")) {
                        //getting value of field
                        prname = fileItem.getString();
                        System.out.println(prname);
                    } else if (fieldName.equals("price")) {
                        //getting value of field
                        prprice = fileItem.getString();
                        System.out.println(prprice);
                    } else if (fieldName.equals("city")) {
                        prcity = fileItem.getString();
                        System.out.println(prcity);
                    } else if (fieldName.equals("state")) {
                        prstate = fileItem.getString();
                        System.out.println(prstate);
                    } else if (fieldName.equals("area")) {
                        prarea = fileItem.getString();
                        System.out.println(prarea);
                    } else if (fieldName.equals("pbhk")) {
                        prbhk = fileItem.getString();
                        System.out.println(prbhk);
                    } else if (fieldName.equals("pdescription")) {
                        prdescrip = fileItem.getString();
                        System.out.println(prdescrip);

                    } else if (fieldName.equals("ptype")) {
                        prtype = fileItem.getString();
                        System.out.println(prtype);

                    } else if (fieldName.equals("paddress1")) {
                        pradd1 = fileItem.getString();
                        System.out.println(pradd1);
                    } else if (fieldName.equals("paddress2")) {
                        pradd2 = fileItem.getString();
                        System.out.println(pradd2);
                    } else if (fieldName.equals("page")) {
                        prage = fileItem.getString();
                        System.out.println(prage);
                    } else if (fieldName.equals("pfarea")) {
                        prfarea = fileItem.getString();
                        System.out.println(prfarea);
                    }
                } else {

                    String fieldName = fileItem.getFieldName();

                    if (fieldName.equals("photo1")) {

                        //getting name of file
                        prphoto1 = new File(fileItem.getName()).getName();

                        //get the extension of file by diving name into substring
                        // String extension=prphoto.substring(prphoto.indexOf(".")+1,prphoto.length());;
                        //rename file...concate name and extension
                        //prphoto=prname+"."+extension;
                        //System.out.println(prphoto);
                        try {

                            String fp = "/home/rushin/NetBeansProjects/The_Asset_Consultancy/web/images/property/";
                            // FOR UBUNTU add GETRESOURCE  and GETPATH
                            // String filePath = this.getServletContext().getResource("/images").getPath() + "\\";
                            fileItem.write(new File(fp + prphoto1));
                        } catch (Exception ex) {
                            out.println(ex.toString());
                        }
                    }

                    //PHOTO 2

                    else if (fieldName.equals("photo2")) {
                        prphoto2 = new File(fileItem.getName()).getName();

                        try {

                            String fp = "/home/rushin/NetBeansProjects/The_Asset_Consultancy/web/images/property/";
                            fileItem.write(new File(fp + prphoto2));
                        } catch (Exception ex) {
                            out.println(ex.toString());
                        }

                    }
                    //PHOTO 3
                    else if (fieldName.equals("photo3")) {

                        prphoto3 = new File(fileItem.getName()).getName();
                        try {

                            String fp = "/home/rushin/NetBeansProjects/The_Asset_Consultancy/web/images/property/";
                            fileItem.write(new File(fp + prphoto3));
                        } catch (Exception ex) {
                            out.println(ex.toString());
                        }
                    }

                    //PHOTO 4
                    else if (fieldName.equals("photo4")) {
                        prphoto4 = new File(fileItem.getName()).getName();
                        try {

                            String fp = "/home/rushin/NetBeansProjects/The_Asset_Consultancy/web/images/property/";
                            fileItem.write(new File(fp + prphoto4));
                        } catch (Exception ex) {
                            out.println(ex.toString());
                        }
                    }

                }

            }

            SessionFactory sf = NewHibernateUtil.getSessionFactory();
            Session ss = sf.openSession();
            Transaction tr = ss.beginTransaction();

            String op = "";
            Criteria cr = ss.createCriteria(StateMaster.class);
            cr.add(Restrictions.eq("sId", Integer.parseInt(prstate)));
            ArrayList<StateMaster> ar = (ArrayList<StateMaster>) cr.list();
            if (ar.isEmpty()) {

            } else {
                StateMaster sm = ar.get(0);
                op = sm.getSName();

            }

            String city = "";
            Criteria cr2 = ss.createCriteria(CityMaster.class);
            cr2.add(Restrictions.eq("cityId", Integer.parseInt(prcity)));
            ArrayList<CityMaster> ar2 = (ArrayList<CityMaster>) cr2.list();
            System.out.println("----------" + ar2.size());
            if (ar2.isEmpty()) {

            } else {
                city = ar2.get(0).getCityName();
                System.out.println("-------" + city);
            }

            String area = "";
            Criteria cr3 = ss.createCriteria(AreaMaster.class);
            cr3.add(Restrictions.eq("areaId", Integer.parseInt(prarea)));
            ArrayList<AreaMaster> ar3 = (ArrayList<AreaMaster>) cr3.list();
            System.out.println("----------" + ar3.size());
            if (ar3.isEmpty()) {

            } else {
                area = ar3.get(0).getAreaName();
                System.out.println("-------" + area);
            }

            PropDetail pd = new PropDetail();

            pd.setUId(ln);

            pd.setPAge(Integer.parseInt(prage));

            pd.setPBhk(prbhk);
            pd.setPDescription(prdescrip.trim());
            pd.setPAdd1(pradd1);
            pd.setPAdd2(pradd2);
            pd.setPPrice(Integer.parseInt(prprice));

            pd.setPCity(city);
            pd.setPState(op);
            pd.setPArea(area);

            pd.setPName(prname);
            pd.setPType(prtype);
            pd.setPImg1(prphoto1);
            System.out.println(prphoto1);
            System.out.println(prphoto2);
            pd.setPImg2(prphoto2);

            pd.setPImg3(prphoto3);
            pd.setPImg4(prphoto4);

            pd.setPFloor(Integer.parseInt(prfarea));

            ss.save(pd);

            tr.commit();

            RequestDispatcher rd = request.getRequestDispatcher("property_search_1.jsp");
            rd.forward(request, response);
        }
    } catch (HibernateException e) {
        out.println(e.getMessage());
    }
}

From source file:lab_view_appointment.java

/**
 * Processes requests for both HTTP <code>GET</code> and <code>POST</code>
 * methods./*from  w ww.  j a  va  2s.com*/
 *
 * @param request servlet request
 * @param response servlet response
 * @throws ServletException if a servlet-specific error occurs
 * @throws IOException if an I/O error occurs
 */
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    response.setContentType("text/html;charset=UTF-8");

    PrintWriter out = response.getWriter();

    try {

        SessionFactory sf = HibernateUtil.getSessionFactory();
        Session ss = sf.openSession();
        Transaction tr = ss.beginTransaction();
        HttpSession hs = request.getSession();

        if (hs.getAttribute("lab") != null)

        {
            Lab a = (Lab) hs.getAttribute("lab");

            if (request.getParameter("status") != null && request.getParameter("appoid") != null)

            {

                int apid = Integer.parseInt(request.getParameter("appoid"));
                LabAppointment lab1 = (LabAppointment) ss.get(LabAppointment.class, apid);
                if (request.getParameter("status").equals("approve")) {

                    lab1.setStatus("APPROVED");
                    lab1.setDate(request.getParameter("apdate"));
                    lab1.setTime(request.getParameter("aptime"));
                    ss.update(lab1);

                    String subject = "Your Appointment is Approved.!";
                    PatienttestDetail pp = new PatienttestDetail();
                    String content = "Hi, " + lab1.getPId().getPFirstname() + "\n"
                            + "Your appointment has been approved by " + lab1.getLId().getLabName() + ".\n"
                            + "Date : " + lab1.getDate() + "\n" + "Time : " + lab1.getTime() + "\n";

                    String mail = lab1.getPId().getEmailId();

                    String[] recipients = new String[] { mail };

                    if (new MailUtil().sendMail(recipients, subject, content)) {

                    }
                    request.setAttribute("msg", "Appointment accepted..!");
                }

                else if (request.getParameter("status").equals("reject")) {
                    lab1.setStatus("REJECTED");
                    ss.update(lab1);
                    String subject = "Your Appointment is Rejected.!";
                    String content = "Hi, " + lab1.getPId().getPFirstname() + " "
                            + "Your appointment has been rejected by " + lab1.getLId().getLabName()
                            + ".\n anil ";
                    String mail = lab1.getPId().getEmailId();

                    String[] recipients = new String[] { mail };
                    //String[] bccRecipients = new String[]{"sunilkotadiya777@gmail.com"};  

                    if (new MailUtil().sendMail(recipients, subject, content)) {

                    }
                    request.setAttribute("msg", "Appointment rejected..!");

                }

            }

            Criteria cr = ss.createCriteria(LabAppointment.class);
            cr.add(Restrictions.eq("lId", a));
            cr.add(Restrictions.eq("status", "Pending"));
            ArrayList<LabAppointment> da = (ArrayList<LabAppointment>) cr.list();
            if (da.size() > 0) {
                request.setAttribute("da", da);
            }

            tr.commit();
            RequestDispatcher rd = request.getRequestDispatcher("Lab_Appointment_List.jsp");
            rd.forward(request, response);
        } else {
            tr.commit();
            RequestDispatcher rd = request.getRequestDispatcher("login.jsp");
            rd.forward(request, response);
        }

    }

    catch (HibernateException he) {

        he.getMessage();
    }

    finally {
        out.close();
    }

}

From source file:doc_view_appointment.java

/**
 * Processes requests for both HTTP <code>GET</code> and <code>POST</code>
 * methods./*from  ww w. java  2s. c o m*/
 *
 * @param request servlet request
 * @param response servlet response
 * @throws ServletException if a servlet-specific error occurs
 * @throws IOException if an I/O error occurs
 */
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    response.setContentType("text/html;charset=UTF-8");

    PrintWriter out = response.getWriter();

    try {

        SessionFactory sf = HibernateUtil.getSessionFactory();
        Session ss = sf.openSession();
        Transaction tr = ss.beginTransaction();
        HttpSession hs = request.getSession();
        if (hs.getAttribute("doctor") != null) {
            Doctor a = (Doctor) hs.getAttribute("doctor");

            if (request.getParameter("status") != null && request.getParameter("appoid") != null) {

                int apid = Integer.parseInt(request.getParameter("appoid"));
                DoctorAppointment doc1 = (DoctorAppointment) ss.get(DoctorAppointment.class, apid);
                if (request.getParameter("status").equals("approve")) {

                    doc1.setStatus("APPROVED");
                    doc1.setDate(request.getParameter("apdate"));
                    doc1.setTime(request.getParameter("aptime"));
                    ss.update(doc1);

                    String subject = "Your Appointment is Approved.!";
                    String content = "Hi, " + doc1.getPId().getPFirstname() + "\n"
                            + "Your appointment has been approved by Dr." + doc1.getDId().getDFirstname()
                            + ".\n" + "Date : " + doc1.getDate() + "\n" + "Time : " + doc1.getTime() + "\n";
                    String mail = doc1.getPId().getEmailId();

                    String[] recipients = new String[] { mail };
                    //String[] bccRecipients = new String[]{"sunilkotadiya777@gmail.com"};  

                    if (new MailUtil().sendMail(recipients, subject, content)) {

                    }
                    request.setAttribute("msg", "Appointment accepted..!");

                } else if (request.getParameter("status").equals("reject")) {
                    doc1.setStatus("REJECTED");
                    ss.update(doc1);
                    String subject = "Your Appointment is Rejected.!";
                    String content = "Hi, " + doc1.getPId().getPFirstname() + " "
                            + "Your appointment has been rejected by Dr." + doc1.getDId().getDFirstname()
                            + ".\n anil ";
                    String mail = doc1.getPId().getEmailId();

                    String[] recipients = new String[] { mail };
                    //String[] bccRecipients = new String[]{"sunilkotadiya777@gmail.com"};  

                    if (new MailUtil().sendMail(recipients, subject, content)) {

                    }
                    request.setAttribute("msg", "Appointment rejected..!");
                }

            }

            Criteria cr = ss.createCriteria(DoctorAppointment.class);
            cr.add(Restrictions.eq("dId", a));
            cr.add(Restrictions.eq("status", "PENDING"));
            ArrayList<DoctorAppointment> da = (ArrayList<DoctorAppointment>) cr.list();
            if (da.size() > 0) {
                request.setAttribute("da", da);
            }

            tr.commit();
            RequestDispatcher rd = request.getRequestDispatcher("doc_appointment_list.jsp");
            rd.forward(request, response);
        } else {
            tr.commit();
            RequestDispatcher rd = request.getRequestDispatcher("login.jsp");
            rd.forward(request, response);
        }
    } catch (HibernateException he) {
        he.getMessage();
    } finally {

        out.close();
    }
}

From source file:agent_fb_serv.java

/**
 * Processes requests for both HTTP <code>GET</code> and <code>POST</code>
 * methods.//from  w  w  w.  j a  v a 2  s.  co  m
 *
 * @param request servlet request
 * @param response servlet response
 * @throws ServletException if a servlet-specific error occurs
 * @throws IOException if an I/O error occurs
 */
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    response.setContentType("text/html;charset=UTF-8");
    PrintWriter out = response.getWriter();
    HttpSession hs = request.getSession();
    try {

        if (hs.getAttribute("user") != null) {
            AgentDetail ad = (AgentDetail) hs.getAttribute("agentobj");
            Login ln = (Login) hs.getAttribute("user");

            String content = request.getParameter("content");

            SessionFactory sff = NewHibernateUtil.getSessionFactory();
            Session ss = sff.openSession();
            Transaction tr = ss.beginTransaction();

            AgentFeedback af = new AgentFeedback();
            af.setAId(ad);
            af.setUId(ln);
            af.setComment(content);
            af.setTime(new Date(System.currentTimeMillis()));

            ss.save(af);
            tr.commit();

            RequestDispatcher rd = request.getRequestDispatcher("getstate?id=4");
            rd.forward(request, response);

        }
    } catch (HibernateException he) {
        out.println(he.getMessage());
    }
}

From source file:Bazica.java

public Bazica(HttpServletResponse response) throws IOException {
    PrintWriter out = response.getWriter();
    this.out = out;
    Configuration cfg = new Configuration();
    cfg.configure("hibernate.cfg.xml");//populates the data of the configuration file  
    SessionFactory factory = cfg.buildSessionFactory();
    Session session = factory.openSession();
    this.session = session;
}

From source file:calculatefactorrisk.java

/**
 * Processes requests for both HTTP <code>GET</code> and <code>POST</code>
 * methods.//from w  ww. j a  va2  s .  c  o m
 *
 * @param request servlet request
 * @param response servlet response
 * @throws ServletException if a servlet-specific error occurs
 * @throws IOException if an I/O error occurs
 */
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    response.setContentType("text/html;charset=UTF-8");
    try (PrintWriter out = response.getWriter()) {
        /* TODO output your page here. You may use following sample code. */
        SessionFactory sf = HibernateUtil.getSessionFactory();
        Session ss = sf.openSession();
        Transaction tr = ss.beginTransaction();
        HttpSession hs = request.getSession();

        if (hs.getAttribute("patient") != null) {

            Patient p1 = (Patient) hs.getAttribute("patient");
            int metervalue = 0;
            double rmetervalue = 0;
            int facindex = 0;
            int points = 0;
            String[] chartdata = new String[4];
            chartdata[0] = "5";
            chartdata[1] = "12";
            chartdata[2] = "25";
            chartdata[3] = "60";
            ArrayList<PatientfactorAnswer> finalans = new ArrayList<PatientfactorAnswer>();

            if (request.getParameter("facindex") != null && request.getParameter("ans") != null) {

                if (hs.getAttribute("metervalue") != null) {
                    metervalue = (Integer) hs.getAttribute("metervalue");
                }
                if (hs.getAttribute("finalans") != null) {
                    finalans = (ArrayList<PatientfactorAnswer>) hs.getAttribute("finalans");
                }
                if (request.getParameter("ans").equals("15")) {
                    hs.setAttribute("gender", "MALE");
                    hs.setAttribute("agefactor", null);
                }
                if (request.getParameter("ans").equals("16")) {
                    hs.setAttribute("gender", "FEMALE");
                    hs.setAttribute("agefactor", null);
                }

                facindex = Integer.parseInt(request.getParameter("facindex"));
                if (request.getParameter("next") != null) {

                    int ansid = Integer.parseInt(request.getParameter("ans"));
                    FactorOption ansfo = (FactorOption) ss.get(FactorOption.class, ansid);
                    if (ansfo.getFactorId().equals(new FactorDetails(2))) {
                        hs.setAttribute("agefactor", ansfo);
                    }

                    PatientfactorAnswer currentans = new PatientfactorAnswer();
                    currentans.setFactorId(ansfo.getFactorId());
                    currentans.setFactorOptionId(ansfo);
                    currentans.setPId(p1);

                    if (finalans.size() > 0) {
                        ArrayList<PatientfactorAnswer> finalans1 = finalans;
                        for (int i1 = 0; i1 < finalans1.size(); i1++) {
                            PatientfactorAnswer c1 = finalans.get(i1);
                            if (c1.getFactorId().equals(currentans.getFactorId())) {
                                finalans.remove(i1);
                            }
                        }
                    }
                    finalans.add(facindex, currentans);

                    //                        System.out.println(finalans.get(0).getFactorOptionId());
                    //                        System.out.println(finalans.get(1).getFactorOptionId());
                    //                        System.out.println(finalans.get(2).getFactorOptionId());
                    System.out.println("size : " + finalans.size());
                    facindex = facindex + 1;
                } else if (request.getParameter("prev") != null) {
                    if (facindex > 0) {
                        facindex = facindex - 1;
                    }
                }

                if (finalans.size() > 0) {
                    String gender = "MALE";
                    if (hs.getAttribute("gender") != null) {
                        gender = (String) hs.getAttribute("gender");
                    }
                    if (gender.equals("MALE") && hs.getAttribute("agefactor") != null) {

                        FactorOption agefac = (FactorOption) hs.getAttribute("agefactor");

                        for (PatientfactorAnswer c1 : finalans) {
                            points = points + c1.getFactorOptionId().getMen();
                        }
                        if (points < 0) {
                            points = 0;
                        }
                        if (points > 14) {
                            points = 14;
                        }
                        //                Count risk on point
                        Criteria cr2 = ss.createCriteria(AbsulateRiskMale.class);
                        cr2.add(Restrictions.eq("foptionid", agefac));
                        cr2.add(Restrictions.eq("point", points));
                        ArrayList<AbsulateRiskMale> riskdata = (ArrayList<AbsulateRiskMale>) cr2.list();
                        if (riskdata.size() > 0) {
                            AbsulateRiskMale risk = riskdata.get(0);
                            if (risk.getGreen() != null) {
                                metervalue = risk.getGreen();
                            } else if (risk.getViolet() != null) {
                                metervalue = risk.getViolet();
                            } else if (risk.getYellow() != null) {
                                metervalue = risk.getYellow();
                            } else if (risk.getRed() != null) {
                                metervalue = risk.getRed();
                            }
                            if (risk.getRGreen() != null) {
                                rmetervalue = risk.getRGreen();
                            } else if (risk.getRViolet() != null) {
                                rmetervalue = risk.getRViolet();
                            } else if (risk.getRYellow() != null) {
                                rmetervalue = risk.getRYellow();
                            } else if (risk.getRRed() != null) {
                                rmetervalue = risk.getRRed();
                            }
                            //                                System.out.println("Risk data : " + risk);
                        }
                        System.out.println("Meter value : " + metervalue);
                        System.out.println("RMeter value : " + rmetervalue);
                        //                        Set Chart Data    
                        Criteria cr01 = ss.createCriteria(AbsulateRiskMale.class);
                        cr01.add(Restrictions.eq("foptionid", agefac));
                        cr01.setProjection(Projections.max("green"));
                        if (cr01.uniqueResult() != null) {
                            chartdata[0] = cr01.uniqueResult().toString();
                        }
                        Criteria cr02 = ss.createCriteria(AbsulateRiskMale.class);
                        cr02.add(Restrictions.eq("foptionid", agefac));
                        cr02.setProjection(Projections.max("violet"));
                        if (cr02.uniqueResult() != null) {
                            chartdata[1] = cr02.uniqueResult().toString();
                        }
                        Criteria cr03 = ss.createCriteria(AbsulateRiskMale.class);
                        cr03.add(Restrictions.eq("foptionid", agefac));
                        cr03.setProjection(Projections.max("yellow"));
                        if (cr03.uniqueResult() != null) {
                            chartdata[2] = cr03.uniqueResult().toString();
                        }
                        chartdata[3] = "54";
                    }
                    if (gender.equals("FEMALE") && hs.getAttribute("agefactor") != null) {

                        FactorOption agefac = (FactorOption) hs.getAttribute("agefactor");

                        for (PatientfactorAnswer c1 : finalans) {
                            points = points + c1.getFactorOptionId().getWomen();
                        }
                        if (points < 0) {
                            points = 0;
                        }
                        if (points > 17) {
                            points = 17;
                        }
                        //                Count risk on point
                        Criteria cr2 = ss.createCriteria(AbsoluteRiskFemale.class);
                        cr2.add(Restrictions.eq("foptionid", agefac));
                        cr2.add(Restrictions.eq("point", points));
                        ArrayList<AbsoluteRiskFemale> riskdata = (ArrayList<AbsoluteRiskFemale>) cr2.list();
                        if (riskdata.size() > 0) {
                            AbsoluteRiskFemale risk = riskdata.get(0);
                            if (risk.getGreen() != null) {
                                metervalue = risk.getGreen();
                            } else if (risk.getViolet() != null) {
                                metervalue = risk.getViolet();
                            } else if (risk.getYellow() != null) {
                                metervalue = risk.getYellow();
                            } else if (risk.getRed() != null) {
                                metervalue = risk.getRed();
                            }
                            if (risk.getRGreen() != null) {
                                rmetervalue = risk.getRGreen();
                            } else if (risk.getRViolet() != null) {
                                rmetervalue = risk.getRViolet();
                            } else if (risk.getRYellow() != null) {
                                rmetervalue = risk.getRYellow();
                            } else if (risk.getRRed() != null) {
                                rmetervalue = risk.getRRed();
                            }
                            //                                System.out.println("Risk data : " + risk);
                        }
                        //                            System.out.println("Meter value : " + metervalue);
                        //                        Set Chart Data    
                        Criteria cr01 = ss.createCriteria(AbsoluteRiskFemale.class);
                        cr01.add(Restrictions.eq("foptionid", agefac));
                        cr01.setProjection(Projections.max("green"));
                        if (cr01.uniqueResult() != null) {
                            chartdata[0] = cr01.uniqueResult().toString();
                        }
                        Criteria cr02 = ss.createCriteria(AbsoluteRiskFemale.class);
                        cr02.add(Restrictions.eq("foptionid", agefac));
                        cr02.setProjection(Projections.max("violet"));
                        if (cr02.uniqueResult() != null) {
                            chartdata[1] = cr02.uniqueResult().toString();
                        }
                        Criteria cr03 = ss.createCriteria(AbsoluteRiskFemale.class);
                        cr03.add(Restrictions.eq("foptionid", agefac));
                        cr03.setProjection(Projections.max("yellow"));
                        if (cr03.uniqueResult() != null) {
                            chartdata[2] = cr03.uniqueResult().toString();
                        }
                        chartdata[3] = "30";
                    }
                }

            }
            System.out.println("sssss : " + hs.getAttribute("agefactor"));
            Criteria cr = ss.createCriteria(FactorDetails.class);
            ArrayList<FactorDetails> fdlist = (ArrayList<FactorDetails>) cr.list();
            if (fdlist.size() > facindex) {
                FactorDetails factor = fdlist.get(facindex);

                Criteria cr1 = ss.createCriteria(FactorOption.class);
                cr1.add(Restrictions.eq("factorId", factor));
                ArrayList<FactorOption> folist = (ArrayList<FactorOption>) cr1.list();
                if (folist.size() > 0) {
                    request.setAttribute("folist", folist);
                }

                //                    metervalue = metervalue + 3;
                hs.setAttribute("metervalue", metervalue);
                hs.setAttribute("rmetervalue", rmetervalue);
                hs.setAttribute("points", points);
                hs.setAttribute("finalans", finalans);
                hs.setAttribute("chartdata", chartdata);
                request.setAttribute("factor", factor);
                request.setAttribute("facindex", facindex);

            } else {
                //                    Save In database final ans
                ArrayList<PatientfactorAnswer> save = (ArrayList<PatientfactorAnswer>) hs
                        .getAttribute("finalans");
                Calculationmeteredata cm = new Calculationmeteredata();

                cm.setFinalpoints((Integer) hs.getAttribute("points"));
                cm.setMetervalue((Integer) hs.getAttribute("metervalue"));
                cm.setRmetervalue((Double) hs.getAttribute("rmetervalue"));
                cm.setDate(new Date().toString());
                cm.setPId(p1);

                ss.save(cm);
                if (cm.getCalculationmeteredataId() != null) {
                    for (PatientfactorAnswer pans : save) {
                        pans.setCalculationmeteredataId(cm);
                        ss.save(pans);
                    }
                }
                tr.commit();
                RequestDispatcher rd = request.getRequestDispatcher(
                        "systemgeneratedreport?calcid=" + cm.getCalculationmeteredataId());
                rd.forward(request, response);
            }

            tr.commit();
            RequestDispatcher rd = request.getRequestDispatcher("heartattack_calculater.jsp");
            rd.forward(request, response);
        } else {
            tr.commit();
            RequestDispatcher rd = request.getRequestDispatcher("login.jsp");
            rd.forward(request, response);
        }

    }
}