<%@ page language="java" session="true"%>
<%@ page import="java.util.Random" %>
<%@ page import="java.util.Date" %>
<%@ page import="java.io.*" %>
<%@ page import="com.aciworldwide.commerce.gateway.plugins.e24PaymentPipe" %>
<%
String AliasCount = "1";
//session.setAttribute("name",request.getParameter("name"));
//session.setAttribute("city",request.getParameter("city"));
//session.setAttribute("addr",request.getParameter("addr"));
//session.setAttribute("state",request.getParameter("state"));
//session.setAttribute("country",request.getParameter("country"));
//session.setAttribute("postalcd",request.getParameter("postalcd"));
session.setAttribute("amount",request.getParameter("amount")); // Payment Amount
session.setAttribute("udf1",String.valueOf(request.getParameter("udf1")).replace("'","").trim()); //Service / Order details
session.setAttribute("udf2",String.valueOf(request.getParameter("udf2")).replace("'","").trim()); //email id
session.setAttribute("udf3",String.valueOf(request.getParameter("udf3")).replace("'","").trim()); //Mobile Number, Landline Number or both
session.setAttribute("udf4",String.valueOf(request.getParameter("udf4")).replace("'","").trim()); //address
session.setAttribute("udf5",request.getParameter("udf5")); //Merchant specific
Random rnd = new Random(System.currentTimeMillis());
String trackId = String.valueOf(Math.abs(rnd.nextLong())); //Merchant must generate the Track Id
session.setAttribute("trackId",trackId);
String amount= String.valueOf(session.getAttribute("amount"));
String InstituteID=request.getParameter("InstituteID"); //Must be 1 for the merchant having only one bank(mandatory must be initilized)
File basePath = new File(pageContext.getServletContext().getRealPath("/"));
File usersFile = new File(basePath+"/WEB-INF/", "config.txt");
BufferedInputStream in = new BufferedInputStream(new FileInputStream(usersFile));
BufferedReader br = new BufferedReader (new FileReader(usersFile));
String str,resourcePath="",aliasName="",instituteName,instituteDesc,currency="";
String language="",action="",receiptURL="",errorURL="",headerCount,header;
int index =0;
while ((str = br.readLine()) != null)
{
if ( str.substring(0,str.indexOf("=")) .equals("tran.currency") )
currency=str.substring(str.indexOf("=")+1);
if ( str.substring(0,str.indexOf("=")) .equals("consumer.language") )
language=str.substring(str.indexOf("=")+1);
if ( str.substring(0,str.indexOf("=")) .equals("tran.action") )
action=str.substring(str.indexOf("=")+1);
if ( str.substring(0,str.indexOf("=")) .equals("merchant.receiptURL") )
receiptURL=str.substring(str.indexOf("=")+1);
if ( str.substring(0,str.indexOf("=")) .equals("merchant.errorURL") )
errorURL=str.substring(str.indexOf("=")+1);
if ( str.substring(0,str.indexOf("=")) .equals("gateway.headerCount") )
{
index=str.indexOf("=");
headerCount=str.substring(index+1, str.length());
if ( headerCount.equals(InstituteID) )
{
str=br.readLine();
resourcePath=str.substring(str.indexOf("=")+1);
while ((str = br.readLine()) != null)
{
if(str.substring(0,str.indexOf("=")) .equals("gateway.header"))
{
index=str.indexOf("=");
header=str.substring(index+1, str.length());
if(header.equals(AliasCount))
{
str=br.readLine();
aliasName=str.substring(str.indexOf("=")+1);
break;
}
}
}
}
}
}
//Following is the code which initilize e24PaymentPipe with proper value
e24PaymentPipe pipe=new e24PaymentPipe();
pipe.setResourcePath(resourcePath); //mandatory
pipe.setAlias(aliasName); //mandatory
pipe.setAction( action ); //mandatory
pipe.setResponseURL(receiptURL ); //mandatory
pipe.setErrorURL(errorURL ); //mandatory
pipe.setAmt(amount); //mandatory
pipe.setCurrency(currency);
pipe.setLanguage(language);
pipe.setTrackId(trackId);
pipe.setUdf1(String.valueOf(session.getAttribute("udf1")));
pipe.setUdf2(String.valueOf(session.getAttribute("udf2")));
pipe.setUdf3(String.valueOf(session.getAttribute("udf3")));
//pipe.setUdf4(String.valueOf(session.getAttribute("udf4")));
pipe.setUdf5(String.valueOf(request.getParameter("udf5")));
String sError = "";
if(pipe.performPaymentInitialization() != pipe.SUCCESS)
{
out.println("Error sending Payment Initialization Request: ");
//out.println("Error sending Payment Initialization Request: " + resourcePath);
out.println("Debug: " + pipe.getDebugMsg());
sError = pipe.getErrorMsg()+ "111" +pipe.getDebugMsg()+"endofm";
sError = sError.replace("\n","c");
sError = sError.replace("&","cc");
response.sendRedirect(response.encodeRedirectURL("HostedPaymentError.jsp?ErrorText="+sError));
}
else
{
String PaymentID = pipe.getPaymentId();
String payURL = pipe.getPaymentPage();
sError = pipe.getErrorMsg()+ "111" +pipe.getDebugMsg()+"endofm";
sError = sError.replace("\n","c");
sError = sError.replace("&","cc");
response.sendRedirect(response.encodeRedirectURL( payURL + "?PaymentID=" + PaymentID ));
}
%>
>
>
>
>
>
>
>
>