Commit 8df78967 authored by sjagtap's avatar sjagtap

Sun pharama business component use for multitancancy server

git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@187646 ce508802-f39f-4f6c-b175-0d175dae99d5
parent 4a3ee48c
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>webitm-sod</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
</buildSpec>
<natures>
</natures>
</projectDescription>
package ibase.webitm.ejb.SOD;
import ibase.system.config.ConnDriver;
import ibase.webitm.ejb.ValidatorEJB;
import ibase.webitm.utility.GenericUtility;
import ibase.webitm.utility.ITMException;
import java.rmi.RemoteException;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import javax.ejb.Stateless;
import org.w3c.dom.Document;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
@Stateless
public class SodRiskEJB extends ValidatorEJB implements SodRiskEJBLocal,
SodRiskEJBRemote {
public String wfValData(String currFrmXmlStr, String hdrFrmXmlStr,
String allFrmXmlStr, String objContext, String editFlag,
String xtraParams) throws RemoteException {
System.out.println("In wfValData");
Document currDom = null;
Document hdrDom = null;
Document allDom = null;
String errString = "";
try {
System.out.println("currFrmXmlStr..." + currFrmXmlStr);
System.out.println("hdrFrmXmlStr..." + hdrFrmXmlStr);
System.out.println("allFrmXmlStr..." + allFrmXmlStr);
if ((currFrmXmlStr != null) && (currFrmXmlStr.trim().length() != 0)) {
currDom = parseString(currFrmXmlStr);
}
if ((hdrFrmXmlStr != null) && (hdrFrmXmlStr.trim().length() != 0)) {
hdrDom = parseString(hdrFrmXmlStr);
}
if ((allFrmXmlStr != null) && (allFrmXmlStr.trim().length() != 0)) {
allDom = parseString(allFrmXmlStr);
}
errString = validate(currDom, hdrDom, allDom, objContext, editFlag,
xtraParams);
} catch (Exception e) {
System.out
.println("Exception : [PurcRCPIc][wfValData(String currFrmXmlStr)] : ==>\n"
+ e.getMessage());
}
return errString;
}
public String validate(Document currDom, Document hdrDom, Document allDom,
String objContext, String editFlag, String xtraParams)
throws RemoteException, ITMException {
System.out.println("In validate Data");
GenericUtility genericUtility = GenericUtility.getInstance();
ArrayList errList = new ArrayList();
ArrayList errFields = new ArrayList();
int count = 0;
String errString = "";
String errorType = "";
String errCode = "";
StringBuffer errStringXml = new StringBuffer(
"<?xml version=\"1.0\"?>\r\n<Root><Errors>");
String childNodeName = "";
String sql = "";
int noOfChilds = 0;
ResultSet rs1 = null;
String loginSiteCode = "";
Connection conn = null;
PreparedStatement pstmt1 = null;
int currentFormNo = 0;
int cnt = 0;
ConnDriver connDriver = null;
Node childNode = null;
try {
System.out.println("************xtraParams*************"
+ xtraParams);
connDriver = new ConnDriver();
//Comment by sanket J on 06/JUL/2018 for multitancy server
//conn = connDriver.getConnectDB("DriverITM");
conn = getConnection();
String userId = genericUtility.getValueFromXTRA_PARAMS(xtraParams,
"loginCode");
loginSiteCode = genericUtility.getValueFromXTRA_PARAMS(xtraParams,
"loginSiteCode");
System.out.println("**************loginCode************" + userId);
if ((objContext != null) && (objContext.trim().length() > 0)) {
currentFormNo = Integer.parseInt(objContext);
}
NodeList parentList = currDom.getElementsByTagName("Detail"
+ currentFormNo);
NodeList childList = null;
System.out.println("hdrDom..." + hdrDom);
switch (currentFormNo) {
case 1:
childList = parentList.item(0).getChildNodes();
noOfChilds = childList.getLength();
for (int ctr = 0; ctr < noOfChilds; ctr++) {
childNode = childList.item(ctr);
if (childNode.getNodeType() != 1) {
continue;
}
childNodeName = childNode.getNodeName();
System.out.println("Editflag =" + editFlag);
System.out.println("parentList = " + parentList);
System.out.println("childList = " + childList);
System.out.println("childNodeName: " + childNodeName);
if ("risk_id".equalsIgnoreCase(childNodeName)) {
if (childNode.getFirstChild() == null) {
System.out.println("VTBLKRSKID");
errList.add("VTBLKRSKID");
errFields.add(childNodeName.toLowerCase());
break;
} else {
String risk_id = checkNull(genericUtility
.getColumnValue("risk_id", currDom));
System.out.println("editFlag in risk_id:"
+ editFlag);
if (editFlag.equalsIgnoreCase("A")) {
String sql1 = "SELECT COUNT(*) AS COUNT FROM SOD_RISK WHERE risk_id = ?";
pstmt1 = conn.prepareStatement(sql1);
pstmt1.setString(1, risk_id);
rs1 = pstmt1.executeQuery();
if (rs1.next()) {
count = rs1.getInt("COUNT");
}
System.out.println("Count: " + count);
if (count > 0) {
errList.add("VTINVRSKID");
errFields.add(childNodeName.toLowerCase());
break;
}
System.out.println("risk_id.length(): "
+ risk_id.length());
if (risk_id.length() > 6) {
errList.add("VTINVRSKLT");
errFields.add(childNodeName.toLowerCase());
break;
}
}
}
}
if ("risk_lvl".equalsIgnoreCase(childNodeName)) {
if (childNode.getFirstChild() == null) {
System.out.println("VTBLKRSKLV");
errList.add("VTBLKRSKLV");
errFields.add(childNodeName.toLowerCase());
break;
} else {
String risk_lvl = checkNull(genericUtility
.getColumnValue("risk_lvl", currDom));
String sql1 = "SELECT COUNT(*) AS COUNT FROM GENCODES WHERE FLD_NAME = 'SOD_RISK_LVL' AND MOD_NAME='W_SOD_RISK' AND FLD_VALUE = ? ";
pstmt1 = conn.prepareStatement(sql1);
pstmt1.setString(1, risk_lvl.trim());
rs1 = pstmt1.executeQuery();
if (rs1.next()) {
count = rs1.getInt("COUNT");
}
System.out.println("Count: " + count);
if (count <= 0) {
errList.add("VTINVRSKLV");
errFields.add(childNodeName.toLowerCase());
break;
}
}
}
}
}
int errListSize = errList.size();
cnt = 0;
String errFldName = null;
if ((errList != null) && (errListSize > 0)) {
for (cnt = 0; cnt < errListSize; cnt++) {
errCode = (String) errList.get(cnt);
errFldName = (String) errFields.get(cnt);
errString = getErrorString(errFldName, errCode, userId);
errorType = errorType(conn, errCode);
if (errString.length() > 0) {
String bifurErrString = errString.substring(
errString.indexOf("<Errors>") + 8,
errString.indexOf("<trace>"));
bifurErrString = bifurErrString
+ errString.substring(
errString.indexOf("</trace>") + 8,
errString.indexOf("</Errors>"));
errStringXml.append(bifurErrString);
System.out.println("errStringXml .........."
+ errStringXml);
errString = "";
}
if (errorType.equalsIgnoreCase("E")) {
break;
}
}
errList.clear();
errList = null;
errFields.clear();
errFields = null;
errStringXml.append("</Errors></Root>\r\n");
} else {
errStringXml = new StringBuffer("");
}
errString = errStringXml.toString();
} catch (Exception e) {
System.out.println("Exception in StockTransferGrlIC == >");
e.printStackTrace();
throw new ITMException(e);
} finally {
try {
if (rs1 != null) {
rs1.close();
rs1 = null;
}
if (pstmt1 != null) {
pstmt1.close();
pstmt1 = null;
}
if ((conn != null) && (!conn.isClosed()))
conn.close();
} catch (Exception e) {
System.out.println("Exception :InvBankDtlsIC:wfValData :==>\n"
+ e.getMessage());
throw new ITMException(e);
}
}
return errString;
}
private String errorType(Connection conn, String errorCode) {
String msgType = "";
PreparedStatement pstmt = null;
ResultSet rs = null;
try {
String sql = " SELECT MSG_TYPE FROM MESSAGES WHERE MSG_NO = ? ";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, errorCode);
rs = pstmt.executeQuery();
while (rs.next())
msgType = rs.getString("MSG_TYPE");
} catch (Exception ex) {
ex.printStackTrace();
try {
if (rs != null) {
rs.close();
rs = null;
}
if (pstmt != null) {
pstmt.close();
pstmt = null;
}
} catch (Exception e) {
e.printStackTrace();
}
} finally {
try {
if (rs != null) {
rs.close();
rs = null;
}
if (pstmt != null) {
pstmt.close();
pstmt = null;
}
} catch (Exception e) {
e.printStackTrace();
}
}
return msgType;
}
public void callPstRs(PreparedStatement pstmt, ResultSet rs) {
try {
if (pstmt != null) {
pstmt.close();
pstmt = null;
}
if (rs != null) {
rs.close();
rs = null;
}
} catch (Exception e) {
e.printStackTrace();
}
}
private String checkNull(String inputVal) {
if (inputVal == null) {
inputVal = "";
}
return inputVal;
}
}
\ No newline at end of file
package ibase.webitm.ejb.SOD;
import java.rmi.RemoteException;
import javax.ejb.Remote;
import ibase.webitm.ejb.ValidatorLocal;
@Local
public interface SodRiskEJBLocal extends ValidatorLocal {
public String wfValData(String currFrmXmlStr, String hdrFrmXmlStr,
String allFrmXmlStr, String objContext, String editFlag,
String xtraParams) throws RemoteException ;
}
package ibase.webitm.ejb.SOD;
import java.rmi.RemoteException;
import javax.ejb.Remote;
import ibase.webitm.ejb.ValidatorRemote;
@Remote
public interface SodRiskEJBRemote extends ValidatorRemote{
public String wfValData(String currFrmXmlStr, String hdrFrmXmlStr,
String allFrmXmlStr, String objContext, String editFlag,
String xtraParams) throws RemoteException ;
}
package ibase.webitm.ejb.SOD;
import ibase.system.config.ConnDriver;
import ibase.webitm.ejb.ValidatorEJB;
import ibase.webitm.utility.GenericUtility;
import ibase.webitm.utility.ITMException;
import java.rmi.RemoteException;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import javax.ejb.Stateless;
import org.w3c.dom.Document;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
@Stateless
public class SodRuleEJB extends ValidatorEJB implements SodRuleEJBLocal,SodRuleEJBRemote
{
public String wfValData(String currFrmXmlStr, String hdrFrmXmlStr,String allFrmXmlStr, String objContext, String editFlag,String xtraParams) throws RemoteException
{
System.out.println("In wfValData");
Document currDom = null;
Document hdrDom = null;
Document allDom = null;
String errString = "";
try {
System.out.println("currFrmXmlStr..." + currFrmXmlStr);
System.out.println("hdrFrmXmlStr..." + hdrFrmXmlStr);
System.out.println("allFrmXmlStr..." + allFrmXmlStr);
if ((currFrmXmlStr != null) && (currFrmXmlStr.trim().length() != 0)) {
currDom = parseString(currFrmXmlStr);
}
if ((hdrFrmXmlStr != null) && (hdrFrmXmlStr.trim().length() != 0)) {
hdrDom = parseString(hdrFrmXmlStr);
}
if ((allFrmXmlStr != null) && (allFrmXmlStr.trim().length() != 0)) {
allDom = parseString(allFrmXmlStr);
}
errString = validate(currDom, hdrDom, allDom, objContext, editFlag,
xtraParams);
}
catch (Exception e)
{
System.out.println("Exception : [PurcRCPIc][wfValData(String currFrmXmlStr)] : ==>\n"+ e.getMessage());
}
return errString;
}
public String validate(Document currDom, Document hdrDom, Document allDom,String objContext, String editFlag, String xtraParams)throws RemoteException, ITMException
{
System.out.println("In validate Data");
GenericUtility genericUtility = GenericUtility.getInstance();
ArrayList errList = new ArrayList();
ArrayList errFields = new ArrayList();
int count = 0;
String errString = "";
String errorType = "";
String errCode = "";
StringBuffer errStringXml = new StringBuffer("<?xml version=\"1.0\"?>\r\n<Root><Errors>");
String childNodeName = "";
String sql = "";
int noOfChilds = 0;
ResultSet rs1 = null;
String loginSiteCode = "";
Connection conn = null;
PreparedStatement pstmt1 = null;
int currentFormNo = 0;
int cnt = 0;
ConnDriver connDriver = null;
Node childNode = null;
try
{
System.out.println("************xtraParams*************"+ xtraParams);
connDriver = new ConnDriver();
//Comment by sanket J on 06/JUL/2018 for multitancy server
//conn = connDriver.getConnectDB("DriverITM");
conn = getConnection();
String userId = genericUtility.getValueFromXTRA_PARAMS(xtraParams,"loginCode");
loginSiteCode = genericUtility.getValueFromXTRA_PARAMS(xtraParams,"loginSiteCode");
System.out.println("**************loginCode************" + userId);
if ((objContext != null) && (objContext.trim().length() > 0))
{
currentFormNo = Integer.parseInt(objContext);
}
NodeList parentList = currDom.getElementsByTagName("Detail"+ currentFormNo);
NodeList childList = null;
System.out.println("hdrDom..." + hdrDom);
switch (currentFormNo)
{
case 1:
childList = parentList.item(0).getChildNodes();
noOfChilds = childList.getLength();
for (int ctr = 0; ctr < noOfChilds; ctr++)
{
childNode = childList.item(ctr);
if (childNode.getNodeType() != 1)
{
continue;
}
childNodeName = childNode.getNodeName();
System.out.println("Editflag =" + editFlag);
System.out.println("parentList = " + parentList);
System.out.println("childList = " + childList);
System.out.println("childNodeName: " + childNodeName);
if ("risk_id".equalsIgnoreCase(childNodeName))
{
if (childNode.getFirstChild() == null)
{
System.out.println("VTBLKRSKID");
errList.add("VTBLKRSKID");
errFields.add(childNodeName.toLowerCase());
break;
}
else
{
String risk_id = checkNull(genericUtility.getColumnValue("risk_id", currDom));
System.out.println("editFlag in risk_id:"+ editFlag);
String sql1 = "SELECT COUNT(*) AS COUNT FROM SOD_RISK WHERE risk_id = ?";
pstmt1 = conn.prepareStatement(sql1);
pstmt1.setString(1, risk_id);
rs1 = pstmt1.executeQuery();
if (rs1.next())
{
count = rs1.getInt("COUNT");
}
System.out.println("Count: " + count);
if (count <= 0)
{
errList.add("VTINVRISID");
errFields.add(childNodeName.toLowerCase());
break;
}
System.out.println("risk_id.length(): "+ risk_id.length());
if (risk_id.length() > 6)
{
errList.add("VTINVRSKLT");
errFields.add(childNodeName.toLowerCase());
break;
}
}
}
}
break;
case 2:
childList = parentList.item(0).getChildNodes();
noOfChilds = childList.getLength();
for (int ctr = 0; ctr < noOfChilds; ctr++) {
childNode = childList.item(ctr);
if (childNode.getNodeType() != 1)
{
continue;
}
childNodeName = childNode.getNodeName();
System.out.println("Editflag =" + editFlag);
System.out.println("parentList = " + parentList);
System.out.println("childList = " + childList);
System.out.println("childNodeName: " + childNodeName);
if ("obj_name_conflict".equalsIgnoreCase(childNodeName))
{
if (childNode.getFirstChild() == null)
{
System.out.println("VTBLKCOOBJ");
errList.add("VTBLKCOOBJ");
errFields.add(childNodeName.toLowerCase());
break;
}
else
{
String obj_name_conflict = checkNull(genericUtility.getColumnValue("obj_name_conflict", currDom));
String application = checkNull(genericUtility.getColumnValue("application", currDom));
System.out.println("obj_name_conflict:"+ obj_name_conflict);
/*
* String objConArr[] =
* obj_name_conflict.split(",");
* System.out.println("objConArr Length: " +
* objConArr.length);
*/
String sql1 = "SELECT COUNT(*) AS COUNT FROM ITM2MENU WHERE win_name = ?";
pstmt1 = conn.prepareStatement(sql1);
pstmt1.setString(1, "w_"+obj_name_conflict.trim());
rs1 = pstmt1.executeQuery();
if (rs1.next())
{
count = rs1.getInt("COUNT");
}
System.out.println("Count: " + count);
if (count <= 0)
{
errList.add("VTINVCOOBJ");
errFields.add(childNodeName.toLowerCase());
break;
}
}
}
if ("right_char".equalsIgnoreCase(childNodeName))
{
if (childNode.getFirstChild() == null)
{
System.out.println("VTINVRIGCH");
errList.add("VTINVRIGCH");
errFields.add(childNodeName.toLowerCase());
break;
}
}
if ("right_char_conflict".equalsIgnoreCase(childNodeName))
{
if (childNode.getFirstChild() == null)
{
System.out.println("VTINVCRICH");
errList.add("VTINVCRICH");
errFields.add(childNodeName.toLowerCase());
break;
}
else
{
// Validation check for same obj_name and conflict
// name entry
String right_char_conflict = "", right_char = "", obj_name_conflict = "", obj_name = "";
right_char_conflict = checkNull(genericUtility.getColumnValue("right_char_conflict",currDom));
right_char = checkNull(genericUtility.getColumnValue("right_char", currDom));
obj_name_conflict = checkNull(genericUtility.getColumnValue("obj_name_conflict",currDom));
obj_name = checkNull(genericUtility.getColumnValue("obj_name", currDom));
System.out.println("right_char_conflict: "+ right_char_conflict);
System.out.println("right_char: " + right_char);
System.out.println("obj_name_conflict: "+ obj_name_conflict);
System.out.println("obj_name: " + obj_name);
System.out.println("Validation for same rule entry");
if ((obj_name.trim().equals(obj_name_conflict.trim())) && (right_char.trim().equals(right_char_conflict.trim())))
{
System.out.println("VTENTRYINV");
errList.add("VTENTRYINV");
errFields.add(childNodeName.toLowerCase());
break;
}
}
}
if ("application".equalsIgnoreCase(childNodeName))
{
if (childNode.getFirstChild() == null)
{
System.out.println("VTBLKAPPLT");
errList.add("VTBLKAPPLT");
errFields.add(childNodeName.toLowerCase());
break;
}
else
{
String application = checkNull(genericUtility.getColumnValue("application", currDom));
System.out.println("application:" + application);
count = 0;
String sql1 = "SELECT COUNT(*) AS COUNT FROM ITM2MENU WHERE APPLICATION = ?";
pstmt1 = conn.prepareStatement(sql1);
pstmt1.setString(1, application.trim());
rs1 = pstmt1.executeQuery();
if (rs1.next())
{
count = rs1.getInt("COUNT");
}
System.out.println("Count: " + count);
if (count <= 0)
{
errList.add("VTINVAPPLT");
errFields.add(childNodeName.toLowerCase());
break;
}
}
}
if ("obj_name".equalsIgnoreCase(childNodeName))
{
if (childNode.getFirstChild() == null)
{
System.out.println("VTBLKOBJNM");
errList.add("VTBLKOBJNM");
errFields.add(childNodeName.toLowerCase());
break;
}
else
{
String obj_name = checkNull(genericUtility.getColumnValue("obj_name", currDom));
String application = checkNull(genericUtility.getColumnValue("application", currDom));
System.out.println("obj_name:" + obj_name);
/*
* String objArr[] = obj_name.split(",");
* System.out.println("objArr Length: " +
* objArr.length);
*/
String sql1 = "SELECT COUNT(*) AS COUNT FROM ITM2MENU WHERE win_name = ? and application = ?";
pstmt1 = conn.prepareStatement(sql1);
pstmt1.setString(1, "w_"+obj_name.trim());
pstmt1.setString(2, application.trim());
rs1 = pstmt1.executeQuery();
if (rs1.next())
{
count = rs1.getInt("COUNT");
}
System.out.println("Count: " + count);
if (count <= 0)
{
errList.add("VTINVOBJNM");
errFields.add(childNodeName.toLowerCase());
break;
}
// Validation for checking double entry for same
// rule
System.out.println("Validation for Double rule starts");
String right_char_conflict = "", right_char = "", obj_name_conflict = "";
right_char_conflict = checkNull(genericUtility.getColumnValue("right_char_conflict",currDom));
right_char = checkNull(genericUtility.getColumnValue("right_char", currDom));
obj_name_conflict = checkNull(genericUtility.getColumnValue("obj_name_conflict",currDom));
obj_name = checkNull(genericUtility.getColumnValue("obj_name", currDom));
String right_char_conflict_check = "", right_char_check = "", obj_name_conflict_check = "", obj_name_check = "";
NodeList parentNodeList = null;
parentNodeList = null;
Node parentNode = null;
NodeList childNodeList = null;
int childNodeListLength = 0;
parentNodeList = allDom.getElementsByTagName("Detail2");
int parentNodeListLength = parentNodeList.getLength();
System.out.println("parentNodeListLength: "+ parentNodeListLength);
for (int selectedRow = 0; selectedRow < (parentNodeListLength - 1); selectedRow++)
{
int detCnt = 0;
parentNode = parentNodeList.item(selectedRow);
childNodeList = parentNode.getChildNodes();
childNodeListLength = childNodeList.getLength();
// System.out.println("childNodeListLength---->>>>>>> "+
// childNodeListLength);
String attributeValue = "";
System.out.println("childNodeListLength: "+ childNodeListLength);
for (int childRow = 0; childRow < childNodeListLength; childRow++)
{
childNode = childNodeList.item(childRow);
/*
* attributeValue = getAttribValue(
* childNode, "updateFlag");
* System.out.println("attributeValue: " +
* attributeValue);
*/
childNodeName = childNode.getNodeName();
// System.out.println("childNodeName---->>> "+
// childNodeName);
if (childNodeName.equals("attribute"))
{
if(childNode.getFirstChild() != null)
{
attributeValue = childNode.getFirstChild().getNodeValue();
}
// System.out.print("+++++++++suppCodeDetail1++++++++"+suppCodeDetail1);
}
if (childNodeName.equals("right_char_conflict"))
{
right_char_conflict_check = childNode.getFirstChild().getNodeValue();
// System.out.print("+++++++++suppCodeDetail1++++++++"+suppCodeDetail1);
}
if (childNodeName.equals("right_char"))
{
right_char_check = childNode.getFirstChild().getNodeValue();
// System.out.print("+++++++++suppCodeDetail1++++++++"+suppCodeDetail1);
}
if (childNodeName.equals("obj_name_conflict"))
{
obj_name_conflict_check = childNode.getFirstChild().getNodeValue();
// System.out.print("+++++++++suppCodeDetail1++++++++"+suppCodeDetail1);
}
if (childNodeName.equals("obj_name"))
{
obj_name_check = childNode.getFirstChild().getNodeValue();
// System.out.print("+++++++++suppCodeDetail1++++++++"+suppCodeDetail1);
}
}
System.out.println("right_char_conflict_check: "+ right_char_conflict_check);
System.out.println("right_char_check: "+ right_char_check);
System.out.println("obj_name_conflict_check: "+ obj_name_conflict_check);
System.out.println("obj_name_check: "+ obj_name_check);
System.out.println("attribute: "+ attributeValue);
if ((right_char_conflict_check.trim().equals(right_char_conflict.trim())) && (right_char_check.trim().equals(right_char.trim())) && (obj_name_conflict_check.trim().equals(obj_name_conflict.trim())) && (obj_name_check.trim().equals(obj_name.trim())) && (!attributeValue.equalsIgnoreCase("E")))
{
System.out.println("VTRPTENTRY");
errList.add("VTRPTENTRY");
errFields.add(childNodeName.toLowerCase());
break;
}
}
}
}
}
}
int errListSize = errList.size();
cnt = 0;
String errFldName = null;
if ((errList != null) && (errListSize > 0))
{
for (cnt = 0; cnt < errListSize; cnt++)
{
errCode = (String) errList.get(cnt);
errFldName = (String) errFields.get(cnt);
errString = getErrorString(errFldName, errCode, userId);
errorType = errorType(conn, errCode);
if (errString.length() > 0)
{
String bifurErrString = errString.substring(errString.indexOf("<Errors>") + 8,errString.indexOf("<trace>"));
bifurErrString = bifurErrString+ errString.substring(errString.indexOf("</trace>") + 8,errString.indexOf("</Errors>"));
errStringXml.append(bifurErrString);
System.out.println("errStringXml .........."+ errStringXml);
errString = "";
}
if (errorType.equalsIgnoreCase("E"))
{
break;
}
}
errList.clear();
errList = null;
errFields.clear();
errFields = null;
errStringXml.append("</Errors></Root>\r\n");
}
else
{
errStringXml = new StringBuffer("");
}
errString = errStringXml.toString();
}
catch (Exception e)
{
System.out.println("Exception in StockTransferGrlIC == >");
e.printStackTrace();
throw new ITMException(e);
}
finally
{
try
{
if (rs1 != null)
{
rs1.close();
rs1 = null;
}
if (pstmt1 != null)
{
pstmt1.close();
pstmt1 = null;
}
if ((conn != null) && (!conn.isClosed()))
conn.close();
}
catch (Exception e)
{
System.out.println("Exception :InvBankDtlsIC:wfValData :==>\n"+ e.getMessage());
throw new ITMException(e);
}
}
return errString;
}
private String getAttribValue(Node detailNode, String nodeName,String attribStr)
{
String attribValue = "";
try
{
String domStr = GenericUtility.getInstance().serializeDom(detailNode);
Document dom = GenericUtility.getInstance().parseString(domStr);
if (dom != null /* && dom.getAttributes() != null */)
{
Node attributeNode = dom.getElementsByTagName(nodeName).item(0);
attribValue = getAttribValue(attributeNode, attribStr);
}
}
catch (Exception e)
{
System.out.println("Exception : getAttribValue :" + e.getMessage());
}
return attribValue;
}
private String getAttribValue(Node detailNode, String attribStr)
{
String attribValue = "";
try
{
if (detailNode != null && detailNode.getAttributes() != null)
{
Node attribNode = detailNode.getAttributes().getNamedItem(attribStr);
if (attribNode != null)
{
attribValue = checkNull(attribNode.getNodeValue());
}
}
}
catch (Exception e)
{
System.out.println("Exception : getAttribValue :" + e.getMessage());
}
return attribValue;
}
public String itemChanged() throws RemoteException, ITMException
{
return "";
}
public String itemChanged(String currFrmXmlStr, String hdrFrmXmlStr,String allFrmXmlStr, String objContext, String currentColumn,String editFlag, String xtraParams) throws RemoteException,ITMException
{
Document currDom = null;
Document hdrDom = null;
Document allDom = null;
String errString = null;
GenericUtility genericUtility = GenericUtility.getInstance();
try
{
if ((currFrmXmlStr != null) && (currFrmXmlStr.trim().length() != 0))
{
currDom = genericUtility.parseString(currFrmXmlStr);
System.out.println("currFrmXmlStr : " + currFrmXmlStr);
}
if ((hdrFrmXmlStr != null) && (hdrFrmXmlStr.trim().length() != 0))
{
hdrDom = genericUtility.parseString(hdrFrmXmlStr);
System.out.println("hdrFrmXmlStr : " + hdrFrmXmlStr);
}
if ((allFrmXmlStr != null) && (allFrmXmlStr.trim().length() != 0))
{
allDom = genericUtility.parseString(allFrmXmlStr);
System.out.println("allFrmXmlStr : " + allFrmXmlStr);
}
errString = itemChanged(currDom, hdrDom, allDom, objContext,currentColumn, editFlag, xtraParams);
System.out.println("ErrString :" + errString);
}
catch (Exception e)
{
System.out.println("Exception : NearExpiryIC:defaul_ItemChanged(String,String):"+ e.getMessage() + ":");
errString = genericUtility.createErrorString(e);
}
System.out.println("returning from NearExpiryIC default_Itemchanged");
return errString;
}
public String itemChanged(Document currDom, Document hdrDom,Document allDom, String objContext, String currentColumn,String editFlag, String xtraParams) throws RemoteException,ITMException
{
String sql = "";
int currentFormNo = 0;
String childNodeName = null;
int ctr = 0;
int childNodeListLength = 0;
ResultSet rs = null;
Connection conn = null;
ConnDriver connDriver = new ConnDriver();
StringBuffer valueXmlString = new StringBuffer();
try
{
//Comment by sanket J on 06/JUL/2018 for multitancy server
//conn = connDriver.getConnectDB("DriverITM");
conn = getConnection();
PreparedStatement pstmt = null;
GenericUtility genericUtility = GenericUtility.getInstance();
String loginSiteCode = genericUtility.getValueFromXTRA_PARAMS(xtraParams, "loginSiteCode");
NodeList parentNodeList = null;
NodeList childNodeList = null;
Node parentNode = null;
Node childNode = null;
String itemCode = "", itemDescr = "", itemUnit = "", objName = "",objNameConf = "";
if ((objContext != null) && (objContext.trim().length() > 0))
{
currentFormNo = Integer.parseInt(objContext);
}
valueXmlString = new StringBuffer("<?xml version=\"1.0\"?>\r\n<Root>\r\n<Header>\r\n<editFlag>");
valueXmlString.append(editFlag).append("</editFlag>\r\n</Header>\r\n");
SimpleDateFormat sdf = new SimpleDateFormat(genericUtility.getDispDateFormat());
System.out.println("currentFormNo-------*************** = "+ currentFormNo);
switch (currentFormNo)
{
case 2:
System.out.println("currentFormNo-------*************** = "+ currentFormNo);
parentNodeList = currDom.getElementsByTagName("Detail2");
parentNode = parentNodeList.item(0);
childNodeList = parentNode.getChildNodes();
valueXmlString.append("<Detail2>");
childNodeListLength = childNodeList.getLength();
do {
childNode = childNodeList.item(ctr);
childNodeName = childNode.getNodeName();
ctr++;
} while ((ctr < childNodeListLength)&& (!childNodeName.equals(currentColumn)));
System.out.println("Chg SOD Rule IC currentColumn : "+ currentColumn);
if (currentColumn.equalsIgnoreCase("application"))
{
valueXmlString.append("<obj_name>").append("<![CDATA[]]>").append("</obj_name>");
valueXmlString.append("<obj_name_conflict>").append("<![CDATA[]]>").append("</obj_name_conflict>");
}
else if (currentColumn.equalsIgnoreCase("obj_name"))
{
objName = checkNull(genericUtility.getColumnValue("obj_name", currDom));
if(objName.trim().length()>0 && objName.contains("~") == true)
{
String[] objNameArray = objName.replaceAll("\\s+","").split("~");
System.out.println("obj_name::::"+objNameArray[0]+"udf_1::"+objNameArray[1]);
valueXmlString.append("<obj_name>").append("<![CDATA["+objNameArray[0]+"]]>").append("</obj_name>");
valueXmlString.append("<udf_1>").append("<![CDATA["+objNameArray[1]+"]]>").append("</udf_1>");
}
else
{
valueXmlString.append("<udf_1>").append("<![CDATA[]]>").append("</udf_1>");
}
}
else if (currentColumn.equalsIgnoreCase("obj_name_conflict"))
{
objNameConf = checkNull(genericUtility.getColumnValue("obj_name_conflict", currDom));
if(objNameConf.trim().length()>0 && objNameConf.contains("~") == true)
{
String[] objNameConfArray = objNameConf.replaceAll("\\s+","").split("~");
System.out.println("obj_name_conflict::::"+objNameConfArray[0]+"udf_2::"+objNameConfArray[1]);
valueXmlString.append("<obj_name_conflict>").append("<![CDATA["+objNameConfArray[0]+"]]>").append("</obj_name_conflict>");
valueXmlString.append("<udf_2>").append("<![CDATA["+objNameConfArray[1]+"]]>").append("</udf_2>");
}
else
{
valueXmlString.append("<udf_2>").append("<![CDATA[]]>").append("</udf_2>");
}
}
valueXmlString.append("</Detail2>\r\n");
}
}
catch (Exception localException)
{
}
finally
{
if (conn != null)
{
try
{
conn.close();
}
catch (SQLException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
valueXmlString.append("</Root>\r\n");
System.out.println("\n****ValueXmlString :" + valueXmlString.toString()+ ":********");
return valueXmlString.toString();
}
public static String getListStr(ArrayList tranIdList)
{
String listStr = null;
int listLen = 0;
listLen = tranIdList.size();
listStr = "( ";
for (int listIdx = 0; listIdx < listLen; listIdx++)
{
listStr = listStr + "'" + (String) tranIdList.get(listIdx) + "'"
+ ", ";
}
return listStr.substring(0, listStr.length() - 2) + " )";
}
private String errorType(Connection conn, String errorCode)
{
String msgType = "";
PreparedStatement pstmt = null;
ResultSet rs = null;
try
{
String sql = " SELECT MSG_TYPE FROM MESSAGES WHERE MSG_NO = ? ";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, errorCode);
rs = pstmt.executeQuery();
while (rs.next())
msgType = rs.getString("MSG_TYPE");
}
catch (Exception ex)
{
ex.printStackTrace();
try
{
if (rs != null)
{
rs.close();
rs = null;
}
if (pstmt != null)
{
pstmt.close();
pstmt = null;
}
}
catch (Exception e)
{
e.printStackTrace();
}
}
finally
{
try
{
if (rs != null) {
rs.close();
rs = null;
}
if (pstmt != null) {
pstmt.close();
pstmt = null;
}
} catch (Exception e) {
e.printStackTrace();
}
}
return msgType;
}
public void callPstRs(PreparedStatement pstmt, ResultSet rs) {
try {
if (pstmt != null) {
pstmt.close();
pstmt = null;
}
if (rs != null) {
rs.close();
rs = null;
}
} catch (Exception e) {
e.printStackTrace();
}
}
private String checkNull(String inputVal) {
if (inputVal == null) {
inputVal = "";
}
return inputVal;
}
}
\ No newline at end of file
package ibase.webitm.ejb.SOD;
import ibase.webitm.ejb.ValidatorLocal;
import ibase.webitm.utility.ITMException;
import java.rmi.RemoteException;
import javax.ejb.Remote;
@Local
public interface SodRuleEJBLocal extends ValidatorLocal {
public String wfValData(String currFrmXmlStr, String hdrFrmXmlStr,
String allFrmXmlStr, String objContext, String editFlag,
String xtraParams) throws RemoteException;
public String itemChanged(String currFrmXmlStr, String hdrFrmXmlStr,
String allFrmXmlStr, String objContext, String currentColumn,
String editFlag, String xtraParams) throws RemoteException,
ITMException;
}
package ibase.webitm.ejb.SOD;
import ibase.webitm.ejb.ValidatorRemote;
import ibase.webitm.utility.ITMException;
import java.rmi.RemoteException;
import javax.ejb.Remote;
@Remote
public interface SodRuleEJBRemote extends ValidatorRemote{
public String wfValData(String currFrmXmlStr, String hdrFrmXmlStr,
String allFrmXmlStr, String objContext, String editFlag,
String xtraParams) throws RemoteException ;
public String itemChanged(String currFrmXmlStr, String hdrFrmXmlStr,
String allFrmXmlStr, String objContext, String currentColumn,
String editFlag, String xtraParams) throws RemoteException,
ITMException;
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment