List of usage examples for org.springframework.transaction.support DefaultTransactionDefinition setIsolationLevel
public final void setIsolationLevel(int isolationLevel)
From source file:com.krawler.spring.hrms.rec.job.hrmsRecJobController.java
public ModelAndView editProspect(HttpServletRequest request, HttpServletResponse response) { Date joiningdate = null;//from w ww.ja va 2 s . c om DateFormat formatter; formatter = new SimpleDateFormat("MM/dd/yyyy"); KwlReturnObject result = null; JSONObject jobj1 = new JSONObject(); String appnames = ""; //Create transaction DefaultTransactionDefinition def = new DefaultTransactionDefinition(); def.setName("JE_Tx"); def.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRED); def.setIsolationLevel(TransactionDefinition.ISOLATION_READ_UNCOMMITTED); TransactionStatus status = txnManager.getTransaction(def); try { String[] ids = request.getParameterValues("ids"); String[] cnames = request.getParameterValues("cnames"); String[] positionids = request.getParameterValues("positionids"); String applicantStatus = request.getParameter("selected"); HashMap<String, Object> requestParams = new HashMap<String, Object>(); HashMap<String, Object> appParams = new HashMap<String, Object>(); for (int i = 0; i < ids.length; i++) { requestParams.clear(); requestParams.put("positionid", positionids[i]); requestParams.put("primary", true); result = hrmsRecJobDAOObj.getPositionmain(requestParams); Positionmain position = null; if (StringUtil.checkResultobjList(result)) { position = (Positionmain) result.getEntityList().get(0); } requestParams.clear(); requestParams.put("id", ids[i]); requestParams.put("primary", true); result = hrmsRecJobDAOObj.getPositionstatus(requestParams); appParams.put("id", ids[i]); Allapplications appl = null; if (StringUtil.checkResultobjList(result)) { appl = (Allapplications) result.getEntityList().get(0); } // Allapplications appl = (Allapplications) session.load(Allapplications.class, ids[i]); // Positionmain position = (Positionmain) session.load(Positionmain.class, positionids[i]); if (StringUtil.isNullOrEmpty(request.getParameter("callback")) == false) { appParams.put("callback", request.getParameter("callback")); // appl.setCallback((MasterData) session.load(MasterData.class, request.getParameter("callback"))); } if (StringUtil.isNullOrEmpty(applicantStatus)) { } else { // appl.setStatus(request.getParameter("status")); appParams.put("status", applicantStatus); if (applicantStatus.equalsIgnoreCase("Rejected")) { if (appl.getApplicationflag() == 1 && position.getPositionsfilled() > 0) { requestParams.clear(); requestParams.put("positionid", positionids[i]); requestParams.put("positionsfilled", position.getPositionsfilled() - 1); requestParams.put("delflag", 0); hrmsRecJobDAOObj.updatePositionmain(requestParams); // position.setPositionsfilled(position.getPositionsfilled()-1); // position.setDelflag(0); // session.update(position); } appParams.put("applicationflag", 2); appParams.put("rejectedbefore", 1); // appl.setApplicationflag(2); // appl.setRejectedbefore(1); } else if (applicantStatus.equalsIgnoreCase("Selected")) { joiningdate = (Date) formatter.parse(request.getParameter("joiningdate")); if (appl.getApplydate() != null && joiningdate != null && appl.getApplydate().compareTo(joiningdate) < 0) { // appl.setApplicationflag(1); appParams.put("applicationflag", 1); if (Boolean.parseBoolean(request.getParameter("changeselected"))) { requestParams.clear(); requestParams.put("positionid", positionids[i]); if (position.getNoofpos() >= position.getPositionsfilled() + 1) { if (position.getNoofpos() == position.getPositionsfilled() + 1) { requestParams.put("delflag", 3); // position.setDelflag(3); } // position.setPositionsfilled(position.getPositionsfilled() + 1); requestParams.put("positionsfilled", position.getPositionsfilled() + 1); } // session.update(position); hrmsRecJobDAOObj.updatePositionmain(requestParams); } if (!StringUtil.isNullOrEmpty(request.getParameter("joiningdate"))) { joiningdate = (Date) formatter.parse(request.getParameter("joiningdate")); // appl.setJoiningdate(joiningdate); appParams.put("joiningdate", joiningdate); } } } else { if (appl.getApplicationflag() == 1 && position.getPositionsfilled() >= 0) { requestParams.clear(); // position.setPositionsfilled(position.getPositionsfilled()-1); // position.setDelflag(0); // session.update(position); requestParams.put("positionid", positionids[i]); requestParams.put("positionsfilled", position.getPositionsfilled() - 1); requestParams.put("delflag", 0); hrmsRecJobDAOObj.updatePositionmain(requestParams); } // appl.setApplicationflag(0); appParams.put("applicationflag", 0); } } if (StringUtil.isNullOrEmpty(request.getParameter("rank")) == false) { // appl.setRank((MasterData) session.load(MasterData.class, request.getParameter("rank"))); appParams.put("rank", request.getParameter("rank")); } if (!StringUtil.isNullOrEmpty(request.getParameter("statuscomment"))) { // appl.setStatuscomment(request.getParameter("statuscomment")); appParams.put("statuscomment", request.getParameter("statuscomment")); } String usrnm; if (appl.getEmployee() != null) { usrnm = StringUtil.getFullName(appl.getEmployee()); } else { usrnm = appl.getConfigjobapplicant().getCol1() + " " + appl.getConfigjobapplicant().getCol2(); } // session.update(appl); if (request.getParameter("selected").equals("Selected")) { if (appl.getApplydate() != null && joiningdate != null && appl.getApplydate().compareTo(joiningdate) < 0) { hrmsRecJobDAOObj.addAllapplications(appParams); } else { appnames += (cnames[i] + " ,"); } } else { hrmsRecJobDAOObj.addAllapplications(appParams); } //@@ProfileHandler.insertAuditLog(session, AuditAction.PROSPECT_EDITED, "User " + AuthHandler.getFullName(session, AuthHandler.getUserid(request)) + " has edited prospect of " + usrnm,request); } txnManager.commit(status); if (!appnames.equals("")) { appnames = appnames.substring(0, appnames.length() - 1); } jobj1.put("msg", appnames); jobj1.put("success", true); jobj1.put("valid", true); } catch (Exception ex) { ex.printStackTrace(); txnManager.rollback(status); } finally { return new ModelAndView("jsonView", "model", jobj1.toString()); } }
From source file:com.krawler.spring.hrms.rec.job.hrmsRecJobController.java
public ModelAndView InternalJobpositions(HttpServletRequest request, HttpServletResponse response) { Date date = null;//from ww w.j a v a 2s.com SimpleDateFormat fmt = new SimpleDateFormat("MM/dd/yyyy"); boolean checkflag = true; JSONObject jobj = new JSONObject(); JSONObject jobj1 = new JSONObject(); KwlReturnObject result = null; //Create transaction DefaultTransactionDefinition def = new DefaultTransactionDefinition(); def.setName("JE_Tx"); def.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRED); def.setIsolationLevel(TransactionDefinition.ISOLATION_READ_UNCOMMITTED); TransactionStatus status = txnManager.getTransaction(def); try { HashMap<String, Object> requestParams = new HashMap<String, Object>(); String companyid = sessionHandlerImplObj.getCompanyid(request); Company company = (Company) kwlCommonTablesDAOObj.getObject("com.krawler.common.admin.Company", companyid); if (StringUtil.isNullOrEmpty(request.getParameter("posid"))) { ArrayList<String> name = new ArrayList<String>(); ArrayList<Object> value = new ArrayList<Object>(); name.add("position.id"); value.add(request.getParameter("position")); name.add("department.id"); value.add(request.getParameter("department")); name.add("jobtype"); value.add(request.getParameter("jobtype")); name.add("!delflag"); value.add(1); requestParams.clear(); requestParams.put("filter_names", name); requestParams.put("filter_values", value); result = hrmsRecJobDAOObj.getPositionmain(requestParams); if (!result.getEntityList().isEmpty()) checkflag = false; if (checkflag) { requestParams = new HashMap<String, Object>(); requestParams.put("masterid", request.getParameter("position")); requestParams.put("companyid", sessionHandlerImplObj.getCompanyid(request)); result = hrmsCommonDAOObj.getMasterData(requestParams); MasterData md = null; if (result.getEntityList() != null && result.getEntityList().size() > 0) md = (MasterData) result.getEntityList().get(0); requestParams = new HashMap<String, Object>(); requestParams.put("masterid", request.getParameter("department")); requestParams.put("companyid", sessionHandlerImplObj.getCompanyid(request)); result = hrmsCommonDAOObj.getMasterData(requestParams); MasterData dept = null; if (result.getEntityList() != null && result.getEntityList().size() > 0) dept = (MasterData) result.getEntityList().get(0); requestParams = new HashMap<String, Object>(); requestParams.put("empid", request.getParameter("manager")); result = hrmsCommonDAOObj.getUserDetailsbyUserid(requestParams); User man = null; if (result.getEntityList() != null && result.getEntityList().size() > 0) man = (User) result.getEntityList().get(0); date = (Date) fmt.parse(request.getParameter("startdate")); requestParams = new HashMap<String, Object>(); requestParams.put("empid", sessionHandlerImplObj.getUserid(request)); result = hrmsCommonDAOObj.getUserDetailsbyUserid(requestParams); User createdby = null; if (result.getEntityList() != null && result.getEntityList().size() > 0) createdby = (User) result.getEntityList().get(0); requestParams = new HashMap<String, Object>(); requestParams.put("startdate", request.getParameter("startdate")); requestParams.put("enddate", request.getParameter("enddate")); requestParams.put("position", md); requestParams.put("details", request.getParameter("details")); requestParams.put("jobtype", request.getParameter("jobtype")); requestParams.put("jobidwthformat", Integer.parseInt(request.getParameter("jobid"))); HashMap<String, Object> requestParams1 = new HashMap<String, Object>(); requestParams1.put("companyid", sessionHandlerImplObj.getCompanyid(request)); requestParams1.put("jobid", request.getParameter("jobid")); requestParams1.put("jobidformat", request.getParameter("jobidformat")); requestParams.put("jobid", profileHandlerDAOObj.getJobIdFormatEdit(requestParams1)); requestParams.put("delflag", 0); requestParams.put("company", company); requestParams.put("manager", man); requestParams.put("departmentid", dept); requestParams.put("noofpos", Integer.parseInt(request.getParameter("nopos"))); requestParams.put("createdby", createdby); requestParams.put("positionsfilled", 0); hrmsRecJobDAOObj.setPositionmain(requestParams); jobj.put("message", messageSource.getMessage("hrms.recruitment.Jobpositionaddedsuccessfully", null, "Job position added successfully.", RequestContextUtils.getLocale(request))); } else { jobj.put("message", messageSource.getMessage("hrms.recruitment.Jobpositionalreadypresent", null, "Job position already present.", RequestContextUtils.getLocale(request))); } } else { //Positionmain posmain = (Positionmain) session.load(Positionmain.class, request.getParameter("posid")); requestParams = new HashMap<String, Object>(); requestParams.put("empid", request.getParameter("manager")); result = hrmsCommonDAOObj.getUserDetailsbyUserid(requestParams); User man = null; if (result.getEntityList() != null && result.getEntityList().size() > 0) man = (User) result.getEntityList().get(0); // requestParams = new HashMap<String, Object>(); // requestParams.put("positionid",request.getParameter("posid")); ArrayList<String> name = new ArrayList<String>(); ArrayList<Object> value = new ArrayList<Object>(); name.add("positionid"); value.add(request.getParameter("posid")); requestParams.clear(); requestParams.put("filter_names", name); requestParams.put("filter_values", value); result = hrmsRecJobDAOObj.getPositionmain(requestParams); Positionmain posmain = null; requestParams = new HashMap<String, Object>(); requestParams.put("positionid", request.getParameter("posid")); if (result.getEntityList() != null && result.getEntityList().size() > 0) posmain = (Positionmain) result.getEntityList().get(0); if (request.getParameter("details") != null) { requestParams.put("details", request.getParameter("details")); } if (!StringUtil.isNullOrEmpty(request.getParameter("manager"))) { requestParams.put("manager", man); } if (!StringUtil.isNullOrEmpty(request.getParameter("department"))) { requestParams.put("departmentid", request.getParameter("department")); } if (!StringUtil.isNullOrEmpty(request.getParameter("startdate"))) { //date = (Date) fmt.parse(request.getParameter("startdate")); requestParams.put("startdate", request.getParameter("startdate")); } if (!StringUtil.isNullOrEmpty(request.getParameter("enddate"))) { date = (Date) fmt.parse(request.getParameter("enddate")); if (new Date(fmt.format(new Date())).after(date)) { requestParams.put("delflag", 2); } else { requestParams.put("delflag", 0); } requestParams.put("enddate", request.getParameter("enddate")); } if (!StringUtil.isNullOrEmpty(request.getParameter("nopos"))) { if (posmain.getPositionsfilled() == Integer.parseInt(request.getParameter("nopos"))) { requestParams.put("delflag", 3); } requestParams.put("noofpos", Integer.parseInt(request.getParameter("nopos"))); } if (!StringUtil.isNullOrEmpty(request.getParameter("jobshift"))) { requestParams.put("jobshift", request.getParameter("jobshift")); } if (!StringUtil.isNullOrEmpty(request.getParameter("location"))) { requestParams.put("location", request.getParameter("location")); } if (!StringUtil.isNullOrEmpty(request.getParameter("relocation"))) { requestParams.put("relocation", request.getParameter("relocation")); } if (!StringUtil.isNullOrEmpty(request.getParameter("expmonth"))) { requestParams.put("experiencemonth", Integer.parseInt(request.getParameter("expmonth"))); } if (!StringUtil.isNullOrEmpty(request.getParameter("expyear"))) { requestParams.put("experienceyear", Integer.parseInt(request.getParameter("expyear"))); } if (!StringUtil.isNullOrEmpty(request.getParameter("travel"))) { requestParams.put("travel", request.getParameter("travel")); } result = hrmsRecJobDAOObj.updatePositionmain(requestParams); jobj.put("message", messageSource.getMessage("hrms.recruitment.Jobpositionupdatedsuccessfully", null, "Job position updated successfully.", RequestContextUtils.getLocale(request))); } // ProfileHandler.insertAuditLog(session, // ("Internal".equals(request.getParameter("jobtype")) ? AuditAction.INTERNAL_JOB_ADDED : AuditAction.EXTERNAL_JOB_ADDED), // "User " + AuthHandler.getFullName(session, AuthHandler.getUserid(request)) + " has added " + request.getParameter("jobtype") + " job", request); jobj1.put("valid", true); jobj1.put("data", jobj.toString()); txnManager.commit(status); } catch (ParseException ex) { ex.printStackTrace(); txnManager.rollback(status); } catch (SessionExpiredException ex) { ex.printStackTrace(); txnManager.rollback(status); } catch (JSONException ex) { ex.printStackTrace(); txnManager.rollback(status); } catch (Exception e) { e.printStackTrace(); txnManager.rollback(status); } finally { return new ModelAndView("jsonView", "model", jobj1.toString()); } }
From source file:com.krawler.spring.hrms.rec.job.hrmsRecJobController.java
public ModelAndView scheduleinterview(HttpServletRequest request, HttpServletResponse response) { Date date1;/*from w w w . j a v a 2s. c o m*/ DateFormat formatter; JSONObject jobj = new JSONObject(); String interviewdate = ""; //boolean reflag=false; String htmlmsg = ""; String pmsg = ""; String interviewsub = ""; KwlReturnObject result = null, recruitresult = null; //Create transaction DefaultTransactionDefinition def = new DefaultTransactionDefinition(); def.setName("JE_Tx"); def.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRED); def.setIsolationLevel(TransactionDefinition.ISOLATION_READ_UNCOMMITTED); TransactionStatus status = txnManager.getTransaction(def); try { HashMap<String, Object> requestParams = new HashMap<String, Object>(); String interviewtime = request.getParameter("interviewtime"); String location = request.getParameter("interviewplace"); formatter = new SimpleDateFormat("MM/dd/yyyy"); // Company cmp=(Company) session.get(Company.class,AuthHandler.getCompanyid(request)); requestParams.put("companyid", sessionHandlerImplObj.getCompanyid(request)); result = profileHandlerDAOObj.getCompanyid(requestParams); Company cmp = null; if (StringUtil.checkResultobjList(result)) { cmp = (Company) result.getEntityList().get(0); } date1 = (Date) formatter.parse(request.getParameter("interviewdt")); //interviewdate=(AuthHandler.getUserDateFormatter(request,session).format(date1)); requestParams.clear(); requestParams.put("request", request); interviewdate = request.getParameter("interviewdt"); Allapplications allapl = null; String[] ids = request.getParameterValues("ids"); String[] emailids = new String[ids.length]; String[] Resumeids = new String[ids.length]; String[] jobs = new String[ids.length]; String[] applicant = new String[ids.length]; Boolean[] reflag = new Boolean[ids.length]; for (int i = 0; i < ids.length; i++) { requestParams.clear(); requestParams.put("id", ids[i]); requestParams.put("primary", true); result = hrmsRecJobDAOObj.getPositionstatus(requestParams); allapl = (Allapplications) result.getEntityList().get(0); if (allapl.getStatus().equalsIgnoreCase("In Process")) { reflag[i] = true; } else { reflag[i] = false; } requestParams.clear(); requestParams.put("id", ids[i]); requestParams.put("status", "In Process"); requestParams.put("interviewdate", date1); requestParams.put("interviewtime", interviewtime); requestParams.put("interviewplace", location); requestParams.put("contactperson", request.getParameter("contactperson")); requestParams.put("interviewcomment", request.getParameter("interviewcomment")); //set rid to recruiter table and remove recruiter column from allapp requestParams.put("recruiter", request.getParameter("rid")); result = hrmsRecJobDAOObj.addAllapplications(requestParams); if (StringUtil.checkResultobjList(result)) { allapl = (Allapplications) result.getEntityList().get(0); requestParams.clear(); String[] Recruiterids = request.getParameter("rid").split(","); requestParams.put("Allapplication", allapl.getId()); boolean success = hrmsRecJobDAOObj.deleteRecruiters(requestParams); requestParams.put("Delflag", 0); for (int j = 0; j < Recruiterids.length && success; j++) { requestParams.put("Recruit", Recruiterids[j]); recruitresult = hrmsRecJobDAOObj.setRecruiters(requestParams); } } jobs[i] = (allapl.getPosition().getPosition().getValue() + " [" + allapl.getPosition().getJobid() + "] "); if (Integer.parseInt(request.getParameter("employeetype")) == 1) { emailids[i] = allapl.getEmployee().getEmailID(); applicant[i] = (allapl.getEmployee().getFirstName() + " " + allapl.getEmployee().getLastName()); } else { emailids[i] = allapl.getConfigjobapplicant().getCol3(); applicant[i] = (allapl.getConfigjobapplicant().getCol1() + " " + allapl.getConfigjobapplicant().getCol2()); Resumeids[i] = allapl.getConfigjobapplicant().getCol5(); } String usrnm; if (allapl.getEmployee() != null) { usrnm = StringUtil.getFullName(allapl.getEmployee()); } else { usrnm = allapl.getConfigjobapplicant().getCol1() + " " + allapl.getConfigjobapplicant().getCol2(); } //@@ProfileHandler.insertAuditLog(session, AuditAction.INTERVIEW_SCHEDULED, "User " + AuthHandler.getFullName(session, AuthHandler.getUserid(request)) + " has scheduled interview for " + usrnm + " on "+ interviewdate + " at " + allapl.getInterviewplace(),request); } // User usr=(User) session.get(User.class,AuthHandler.getUserid(request)); Useraccount ua = (Useraccount) kwlCommonTablesDAOObj.getObject("com.krawler.common.admin.Useraccount", sessionHandlerImplObj.getUserid(request)); User usr = ua.getUser(); if (!StringUtil.isNullOrEmpty(request.getParameter("mail"))) { for (int j = 0; j < emailids.length; j++) { if (reflag[j]) { pmsg = String.format(HrmsMsgs.rescheduleinterviewPlnmsg, applicant[j], jobs[j], cmp.getCompanyName(), interviewdate, interviewtime, location, usr.getContactNumber(), usr.getEmailID(), usr.getFirstName() + " " + usr.getLastName(), ua.getDesignationid() != null ? ua.getDesignationid().getValue() : " ", cmp.getCompanyName()); htmlmsg = String.format(HrmsMsgs.rescheduleinterviewHTMLmsg, applicant[j], jobs[j], cmp.getCompanyName(), interviewdate, interviewtime, location, usr.getContactNumber(), usr.getEmailID(), usr.getFirstName() + " " + usr.getLastName(), ua.getDesignationid() != null ? ua.getDesignationid().getValue() : " ", cmp.getCompanyName()); interviewsub = String.format(HrmsMsgs.rescheduleinterviewSubject, allapl.getPosition().getJobid(), allapl.getPosition().getPosition().getValue(), cmp.getCompanyName()); try { SendMailHandler.postMail(new String[] { emailids[j] }, interviewsub, htmlmsg, pmsg, usr.getEmailID()); } catch (MessagingException e) { e.printStackTrace(); } } else { pmsg = String.format(HrmsMsgs.interviewPlnmsg, jobs[j], interviewdate, interviewtime, location); htmlmsg = String.format(HrmsMsgs.interviewHTMLmsg, applicant[j], jobs[j], cmp.getCompanyName(), interviewdate, interviewtime, location, usr.getContactNumber(), usr.getEmailID(), usr.getFirstName() + " " + usr.getLastName(), ua.getDesignationid() != null ? ua.getDesignationid().getValue() : " ", cmp.getCompanyName()); interviewsub = String.format(HrmsMsgs.interviewSubject, allapl.getPosition().getJobid(), allapl.getPosition().getPosition().getValue(), cmp.getCompanyName()); try { SendMailHandler.postMail(new String[] { emailids[j] }, interviewsub, htmlmsg, pmsg, usr.getEmailID()); } catch (MessagingException e) { e.printStackTrace(); } } ArrayList params = new ArrayList(); params.add(allapl.getId()); ArrayList filter_names = new ArrayList(); filter_names.add("allapplication.id"); requestParams.clear(); requestParams.put("filter_names", filter_names); requestParams.put("filter_values", params); recruitresult = hrmsRecJobDAOObj.getRecruiters(requestParams); if (StringUtil.checkResultobjList(recruitresult)) { List recruiterlist = recruitresult.getEntityList(); for (int k = 0; k < recruiterlist.size(); k++) { Recruiter r = (Recruiter) recruiterlist.get(k); String interviewer = r.getRecruit().getFirstName() + " " + r.getRecruit().getLastName(); String intpmsg = String.format(HrmsMsgs.interviewinvitePlnmsg, interviewer, jobs[j], interviewdate, interviewtime, location); String inthtmlmsg = String.format(HrmsMsgs.interviewinviteHTMLmsg, interviewer, jobs[j], interviewdate, interviewtime, location, usr.getFirstName() + " " + usr.getLastName(), ua.getDesignationid() != null ? ua.getDesignationid().getValue() : " ", cmp.getCompanyName()); String interviewinvitesub = String.format(HrmsMsgs.interviewinviteSubject, allapl.getPosition().getJobid(), allapl.getPosition().getPosition().getValue(), cmp.getCompanyName()); if (StringUtil.isNullOrEmpty(Resumeids[j])) { try { SendMailHandler.postMail(new String[] { r.getRecruit().getEmailID() }, interviewinvitesub, inthtmlmsg, intpmsg, usr.getEmailID()); } catch (MessagingException e) { e.printStackTrace(); } } else { hrmsDocumentController hdc = new hrmsDocumentController(); KwlReturnObject kmsg = hrmsExtApplDocsDAOObj.downloadDocument(Resumeids[j]); HashMap ht = hdc.getDocInfo(kmsg, storageHandlerImplObj); try { if (ht != null && ht.containsKey("filename")) { SendMailHandler.postMail(new String[] { r.getRecruit().getEmailID() }, interviewinvitesub, inthtmlmsg, intpmsg, usr.getEmailID(), new String[] { (String) ht.get("attachment"), (String) ht.get("filename") }); } else { SendMailHandler.postMail(new String[] { r.getRecruit().getEmailID() }, interviewinvitesub, inthtmlmsg, intpmsg, usr.getEmailID()); } } catch (MessagingException e) { e.printStackTrace(); } } } } } } if (result.isSuccessFlag()) { String interviewersname = ""; String delimiter = ","; String[] temp = request.getParameter("rid").split(delimiter); for (int i = 0; i < temp.length; i++) { interviewersname += profileHandlerDAOObj.getUserFullName(temp[i]); if (temp.length > i + 1) interviewersname += ", "; } for (int i = 0; i < ids.length; i++) auditTrailDAOObj.insertAuditLog(AuditAction.INTERVIEW_SCHEDULED, "User " + profileHandlerDAOObj.getUserFullName(sessionHandlerImplObj.getUserid(request)) + " has scheduled interview for applicant " + request.getParameterValues("cname")[i] + ". Interviewers are " + interviewersname, request, "0"); } jobj.put("success", "true"); txnManager.commit(status); } catch (Exception ex) { ex.printStackTrace(); txnManager.rollback(status); } finally { return new ModelAndView("jsonView", "model", ""); } }
From source file:com.krawler.spring.hrms.rec.job.hrmsRecJobController.java
public ModelAndView createapplicantFunction(HttpServletRequest request, HttpServletResponse response) { JSONObject jobj = new JSONObject(); JSONObject jobj1 = new JSONObject(); List list = null;//from w w w. jav a 2 s . c o m SimpleDateFormat fmt = new SimpleDateFormat("yyyy-MM-dd"); KwlReturnObject result = null; //Create transaction DefaultTransactionDefinition def = new DefaultTransactionDefinition(); def.setName("JE_Tx"); def.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRED); def.setIsolationLevel(TransactionDefinition.ISOLATION_READ_UNCOMMITTED); TransactionStatus status = txnManager.getTransaction(def); try { HashMap<String, Object> requestParams = new HashMap<String, Object>(); ArrayList filter_names = new ArrayList(), filter_values = new ArrayList(); String pwd = request.getParameter("p"); String username = request.getParameter("u"); String fname = request.getParameter("fname"); String lname = request.getParameter("lname"); String cmpid = sessionHandlerImplObj.getCompanyid(request); if (StringUtil.isNullOrEmpty(request.getParameter("update"))) { filter_names.add("Col3"); filter_values.add(request.getParameter("e")); filter_names.add("deleted"); filter_values.add(false); filter_names.add("company.companyID"); filter_values.add(cmpid); requestParams.put("filter_names", filter_names); requestParams.put("filter_values", filter_values); result = hrmsRecJobDAOObj.getConfigJobApplicant(requestParams); list = result.getEntityList(); if (list.size() == 0) { Company cmp = (Company) kwlCommonTablesDAOObj.getObject("com.krawler.common.admin.Company", cmpid); requestParams.clear(); requestParams.put("Col1", fname); requestParams.put("Col2", lname); requestParams.put("Col3", request.getParameter("e")); //requestParams.put("Address1", request.getParameter("addr")); requestParams.put("Col4", request.getParameter("contact")); // requestParams.put("Username", username); // requestParams.put("Password", authHandler.getSHA1(pwd)); // requestParams.put("Status", 0); requestParams.put("Company", cmpid); result = hrmsRecJobDAOObj.addConfigRecruitmentData(requestParams); if (result.isSuccessFlag()) { /*String uri = URLUtil.getPageURL(request, Links.loginpagewthFull,cmp.getSubDomain())+"applicantLogin.html"; String pmsg = String.format(KWLErrorMsgs.msgMailInvite, fname, "Demo", username, pwd, uri, "Demo"); String htmlmsg = String.format(HrmsMsgs.msgMailInviteUsernamePassword, fname, profileHandlerDAOObj.getUserFullName( sessionHandlerImplObj.getUserid(request)), sessionHandlerImplObj.getCompanyName(request), username, pwd, uri, uri, ""); try { SendMailHandler.postMail(new String[]{request.getParameter("e")}, "["+messageSource.getMessage("hrms.common.deskera", null, RequestContextUtils.getLocale(request))+"] "+messageSource.getMessage("hrms.common.welcome.deskera.hrms", null, RequestContextUtils.getLocale(request)), htmlmsg, pmsg, "admin.hrms@mailinator.com"); } catch (MessagingException e) { e.printStackTrace(); }*/ jobj.put("msg", messageSource.getMessage("hrms.common.Applicantcreatedsuccessfully", null, RequestContextUtils.getLocale(request))); jobj.put("type", messageSource.getMessage("hrms.common.success", null, RequestContextUtils.getLocale(request))); //@@ProfileHandler.insertAuditLog(session, AuditAction.CREATE_APPLICANT, "User " + AuthHandler.getFullName(session, AuthHandler.getUserid(request)) + " has created new applicant " + jobapp.getFirstname() + " " + jobapp.getLastname(),request); auditTrailDAOObj.insertAuditLog(AuditAction.CREATE_APPLICANT, "User " + profileHandlerDAOObj .getUserFullName(sessionHandlerImplObj.getUserid(request)) + " has created new applicant " + fname + " " + lname, request, "0"); } else { jobj.put("msg", messageSource.getMessage("hrms.recruitment.error.occurred.creating.applicant", null, RequestContextUtils.getLocale(request))); jobj.put("type", messageSource.getMessage("hrms.common.error", null, RequestContextUtils.getLocale(request))); } } else { jobj.put("msg", messageSource.getMessage("hrms.common.email.already.exists", null, RequestContextUtils.getLocale(request))); jobj.put("type", messageSource.getMessage("hrms.common.warning", null, RequestContextUtils.getLocale(request))); } } else { requestParams.put("primary", true); requestParams.put("applicantid", request.getParameter("profileid")); result = hrmsRecJobDAOObj.getConfigJobApplicant(requestParams); list = result.getEntityList(); if (!list.isEmpty()) { String jsondata1 = request.getParameter("jsondata1"); String jsondata2 = request.getParameter("jsondata2"); String jsondata3 = request.getParameter("jsondata3"); String jsondata4 = request.getParameter("jsondata4"); String jsondata5 = request.getParameter("jsondata5"); requestParams.clear(); requestParams.put("Applicantid", request.getParameter("profileid")); if (jsondata1.length() > 0) { jobj = new JSONObject(jsondata1); requestParams.put("Title", jobj.getString("title")); requestParams.put("Firstname", jobj.getString("firstname")); requestParams.put("Lastname", jobj.getString("lastname")); requestParams.put("Email", jobj.getString("email")); requestParams.put("Otheremail", jobj.getString("otheremail")); requestParams.put("Birthdate", (Date) fmt.parse(jobj.getString("birthdate"))); } if (jsondata2.length() > 0) { jobj = new JSONObject(jsondata2); requestParams.put("Contactno", jobj.getString("contactno")); requestParams.put("Mobileno", jobj.getString("mobileno")); requestParams.put("City", jobj.getString("city")); requestParams.put("State", jobj.getString("state")); requestParams.put("Countryid", jobj.getString("country")); requestParams.put("Address1", jobj.getString("address1")); requestParams.put("Address2", jobj.getString("address2")); } if (jsondata3.length() > 0) { jobj = new JSONObject(jsondata3); if (StringUtil.isNullOrEmpty(jobj.getString("graddegree")) == false) { requestParams.put("Graddegree", jobj.getString("graddegree")); } if (StringUtil.isNullOrEmpty(jobj.getString("gradspecilization")) == false) { requestParams.put("Gradspecialization", jobj.getString("gradspecilization")); } if (StringUtil.isNullOrEmpty(jobj.getString("gradcollege")) == false) { requestParams.put("Gradcollege", jobj.getString("gradcollege")); } if (StringUtil.isNullOrEmpty(jobj.getString("graduniversity")) == false) { requestParams.put("Graduniversity", jobj.getString("graduniversity")); } if (StringUtil.isNullOrEmpty(jobj.getString("gradepercent")) == false) { requestParams.put("Gradpercent", jobj.getString("gradepercent")); } if (StringUtil.isNullOrEmpty(jobj.getString("gradpassdate")) == false) { requestParams.put("Gradpassdate", (Date) fmt.parse(jobj.getString("gradpassdate"))); } if (StringUtil.isNullOrEmpty(jobj.getString("pgqualification")) == false) { requestParams.put("Pgqualification", jobj.getString("pgqualification")); } if (StringUtil.isNullOrEmpty(jobj.getString("pgspecialization")) == false) { requestParams.put("Pgspecialization", jobj.getString("pgspecialization")); } if (StringUtil.isNullOrEmpty(jobj.getString("pgcollege")) == false) { requestParams.put("Pgcollege", jobj.getString("pgcollege")); } if (StringUtil.isNullOrEmpty(jobj.getString("pguniversity")) == false) { requestParams.put("Pguniversity", jobj.getString("pguniversity")); } if (StringUtil.isNullOrEmpty(jobj.getString("pgpercent")) == false) { requestParams.put("Pgpercent", jobj.getString("pgpercent")); } if (StringUtil.isNullOrEmpty(jobj.getString("pgpassdate")) == false) { requestParams.put("Pgpassdate", (Date) fmt.parse(jobj.getString("pgpassdate"))); } if (StringUtil.isNullOrEmpty(jobj.getString("othername")) == false) { requestParams.put("Othername", jobj.getString("othername")); } if (StringUtil.isNullOrEmpty(jobj.getString("otherqualification")) == false) { requestParams.put("Otherqualification", jobj.getString("otherqualification")); } if (StringUtil.isNullOrEmpty(jobj.getString("otherpercent")) == false) { requestParams.put("Otherpercent", jobj.getString("otherpercent")); } if (StringUtil.isNullOrEmpty(jobj.getString("otherdetails")) == false) { requestParams.put("Otherdetails", jobj.getString("otherdetails")); } if (StringUtil.isNullOrEmpty(jobj.getString("otherpassdate")) == false) { requestParams.put("Otherpassdate", (Date) fmt.parse(jobj.getString("otherpassdate"))); } } if (jsondata4.length() > 0) { jobj = new JSONObject(jsondata4); if (jobj.getString("experiencemonth").equals("")) { requestParams.put("Experiencemonth", 0); } else { requestParams.put("Experiencemonth", Integer.parseInt(jobj.getString("experiencemonth"))); } if (StringUtil.isNullOrEmpty(jobj.getString("experienceyear")) == false) { requestParams.put("Experienceyear", Integer.parseInt(jobj.getString("experienceyear"))); } if (StringUtil.isNullOrEmpty(jobj.getString("functionalexpertise")) == false) { requestParams.put("Functionalexpertise", jobj.getString("functionalexpertise")); } if (StringUtil.isNullOrEmpty(jobj.getString("currentindustry")) == false) { requestParams.put("Currentindustry", jobj.getString("currentindustry")); } if (StringUtil.isNullOrEmpty(jobj.getString("currentorganization")) == false) { requestParams.put("Currentorganization", jobj.getString("currentorganization")); } if (StringUtil.isNullOrEmpty(jobj.getString("currentdesignation")) == false) { requestParams.put("Currentdesignation", jobj.getString("currentdesignation")); } if (StringUtil.isNullOrEmpty(jobj.getString("grosssalary")) == false) { requestParams.put("Grosssalary", Integer.parseInt(jobj.getString("grosssalary"))); } requestParams.put("Expectedsalary", Integer.parseInt(jobj.getString("expectedsalary"))); } if (jsondata5.length() > 0) { jobj = new JSONObject(jsondata5); requestParams.put("Keyskills", jobj.getString("keyskills")); if (StringUtil.isNullOrEmpty(jobj.getString("category")) == false) { requestParams.put("Category", jobj.getString("category")); } if (StringUtil.isNullOrEmpty(jobj.getString("filepath")) == false) { requestParams.put("Filepath", jobj.getString("filepath")); } if (StringUtil.isNullOrEmpty(jobj.getString("companyrelative")) == false) { requestParams.put("Companyrelative", jobj.getString("companyrelative")); } if (StringUtil.isNullOrEmpty(jobj.getString("appearedbefore")) == false) { requestParams.put("Appearedbefore", jobj.getString("appearedbefore")); if (jobj.getString("appearedbefore").equalsIgnoreCase("yes")) { if (StringUtil.isNullOrEmpty(jobj.getString("interviewplace")) == false) { requestParams.put("Interviewplace", jobj.getString("interviewplace")); } if (StringUtil.isNullOrEmpty(jobj.getString("interviewdate")) == false) { requestParams.put("Interviewdate", (Date) fmt.parse(jobj.getString("interviewdate"))); } if (StringUtil.isNullOrEmpty(jobj.getString("interviewposition")) == false) { requestParams.put("Interviewposition", jobj.getString("interviewposition")); } } } requestParams.put("Interviewlocation", jobj.getString("interviewlocation")); result = hrmsRecJobDAOObj.setJobApplicant(requestParams); } // insertConfigData(request, "Recruitment", request.getParameter("profileid"),sessionHandlerImplObj.getCompanyid(request)); hrmsCommonDAOObj.insertConfigData(request, "Recruitment", request.getParameter("profileid"), sessionHandlerImplObj.getCompanyid(request)); } if (result.isSuccessFlag()) { jobj.put("msg", messageSource.getMessage("hrms.recruitment.applicant.updated.successfully", null, RequestContextUtils.getLocale(request))); jobj.put("type", messageSource.getMessage("hrms.common.success", null, RequestContextUtils.getLocale(request))); } else { jobj.put("msg", messageSource.getMessage("hrms.recruitment.error.occurred.updating.applicant", null, RequestContextUtils.getLocale(request))); jobj.put("type", messageSource.getMessage("hrms.common.error", null, RequestContextUtils.getLocale(request))); } } jobj1.put("data", jobj.toString()); jobj1.put("valid", true); txnManager.commit(status); } catch (Exception e) { e.printStackTrace(); txnManager.rollback(status); } finally { return new ModelAndView("jsonView", "model", jobj1.toString()); } }
From source file:org.apache.ctakes.ytex.uima.mapper.DocumentMapperServiceImpl.java
public Integer saveDocument(final JCas jcas, final String analysisBatch, final boolean bStoreDocText, final boolean bStoreCAS, final boolean bInsertAnnotationContainmentLinks, final Set<String> setTypesToIgnore) { if (log.isTraceEnabled()) log.trace("begin saveDocument"); // communicate options to mappers using thread local variable final DefaultTransactionDefinition txDef = new DefaultTransactionDefinition( TransactionDefinition.PROPAGATION_REQUIRES_NEW); txDef.setIsolationLevel("orcl".equals(this.dbType) ? TransactionDefinition.ISOLATION_READ_COMMITTED : TransactionDefinition.ISOLATION_READ_UNCOMMITTED); final TransactionTemplate txTemplate = new TransactionTemplate(this.getTransactionManager(), txDef); final int documentId = txTemplate.execute(new TransactionCallback<Integer>() { @Override/* w w w .j a v a 2 s . c o m*/ public Integer doInTransaction(TransactionStatus arg0) { Document doc = createDocument(jcas, analysisBatch, bStoreDocText, bStoreCAS); sessionFactory.getCurrentSession().save(doc); // make sure the document has been saved getSessionFactory().getCurrentSession().flush(); saveAnnotationsHib(jcas, bInsertAnnotationContainmentLinks, setTypesToIgnore, doc); extractAndSaveDocKey(jcas, doc); return doc.getDocumentID(); } }); if (log.isTraceEnabled()) log.trace("end saveDocument"); return documentId; }
From source file:org.broadleafcommerce.common.util.TransactionUtils.java
public static TransactionStatus createTransaction(String name, int propagationBehavior, int isolationLevel, PlatformTransactionManager transactionManager, boolean isReadOnly) { DefaultTransactionDefinition def = new DefaultTransactionDefinition(); def.setName(name);//from w ww .j a va 2 s .c o m def.setReadOnly(isReadOnly); def.setPropagationBehavior(propagationBehavior); def.setIsolationLevel(isolationLevel); return transactionManager.getTransaction(def); }
From source file:org.broadleafcommerce.common.util.TransactionUtils.java
public static TransactionStatus createTransaction(int propagationBehavior, int isolationLevel, PlatformTransactionManager transactionManager, boolean isReadOnly) { DefaultTransactionDefinition def = new DefaultTransactionDefinition(); def.setReadOnly(isReadOnly);/* ww w. j a v a2 s . c o m*/ def.setPropagationBehavior(propagationBehavior); def.setIsolationLevel(isolationLevel); return transactionManager.getTransaction(def); }
From source file:org.opendatakit.common.persistence.engine.pgres.DatastoreImpl.java
/** * Relation manipulation APIs/* w w w . j a v a 2s . c om*/ */ @Override public void assertRelation(CommonFieldsBase relation, User user) throws ODKDatastoreException { JdbcTemplate jc = getJdbcConnection(); TransactionStatus status = null; try { DefaultTransactionDefinition paramTransactionDefinition = new DefaultTransactionDefinition(); // do serializable read on the information schema... paramTransactionDefinition.setIsolationLevel(DefaultTransactionDefinition.ISOLATION_SERIALIZABLE); paramTransactionDefinition.setReadOnly(true); status = tm.getTransaction(paramTransactionDefinition); // see if relation already is defined and update it with dimensions... if (updateRelation(jc, relation, null)) { // it exists -- we're done! tm.commit(status); status = null; return; } else { tm.commit(status); // Try a new transaction to create the table paramTransactionDefinition.setIsolationLevel(DefaultTransactionDefinition.ISOLATION_SERIALIZABLE); paramTransactionDefinition.setReadOnly(false); status = tm.getTransaction(paramTransactionDefinition); // need to create the table... StringBuilder b = new StringBuilder(); b.append(K_CREATE_TABLE); b.append(K_BQ); b.append(relation.getSchemaName()); b.append(K_BQ); b.append("."); b.append(K_BQ); b.append(relation.getTableName()); b.append(K_BQ); b.append(K_OPEN_PAREN); boolean firstTime = true; for (DataField f : relation.getFieldList()) { if (!firstTime) { b.append(K_CS); } firstTime = false; b.append(K_BQ); b.append(f.getName()); b.append(K_BQ); DataField.DataType type = f.getDataType(); switch (type) { case BINARY: b.append(" BYTEA"); break; case LONG_STRING: b.append(" TEXT");// b.append(" CHARACTER SET utf8"); break; case STRING: b.append(" VARCHAR("); Long len = f.getMaxCharLen(); if (len == null) { len = PersistConsts.DEFAULT_MAX_STRING_LENGTH; } b.append(len.toString()); b.append(K_CLOSE_PAREN); // b.append(" CHARACTER SET utf8"); break; case BOOLEAN: b.append(" BOOLEAN"); break; case INTEGER: Integer int_digits = f.getNumericPrecision(); if (int_digits == null) { int_digits = DEFAULT_INT_NUMERIC_PRECISION; } Integer isSerial = f.getNumericScale(); // logger.warn("********************"); // logger.warn(int_digits + " ---" + isSerial); if (int_digits.compareTo(9) > 0) { if (isSerial != null && isSerial == 1) { b.append(" SERIAL"); continue; // logger.warn("^^^^^^^^^^^^^^^^"); } else { b.append(" BIGINT"); } } else { b.append(" INTEGER"); } break; case DECIMAL: Integer dbl_digits = f.getNumericPrecision(); Integer dbl_fract = f.getNumericScale(); if (dbl_digits == null) { dbl_digits = DEFAULT_DBL_NUMERIC_PRECISION; } if (dbl_fract == null) { dbl_fract = DEFAULT_DBL_NUMERIC_SCALE; } b.append(" DECIMAL("); b.append(dbl_digits.toString()); b.append(K_CS); b.append(dbl_fract.toString()); b.append(K_CLOSE_PAREN); break; case DATETIME: b.append(" TIMESTAMP WITHOUT TIME ZONE"); break; case URI: b.append(" VARCHAR("); len = f.getMaxCharLen(); if (len == null) { len = PersistConsts.URI_STRING_LEN; } b.append(len.toString()); b.append(")");// b.append(" CHARACTER SET utf8"); break; } if (f == relation.primaryKey) { b.append(" UNIQUE "); } if (f.getNullable()) { b.append(" NULL "); } else { b.append(" NOT NULL "); } } b.append(K_CLOSE_PAREN); String createTableStmt = b.toString(); LogFactory.getLog(DatastoreImpl.class).info("Attempting: " + createTableStmt); jc.execute(createTableStmt); LogFactory.getLog(DatastoreImpl.class) .info("create table success (before updateRelation): " + relation.getTableName()); String idx; // create other indicies for (DataField f : relation.getFieldList()) { if ((f.getIndexable() != IndexType.NONE) && (f != relation.primaryKey)) { idx = relation.getTableName() + "_" + shortPrefix(f.getName()); createIndex(jc, relation, idx, f); } } // and update the relation with actual dimensions... updateRelation(jc, relation, createTableStmt); tm.commit(status); } } catch (Exception e) { if (status != null) { tm.rollback(status); } throw new ODKDatastoreException(e); } }
From source file:org.opendatakit.common.persistence.engine.sqlserver.DatastoreImpl.java
/** * Relation manipulation APIs/* w w w .j av a2 s.c o m*/ */ @Override public void assertRelation(CommonFieldsBase relation, User user) throws ODKDatastoreException { JdbcTemplate jc = getJdbcConnection(); TransactionStatus status = null; try { DefaultTransactionDefinition paramTransactionDefinition = new DefaultTransactionDefinition(); // do serializable read on the information schema... paramTransactionDefinition.setIsolationLevel(DefaultTransactionDefinition.ISOLATION_SERIALIZABLE); paramTransactionDefinition.setReadOnly(true); status = tm.getTransaction(paramTransactionDefinition); // see if relation already is defined and update it with dimensions... if (updateRelation(jc, relation, null)) { // it exists -- we're done! tm.commit(status); status = null; return; } else { tm.commit(status); // Try a new transaction to create the table paramTransactionDefinition.setIsolationLevel(DefaultTransactionDefinition.ISOLATION_SERIALIZABLE); paramTransactionDefinition.setReadOnly(false); status = tm.getTransaction(paramTransactionDefinition); // total number of columns must be less than MAX_BIND_PARAMS int countColumns = 0; // need to create the table... StringBuilder b = new StringBuilder(); b.append(K_CREATE_TABLE); b.append(K_BQ); b.append(relation.getSchemaName()); b.append(K_BQ); b.append("."); b.append(K_BQ); b.append(relation.getTableName()); b.append(K_BQ); b.append(K_OPEN_PAREN); boolean firstTime = true; for (DataField f : relation.getFieldList()) { if (!firstTime) { b.append(K_CS); } ++countColumns; firstTime = false; String nullClause; if (f.getNullable()) { nullClause = K_NULL; } else { nullClause = K_NOT_NULL; } b.append(K_BQ); b.append(f.getName()); b.append(K_BQ); DataField.DataType type = f.getDataType(); switch (type) { case BINARY: b.append(" varbinary(max)").append(nullClause); break; case LONG_STRING: b.append(" nvarchar(max)").append(nullClause); break; case STRING: b.append(" nvarchar("); Long len = f.getMaxCharLen(); if (len == null) { len = PersistConsts.DEFAULT_MAX_STRING_LENGTH; } if (len > MAX_IN_ROW_NVARCHAR) { // store value out-of-row b.append("max"); } else { b.append(len.toString()); } b.append(K_CLOSE_PAREN).append(nullClause); break; case BOOLEAN: b.append(" bit").append(nullClause); break; case INTEGER: Integer int_digits = f.getNumericPrecision(); if (int_digits == null) { int_digits = DEFAULT_INT_NUMERIC_PRECISION; } if (int_digits.compareTo(9) > 0) { b.append(" bigint").append(nullClause); } else { b.append(" integer").append(nullClause); } break; case DECIMAL: if (f == relation.primaryKey) { throw new IllegalStateException("cannot use decimal columns as primary keys"); } if (f.isDoublePrecision()) { b.append(" float(53) ").append(nullClause); } else { Integer dbl_digits = f.getNumericPrecision(); Integer dbl_fract = f.getNumericScale(); if (dbl_digits == null) { dbl_digits = DEFAULT_DBL_NUMERIC_PRECISION; } if (dbl_fract == null) { dbl_fract = DEFAULT_DBL_NUMERIC_SCALE; } b.append(" decimal("); b.append(dbl_digits.toString()); b.append(K_CS); b.append(dbl_fract.toString()); b.append(K_CLOSE_PAREN).append(nullClause); } break; case DATETIME: b.append(" datetime2(7)").append(nullClause); break; case URI: b.append(" nvarchar("); len = f.getMaxCharLen(); if (len == null) { len = PersistConsts.URI_STRING_LEN; } b.append(len.toString()); b.append(")").append(nullClause); break; } if (f == relation.primaryKey) { b.append(" PRIMARY KEY NONCLUSTERED "); } } b.append(K_CLOSE_PAREN); if (countColumns > MAX_BIND_PARAMS) { throw new IllegalArgumentException("Table size exceeds bind parameter limit"); } String createTableStmt = b.toString(); LogFactory.getLog(DatastoreImpl.class).info("Attempting: " + createTableStmt); jc.execute(createTableStmt); LogFactory.getLog(DatastoreImpl.class) .info("create table success (before updateRelation): " + relation.getTableName()); boolean alreadyClustered = false; String idx; // create other indicies for (DataField f : relation.getFieldList()) { if ((f.getIndexable() != IndexType.NONE) && (f != relation.primaryKey)) { idx = relation.getTableName() + "_" + shortPrefix(f.getName()); alreadyClustered = createIndex(jc, relation, idx, f, alreadyClustered); } } // and update the relation with actual dimensions... updateRelation(jc, relation, createTableStmt); tm.commit(status); } } catch (Exception e) { if (status != null) { tm.rollback(status); } throw new ODKDatastoreException(e); } }