www in docker support
This commit is contained in:
parent
539a848e95
commit
c227fce036
2145 changed files with 399596 additions and 58 deletions
|
|
@ -0,0 +1,118 @@
|
|||
package it.acxent.bank.servlet.consel;
|
||||
|
||||
import it.acxent.bank.consel.ConselReq;
|
||||
import java.io.BufferedReader;
|
||||
import java.io.InputStreamReader;
|
||||
import java.io.OutputStreamWriter;
|
||||
import java.net.URL;
|
||||
import java.net.URLConnection;
|
||||
import java.net.URLEncoder;
|
||||
import javax.servlet.RequestDispatcher;
|
||||
import javax.servlet.ServletOutputStream;
|
||||
import javax.servlet.ServletRequest;
|
||||
import javax.servlet.ServletResponse;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
public abstract class ConselReqSvlt extends ConselSvlt {
|
||||
protected void sendRequest(HttpServletRequest req, HttpServletResponse res) {
|
||||
try {
|
||||
String conselSite = "https://reserved.e-consel.it/DOL/faces/frmECProntoTuo.jsp";
|
||||
ConselReq conselReq = new ConselReq(getApFull());
|
||||
fillObject(req, conselReq);
|
||||
caricaConselRequest(req, conselReq);
|
||||
if (getParm("CONSEL_TEST").getNumeroLong() == 1L)
|
||||
caricaDemoRequest(req, conselReq);
|
||||
req.setAttribute("conselReq", conselReq);
|
||||
RequestDispatcher rd = getServletContext()
|
||||
.getRequestDispatcher("/conselReq.jsp");
|
||||
rd.forward((ServletRequest)req, (ServletResponse)res);
|
||||
} catch (Exception e) {
|
||||
handleDebug(e);
|
||||
}
|
||||
}
|
||||
|
||||
protected void processRequest(HttpServletRequest req, HttpServletResponse res) {
|
||||
try {
|
||||
sendRequest(req, res);
|
||||
} catch (Exception e) {
|
||||
handleDebug(e);
|
||||
}
|
||||
}
|
||||
|
||||
protected abstract void caricaConselRequest(HttpServletRequest paramHttpServletRequest, ConselReq paramConselReq);
|
||||
|
||||
private void caricaDemoRequest(HttpServletRequest req, ConselReq conselReq) {
|
||||
conselReq.setCodfisc("CLMCST80A01D969I");
|
||||
conselReq.setCognome("COLOMBO");
|
||||
conselReq.setNome("CRISTOFORO");
|
||||
conselReq.setData_nascita("01/01/1980");
|
||||
}
|
||||
|
||||
protected void sendRequestOld(HttpServletRequest req, HttpServletResponse res) {
|
||||
try {
|
||||
String conselSite = "https://reserved.e-consel.it/DOL/faces/frmECProntoTuo.jsp";
|
||||
ConselReq conselReq = new ConselReq(getApFull());
|
||||
fillObject(req, conselReq);
|
||||
caricaConselRequest(req, conselReq);
|
||||
if (getParm("TEST").getNumeroLong() == 1L)
|
||||
caricaDemoRequest(req, conselReq);
|
||||
StringBuffer data = new StringBuffer(URLEncoder.encode("tiposec", "UTF-8") + "=" + URLEncoder.encode("tiposec", "UTF-8"));
|
||||
data.append("&" + URLEncoder.encode("tabfin", "UTF-8") + "=" +
|
||||
URLEncoder.encode(conselReq.getTabfin(), "UTF-8"));
|
||||
data.append("&" + URLEncoder.encode("convenz", "UTF-8") + "=" +
|
||||
URLEncoder.encode(conselReq.getConvenz(), "UTF-8"));
|
||||
data.append("&" + URLEncoder.encode("h_merce", "UTF-8") + "=" +
|
||||
URLEncoder.encode(conselReq.getH_merce(), "UTF-8"));
|
||||
data.append("&" + URLEncoder.encode("h_prod", "UTF-8") + "=" +
|
||||
URLEncoder.encode(conselReq.getH_prod(), "UTF-8"));
|
||||
data.append("&" + URLEncoder.encode("cognome", "UTF-8") + "=" +
|
||||
URLEncoder.encode(conselReq.getCognome(), "UTF-8"));
|
||||
data.append("&" + URLEncoder.encode("nome", "UTF-8") + "=" +
|
||||
URLEncoder.encode(conselReq.getNome(), "UTF-8"));
|
||||
data.append("&" + URLEncoder.encode("ordine", "UTF-8") + "=" +
|
||||
URLEncoder.encode(conselReq.getOrdine(), "UTF-8"));
|
||||
data.append("&" + URLEncoder.encode("anticipo", "UTF-8") + "=" +
|
||||
conselReq.getAnticipo());
|
||||
data.append("&" + URLEncoder.encode("descr1", "UTF-8") + "=" +
|
||||
URLEncoder.encode(conselReq.getDescri1(), "UTF-8"));
|
||||
data.append("&" + URLEncoder.encode("parz1", "UTF-8") + "=" +
|
||||
conselReq.getParz1());
|
||||
data.append("&" + URLEncoder.encode("tel_num", "UTF-8") + "=" +
|
||||
URLEncoder.encode(conselReq.getTel_num(), "UTF-8"));
|
||||
data.append("&" + URLEncoder.encode("pref_num", "UTF-8") + "=" +
|
||||
URLEncoder.encode(conselReq.getPref_num(), "UTF-8"));
|
||||
data.append("&" + URLEncoder.encode("impspe", "UTF-8") + "=" +
|
||||
conselReq.getImpspe());
|
||||
data.append("&" + URLEncoder.encode("impdafin", "UTF-8") + "=" +
|
||||
conselReq.getImpdafin());
|
||||
data.append("&" + URLEncoder.encode("data_nascita", "UTF-8") + "=" +
|
||||
URLEncoder.encode(conselReq.getData_nascita(), "UTF-8"));
|
||||
data.append("&" + URLEncoder.encode("indirizzo", "UTF-8") + "=" +
|
||||
URLEncoder.encode(conselReq.getIndirizzo(), "UTF-8"));
|
||||
data.append("&" + URLEncoder.encode("testomail", "UTF-8") + "=" +
|
||||
URLEncoder.encode(conselReq.getTestomail(), "UTF-8"));
|
||||
data.append("&" + URLEncoder.encode("codifisc", "UTF-8") + "=" +
|
||||
URLEncoder.encode(conselReq.getCodfisc(), "UTF-8"));
|
||||
URL url = new URL(conselSite);
|
||||
URLConnection conn = url.openConnection();
|
||||
conn.setDoOutput(true);
|
||||
OutputStreamWriter wr = new OutputStreamWriter(
|
||||
conn.getOutputStream());
|
||||
wr.write(data.toString());
|
||||
wr.flush();
|
||||
BufferedReader rd = new BufferedReader(new InputStreamReader(
|
||||
conn.getInputStream()));
|
||||
ServletOutputStream sos = res.getOutputStream();
|
||||
String line;
|
||||
while ((line = rd.readLine()) != null)
|
||||
sos.write(line.getBytes(), 0, line.length());
|
||||
wr.close();
|
||||
sos.flush();
|
||||
sos.close();
|
||||
rd.close();
|
||||
} catch (Exception e) {
|
||||
handleDebug(e);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,39 @@
|
|||
package it.acxent.bank.servlet.consel;
|
||||
|
||||
import it.acxent.bank.consel.ConselResp;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
public abstract class ConselRespSvlt extends ConselSvlt {
|
||||
protected void processRequest(HttpServletRequest req, HttpServletResponse res) {
|
||||
try {
|
||||
manageResponse(req, res);
|
||||
} catch (Exception e) {
|
||||
handleDebug(e);
|
||||
}
|
||||
}
|
||||
|
||||
protected void manageResponse(HttpServletRequest req, HttpServletResponse res) {
|
||||
try {
|
||||
ConselResp conselResp = new ConselResp(getApFull());
|
||||
fillObject(req, conselResp);
|
||||
if (conselResp.getStato().toLowerCase()
|
||||
.equals("OK".toLowerCase()) ||
|
||||
|
||||
conselResp.getStato()
|
||||
.toLowerCase()
|
||||
.equals("WW".toLowerCase())) {
|
||||
setJspPageRelative(getJspOkPage(req, res), req);
|
||||
} else {
|
||||
setJspPageRelative(getJspKoPage(req, res), req);
|
||||
}
|
||||
manageConselResponse(req, conselResp);
|
||||
req.setAttribute("conselResp", conselResp);
|
||||
callJsp(req, res);
|
||||
} catch (Exception e) {
|
||||
handleDebug(e);
|
||||
}
|
||||
}
|
||||
|
||||
protected abstract void manageConselResponse(HttpServletRequest paramHttpServletRequest, ConselResp paramConselResp);
|
||||
}
|
||||
|
|
@ -0,0 +1,68 @@
|
|||
package it.acxent.bank.servlet.consel;
|
||||
|
||||
import it.acxent.bank.consel.ConselTabfin;
|
||||
import it.acxent.bank.consel.ConselTabfinCR;
|
||||
import it.acxent.servlet.AcServlet;
|
||||
import javax.servlet.RequestDispatcher;
|
||||
import javax.servlet.ServletRequest;
|
||||
import javax.servlet.ServletResponse;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
public class ConselSvlt extends AcServlet {
|
||||
protected static final String CONSEL_REQ_JSP = "/conselReq.jsp";
|
||||
|
||||
protected static final String BEAN_CONSEL_REQ = "conselReq";
|
||||
|
||||
protected static final String BEAN_CONSEL_RESP = "conselResp";
|
||||
|
||||
protected final void callJsp(HttpServletRequest req, HttpServletResponse res) {
|
||||
setJspPageRelative(getJspOkPage(req, res), req);
|
||||
try {
|
||||
RequestDispatcher rd = getServletContext().getRequestDispatcher(getJspPage(req));
|
||||
rd.forward((ServletRequest)req, (ServletResponse)res);
|
||||
} catch (Exception e) {
|
||||
handleDebug(e);
|
||||
}
|
||||
}
|
||||
|
||||
protected String getCodiceConvenzione(HttpServletRequest req) {
|
||||
return getParm("COD_CONVENZIONE_SELLA_P_CREDIT").getTesto();
|
||||
}
|
||||
|
||||
protected String getJspErrorPage(HttpServletRequest req, HttpServletResponse res) {
|
||||
String temp = getParm("SELLA_P_CREDIT_ERROR_PAGE").getTesto();
|
||||
if (temp.isEmpty())
|
||||
return getJspKoPage(req, res);
|
||||
return temp;
|
||||
}
|
||||
|
||||
protected String getJspOkPage(HttpServletRequest req, HttpServletResponse res) {
|
||||
String temp = getParm("SELLA_P_CREDIT_OK_PAGE").getTesto();
|
||||
if (temp.isEmpty())
|
||||
return "conselRes.jsp";
|
||||
return temp;
|
||||
}
|
||||
|
||||
protected String getJspKoPage(HttpServletRequest req, HttpServletResponse res) {
|
||||
String temp = getParm("SELLA_P_CREDIT_OK_PAGE").getTesto();
|
||||
if (temp.isEmpty())
|
||||
return "conselRes.jsp";
|
||||
return temp;
|
||||
}
|
||||
|
||||
protected void processRequest(HttpServletRequest req, HttpServletResponse res) {
|
||||
ConselTabfin ct = new ConselTabfin(getApFull());
|
||||
ConselTabfinCR CR = new ConselTabfinCR();
|
||||
fillObject(req, CR);
|
||||
req.setAttribute("list", ct.findByCR(CR, 0, 0));
|
||||
req.setAttribute("CR", CR);
|
||||
req.setAttribute("nf3", getNf3());
|
||||
setJspPageRelative("tabfin" + CR.getFlgTipo() + getAct(req) + ".jsp", req);
|
||||
callJsp(req, res);
|
||||
}
|
||||
|
||||
protected boolean isSecureServlet(HttpServletRequest req) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,10 @@
|
|||
package it.acxent.bank.servlet.infogroup;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
public abstract class GetShopnetResponseSvlt extends ShopNetSvlt {
|
||||
protected void processRequest(HttpServletRequest req, HttpServletResponse res) {
|
||||
getResponse(req, res);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,91 @@
|
|||
package it.acxent.bank.servlet.infogroup;
|
||||
|
||||
import it.acxent.bank.infogroup.ShopnetResp;
|
||||
import it.acxent.servlet.AcServlet;
|
||||
import javax.servlet.RequestDispatcher;
|
||||
import javax.servlet.ServletRequest;
|
||||
import javax.servlet.ServletResponse;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
public abstract class ShopNetSvlt extends AcServlet {
|
||||
protected static final String BEAN_SHOPNETRES = "shopnetResp";
|
||||
|
||||
protected final void callJsp(HttpServletRequest req, HttpServletResponse res) {
|
||||
setJspPageRelative(getJspOkPage(req, res), req);
|
||||
try {
|
||||
RequestDispatcher rd = getServletContext()
|
||||
.getRequestDispatcher(getJspPage(req));
|
||||
rd.forward((ServletRequest)req, (ServletResponse)res);
|
||||
} catch (Exception e) {
|
||||
handleDebug(e);
|
||||
}
|
||||
}
|
||||
|
||||
protected abstract void fillIdOrdineByShopnetRes(HttpServletRequest paramHttpServletRequest, HttpServletResponse paramHttpServletResponse, ShopnetResp paramShopnetResp);
|
||||
|
||||
protected void getResponse(HttpServletRequest req, HttpServletResponse res) {
|
||||
try {
|
||||
ShopnetResp snRes = new ShopnetResp();
|
||||
fillObject(req, snRes);
|
||||
fillIdOrdineByShopnetRes(req, res, snRes);
|
||||
if (snRes.getStato() == 2L) {
|
||||
setJspPageRelative(getJspOkPage(req, res), req);
|
||||
recordOrder(req, res, snRes);
|
||||
} else {
|
||||
sendMessage(req, "Errore! Transazione annullata.");
|
||||
payKoUpdateOrder(req, res, snRes);
|
||||
setJspPageRelative(getJspKoPage(req, res), req);
|
||||
}
|
||||
req.setAttribute("shopnetResp", snRes);
|
||||
preparePaymenResPage(req, res, snRes);
|
||||
callJsp(req, res);
|
||||
} catch (Exception e) {
|
||||
setJspPageRelative(getJspErrorPage(req, res), req);
|
||||
String temp = "ERRORE!!Shopnet! Risposta non valida: ";
|
||||
sendMessage(req, temp);
|
||||
handleDebug(temp, 2);
|
||||
preparePaymenResPage(req, res, null);
|
||||
callJsp(req, res);
|
||||
}
|
||||
}
|
||||
|
||||
protected String getJspErrorPage(HttpServletRequest req, HttpServletResponse res) {
|
||||
String temp = getParm("PAY_OK").getTesto();
|
||||
if (temp.isEmpty())
|
||||
return getJspKoPage(req, res);
|
||||
return temp;
|
||||
}
|
||||
|
||||
protected String getJspOkPage(HttpServletRequest req, HttpServletResponse res) {
|
||||
String temp = getParm("PAY_OK").getTesto();
|
||||
if (temp.isEmpty())
|
||||
return "payRes.jsp";
|
||||
return temp;
|
||||
}
|
||||
|
||||
protected String getJspKoPage(HttpServletRequest req, HttpServletResponse res) {
|
||||
String temp = getParm("PAY_OK").getTesto();
|
||||
if (temp.isEmpty())
|
||||
return "payRes.jsp";
|
||||
return temp;
|
||||
}
|
||||
|
||||
protected void processRequest(HttpServletRequest req, HttpServletResponse res) {
|
||||
try {
|
||||
getResponse(req, res);
|
||||
} catch (Exception e) {
|
||||
handleDebug(e);
|
||||
}
|
||||
}
|
||||
|
||||
protected boolean isSecureServlet(HttpServletRequest req) {
|
||||
return false;
|
||||
}
|
||||
|
||||
protected abstract void recordOrder(HttpServletRequest paramHttpServletRequest, HttpServletResponse paramHttpServletResponse, ShopnetResp paramShopnetResp);
|
||||
|
||||
protected void preparePaymenResPage(HttpServletRequest req, HttpServletResponse res, ShopnetResp snRes) {}
|
||||
|
||||
protected abstract void payKoUpdateOrder(HttpServletRequest paramHttpServletRequest, HttpServletResponse paramHttpServletResponse, ShopnetResp paramShopnetResp);
|
||||
}
|
||||
|
|
@ -0,0 +1,39 @@
|
|||
package it.acxent.bank.servlet.keyclient;
|
||||
|
||||
import it.acxent.bank.keyclient.KeyClientResp;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
public abstract class GetKeyClientResponseSvlt extends KeyClientSvlt {
|
||||
protected abstract void preparePaymenResPage(HttpServletRequest paramHttpServletRequest, HttpServletResponse paramHttpServletResponse, KeyClientResp paramKeyClientResp);
|
||||
|
||||
protected abstract void recordOrder(HttpServletRequest paramHttpServletRequest, HttpServletResponse paramHttpServletResponse, KeyClientResp paramKeyClientResp);
|
||||
|
||||
protected void getResponse(HttpServletRequest req, HttpServletResponse res) {
|
||||
try {
|
||||
KeyClientResp kcRes = new KeyClientResp();
|
||||
fillObject(req, kcRes);
|
||||
kcRes.setBRAND(getRequestParameter(req, "$BRAND"));
|
||||
if (kcRes.getEsito().equals("OK")) {
|
||||
setJspPageRelative(getJspOkPage(req, res), req);
|
||||
recordOrder(req, res, kcRes);
|
||||
} else {
|
||||
setJspPageRelative(getJspKoPage(req, res), req);
|
||||
}
|
||||
req.setAttribute("KCResp", kcRes);
|
||||
preparePaymenResPage(req, res, kcRes);
|
||||
callJsp(req, res);
|
||||
} catch (Exception e) {
|
||||
setJspPageRelative(getJspErrorPage(req, res), req);
|
||||
String temp = "ERRORE!!Key Client! Risposta non valida: ";
|
||||
sendMessage(req, temp);
|
||||
handleDebug(temp, 2);
|
||||
preparePaymenResPage(req, res, null);
|
||||
callJsp(req, res);
|
||||
}
|
||||
}
|
||||
|
||||
protected void processRequest(HttpServletRequest req, HttpServletResponse res) {
|
||||
getResponse(req, res);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,119 @@
|
|||
package it.acxent.bank.servlet.keyclient;
|
||||
|
||||
import it.acxent.bank.infogroup.ShopnetResp;
|
||||
import it.acxent.bank.keyclient.KeyClientReq;
|
||||
import it.acxent.servlet.AcServlet;
|
||||
import javax.servlet.RequestDispatcher;
|
||||
import javax.servlet.ServletRequest;
|
||||
import javax.servlet.ServletResponse;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
public class KeyClientSvlt extends AcServlet {
|
||||
protected static final String BEAN_KC_RES = "KCResp";
|
||||
|
||||
protected static final String CMD_GET_RES = "res";
|
||||
|
||||
protected static final String CMD_SEND_REQ = "send";
|
||||
|
||||
protected final void callJsp(HttpServletRequest req, HttpServletResponse res) {
|
||||
setJspPageRelative(getJspOkPage(req, res), req);
|
||||
try {
|
||||
RequestDispatcher rd = getServletContext()
|
||||
.getRequestDispatcher(getJspPage(req));
|
||||
rd.forward((ServletRequest)req, (ServletResponse)res);
|
||||
} catch (Exception e) {
|
||||
handleDebug(e);
|
||||
}
|
||||
}
|
||||
|
||||
protected void getResponse(HttpServletRequest req, HttpServletResponse res) {}
|
||||
|
||||
protected String getJspErrorPage(HttpServletRequest req, HttpServletResponse res) {
|
||||
String temp = getParm("KC_PAY_OK").getTesto();
|
||||
if (temp.isEmpty())
|
||||
return getJspKoPage(req, res);
|
||||
return temp;
|
||||
}
|
||||
|
||||
protected String getJspOkPage(HttpServletRequest req, HttpServletResponse res) {
|
||||
String temp = getParm("KC_PAY_OK").getTesto();
|
||||
if (temp.isEmpty())
|
||||
return "payRes.jsp";
|
||||
return temp;
|
||||
}
|
||||
|
||||
protected String getJspKoPage(HttpServletRequest req, HttpServletResponse res) {
|
||||
String temp = getParm("KC_PAY_OK").getTesto();
|
||||
if (temp.isEmpty())
|
||||
return "payRes.jsp";
|
||||
return temp;
|
||||
}
|
||||
|
||||
protected void processRequest(HttpServletRequest req, HttpServletResponse res) {
|
||||
String cmd = getCmd(req).toLowerCase();
|
||||
try {
|
||||
if (cmd.equals("send")) {
|
||||
sendRequest(req, res);
|
||||
} else if (cmd.equals("res")) {
|
||||
getResponse(req, res);
|
||||
} else {
|
||||
sendRequest(req, res);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
handleDebug(e);
|
||||
}
|
||||
}
|
||||
|
||||
protected boolean isSecureServlet(HttpServletRequest req) {
|
||||
return false;
|
||||
}
|
||||
|
||||
protected void payKoUpdateOrder(HttpServletRequest req, HttpServletResponse res, ShopnetResp snRes) {}
|
||||
|
||||
protected void sendRequest(HttpServletRequest req, HttpServletResponse res) {
|
||||
try {
|
||||
String theUrl;
|
||||
KeyClientReq kcReq = new KeyClientReq();
|
||||
fillObject(req, kcReq);
|
||||
kcReq.setKey(getParm("KC_KEY").getTesto());
|
||||
kcReq.setAlias(getParm("KC_ALIAS").getTesto());
|
||||
kcReq.setUrl(getParm("KC_URL_RESPONSE").getTesto());
|
||||
kcReq.setUrl_back(getParm("KC_URL_RESPONSE_NULL")
|
||||
.getTesto());
|
||||
if (getParm("TEST").getNumeroLong() == 1L) {
|
||||
theUrl = kcReq.getTestRequestUrl();
|
||||
} else {
|
||||
theUrl = kcReq.getRequestUrl();
|
||||
System.out.println(theUrl);
|
||||
System.out.println(kcReq.getTestRequestUrl());
|
||||
}
|
||||
if (!theUrl.equals("")) {
|
||||
res.sendRedirect(theUrl);
|
||||
} else {
|
||||
setJspPageRelative(getJspErrorPage(req, res), req);
|
||||
String temp = "ERRORE!!KeyClient Svlt! Impossibile creare url di richiesta!";
|
||||
sendMessage(req, temp);
|
||||
getResponse(req, res);
|
||||
handleDebug(temp, 2);
|
||||
callJsp(req, res);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
handleDebug(e);
|
||||
}
|
||||
}
|
||||
|
||||
protected String getUrlResponse(HttpServletRequest req, HttpServletResponse res) {
|
||||
String temp = getParm("KC_URL_RESPONSE").getTesto();
|
||||
if (temp.isEmpty())
|
||||
return "RicevutaKC.abl";
|
||||
return temp;
|
||||
}
|
||||
|
||||
protected String getUrlResponseNull(HttpServletRequest req, HttpServletResponse res) {
|
||||
String temp = getParm("KC_URL_RESPONSE_NULL").getTesto();
|
||||
if (temp.isEmpty())
|
||||
return "RicevutaKC.abl";
|
||||
return temp;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
package it.acxent.bank.servlet.paypal;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
@Deprecated
|
||||
public class GetPayPalResponseSvlt extends PayPalSvlt {
|
||||
protected void processRequest(HttpServletRequest req, HttpServletResponse res) {
|
||||
getPayerDatails(req, res);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,301 @@
|
|||
package it.acxent.bank.servlet.paypal;
|
||||
|
||||
import it.acxent.bank.paypal.PayPalReq;
|
||||
import it.acxent.bank.paypal.PayPalResp;
|
||||
import it.acxent.servlet.AcServlet;
|
||||
import java.io.BufferedReader;
|
||||
import java.io.InputStreamReader;
|
||||
import java.net.URL;
|
||||
import java.net.URLConnection;
|
||||
import java.net.URLEncoder;
|
||||
import javax.servlet.RequestDispatcher;
|
||||
import javax.servlet.ServletRequest;
|
||||
import javax.servlet.ServletResponse;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
@Deprecated
|
||||
public class PayPalSvlt extends AcServlet {
|
||||
private static final long serialVersionUID = 5690538301539954108L;
|
||||
|
||||
public static final String CMD_SET_EXPRESS_CEHCKOUT = "start";
|
||||
|
||||
public static final String CMD_DO_EXPRESS_CEHCKOUT = "dopayment";
|
||||
|
||||
protected static final String CMD_GET_RES = "res";
|
||||
|
||||
protected static final String BEAN_PAYPALRES = "payPalResp";
|
||||
|
||||
private String payPalHttpServer;
|
||||
|
||||
private static final boolean debug = false;
|
||||
|
||||
private static boolean debugRecordOrder = false;
|
||||
|
||||
private String API_VERSION = "98";
|
||||
|
||||
protected final void callJsp(HttpServletRequest req, HttpServletResponse res) {
|
||||
setJspPageRelative(getJspOkPage(req, res), req);
|
||||
try {
|
||||
RequestDispatcher rd = getServletContext().getRequestDispatcher(getJspPage(req));
|
||||
rd.forward((ServletRequest)req, (ServletResponse)res);
|
||||
} catch (Exception e) {
|
||||
handleDebug(e);
|
||||
}
|
||||
}
|
||||
|
||||
protected void doSetExpressCheckout(HttpServletRequest req, HttpServletResponse res) {
|
||||
try {
|
||||
PayPalReq ppReq = new PayPalReq();
|
||||
fillObject(req, ppReq);
|
||||
String sec = getRequiredParameterstring() + "&CURRENCYCODE=" + getRequiredParameterstring() + "&METHOD=SetExpressCheckout&AMT=" + getCurrency() + "&RETURNURL=" +
|
||||
URLEncoder.encode(String.valueOf(ppReq.getAmt())) + "&CANCELURL=" +
|
||||
URLEncoder.encode(getReturnURL(req, res)) + "&" + URLEncoder.encode(getCancelURL(req, res));
|
||||
String pageStyle = getPageStyle();
|
||||
if (!pageStyle.equals(""))
|
||||
sec = sec + "&PAGESTYLE=" + sec;
|
||||
String urlString = getPayPalHttpServer(req) + "?" + getPayPalHttpServer(req);
|
||||
URL url = new URL(urlString);
|
||||
URLConnection connection = url.openConnection();
|
||||
BufferedReader in = new BufferedReader(new InputStreamReader(connection.getInputStream()));
|
||||
PayPalResp ppResponse = new PayPalResp();
|
||||
ppResponse.fillResponse(in);
|
||||
ppResponse.setId_ordine(ppReq.getId_ordine());
|
||||
req.getSession().setAttribute("_SESS_ID_ORDER", new Long(ppReq.getId_ordine()));
|
||||
if (ppResponse.isResponseOk()) {
|
||||
String rediretUrl;
|
||||
if (getParm("TEST").getNumeroLong() == 1L) {
|
||||
rediretUrl = "https://www.sandbox.paypal.com/cgi-bin/webscr?cmd=_express-checkout&token=" + ppResponse.getTOKEN();
|
||||
} else {
|
||||
rediretUrl = "https://www.paypal.com/cgi-bin/webscr?cmd=_express-checkout&token=" + ppResponse.getTOKEN();
|
||||
}
|
||||
req.getSession().setAttribute("_SESS_TOKEN", ppResponse.getTOKEN());
|
||||
res.sendRedirect(rediretUrl);
|
||||
} else {
|
||||
req.setAttribute("payPalResp", ppResponse);
|
||||
setJspPageRelative(getJspErrorPage(req, res), req);
|
||||
String temp = "ERRORE!!PayPal Error! Code: " + ppResponse.getL_ERRORCODE0() + ": " + ppResponse.getL_SHORTMESSAGE0() + " " +
|
||||
ppResponse.getL_LONGMESSAGE0();
|
||||
sendMessage(req, temp);
|
||||
preparePaymenResPage(req, res, ppResponse);
|
||||
handleDebug(temp, 2);
|
||||
callJsp(req, res);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
handleDebug(e);
|
||||
}
|
||||
}
|
||||
|
||||
protected void getPayerDatails(HttpServletRequest req, HttpServletResponse res) {
|
||||
try {
|
||||
String token = (String)req.getSession().getAttribute("_SESS_TOKEN");
|
||||
String sec = getRequiredParameterstring() + "&METHOD=GetExpressCheckoutDetails&TOKEN=" + getRequiredParameterstring();
|
||||
String urlString = getPayPalHttpServer(req) + "?" + getPayPalHttpServer(req);
|
||||
URL url = new URL(urlString);
|
||||
URLConnection connection = url.openConnection();
|
||||
BufferedReader in = new BufferedReader(new InputStreamReader(connection.getInputStream()));
|
||||
PayPalResp ppResponse = new PayPalResp();
|
||||
ppResponse.fillResponse(in);
|
||||
long l_id_ordine = (Long)req.getSession().getAttribute("_SESS_ID_ORDER");
|
||||
ppResponse.setId_ordine(l_id_ordine);
|
||||
fillObject(req, ppResponse);
|
||||
if (ppResponse.isResponseOk() && !ppResponse.getPAYERID().isEmpty()) {
|
||||
ppResponse.setDetailBuyer(true);
|
||||
setJspPageRelative(getJspPayerDetailsPage(req, res), req);
|
||||
} else {
|
||||
if (ppResponse.isResponseOk())
|
||||
sendMessage(req, "Transazione Abbandonata!");
|
||||
ppResponse.setDetailBuyer(false);
|
||||
setJspPageRelative(getJspKoPage(req, res), req);
|
||||
}
|
||||
req.setAttribute("payPalResp", ppResponse);
|
||||
preparePaymenResPage(req, res, ppResponse);
|
||||
callJsp(req, res);
|
||||
} catch (Exception e) {
|
||||
setJspPageRelative(getJspErrorPage(req, res), req);
|
||||
String temp = "ERRORE!!PayPal Error! getPayerDetail: ";
|
||||
sendMessage(req, temp);
|
||||
handleDebug(temp, 2);
|
||||
preparePaymenResPage(req, res, null);
|
||||
callJsp(req, res);
|
||||
}
|
||||
}
|
||||
|
||||
protected void doExpresssCheckout(HttpServletRequest req, HttpServletResponse res) {
|
||||
try {
|
||||
PayPalResp ppResponse = new PayPalResp();
|
||||
if (!debugRecordOrder) {
|
||||
PayPalReq ppReq = new PayPalReq();
|
||||
fillObject(req, ppReq);
|
||||
long l_id_ordine = (Long)req.getSession().getAttribute("_SESS_ID_ORDER");
|
||||
String sec = getRequiredParameterstring() + "&CURRENCYCODE=" + getRequiredParameterstring() + "&METHOD=DoExpressCheckoutPayment&TOKEN=" + getCurrency() + "&AMT=" +
|
||||
ppReq.getTOKEN() + "&PAYERID=" + ppReq.getAmt() + "&PAYMENTACTION=Sale";
|
||||
String urlString = getPayPalHttpServer(req) + "?" + getPayPalHttpServer(req);
|
||||
URL url = new URL(urlString);
|
||||
URLConnection connection = url.openConnection();
|
||||
BufferedReader in = new BufferedReader(new InputStreamReader(connection.getInputStream()));
|
||||
ppResponse.fillResponse(in);
|
||||
ppResponse.setId_ordine(l_id_ordine);
|
||||
fillObject(req, ppResponse);
|
||||
if (!ppResponse.isResponseOk()) {
|
||||
ppResponse.setDetailBuyer(false);
|
||||
setJspPageRelative(getJspKoPage(req, res), req);
|
||||
} else {
|
||||
ppResponse.setPaymentDone(true);
|
||||
ppResponse.setDetailBuyer(true);
|
||||
setJspPageRelative(getJspOkPage(req, res), req);
|
||||
recordOrder(req, res, ppResponse);
|
||||
}
|
||||
} else {
|
||||
fillObject(req, ppResponse);
|
||||
ppResponse.setACK("Success");
|
||||
ppResponse.setAMT("40.00");
|
||||
ppResponse.setPaymentDone(true);
|
||||
recordOrder(req, res, ppResponse);
|
||||
}
|
||||
req.setAttribute("payPalResp", ppResponse);
|
||||
preparePaymenResPage(req, res, ppResponse);
|
||||
callJsp(req, res);
|
||||
} catch (Exception e) {
|
||||
setJspPageRelative(getJspErrorPage(req, res), req);
|
||||
String temp = "ERRORE!!PayPal Error! getPayerDetail: ";
|
||||
sendMessage(req, temp);
|
||||
handleDebug(temp, 2);
|
||||
preparePaymenResPage(req, res, null);
|
||||
callJsp(req, res);
|
||||
}
|
||||
}
|
||||
|
||||
protected String getJspErrorPage(HttpServletRequest req, HttpServletResponse res) {
|
||||
String temp = getParm("PAYPAL_OK").getTesto();
|
||||
if (temp.isEmpty())
|
||||
return "payPalRes.jsp";
|
||||
return temp;
|
||||
}
|
||||
|
||||
protected String getJspOkPage(HttpServletRequest req, HttpServletResponse res) {
|
||||
String temp = getParm("PAYPAL_OK").getTesto();
|
||||
if (temp.isEmpty())
|
||||
return "payPalRes.jsp";
|
||||
return temp;
|
||||
}
|
||||
|
||||
protected String getJspPayerDetailsPage(HttpServletRequest req, HttpServletResponse res) {
|
||||
String temp = getParm("PAYPAL_DETAIL").getTesto();
|
||||
if (temp.isEmpty())
|
||||
return "payPalRes.jsp";
|
||||
return temp;
|
||||
}
|
||||
|
||||
protected String getReturnURL(HttpServletRequest req, HttpServletResponse res) {
|
||||
String temp = getParm("PAYPAL_RETURNURL").getTesto();
|
||||
if (temp.isEmpty())
|
||||
return "http://localhost:8080/mrcocci/PayPalResp.abl";
|
||||
return temp;
|
||||
}
|
||||
|
||||
protected String getCancelURL(HttpServletRequest req, HttpServletResponse res) {
|
||||
String temp = getParm("PAYPAL_CANCELURL").getTesto();
|
||||
if (temp.isEmpty())
|
||||
return "http://localhost:8080/mrcocci/PayPalResp.abl";
|
||||
return temp;
|
||||
}
|
||||
|
||||
protected String getJspKoPage(HttpServletRequest req, HttpServletResponse res) {
|
||||
String temp = getParm("PAYPAL_OK").getTesto();
|
||||
if (temp.isEmpty())
|
||||
return "payPalRes.jsp";
|
||||
return temp;
|
||||
}
|
||||
|
||||
protected void processRequest(HttpServletRequest req, HttpServletResponse res) {
|
||||
try {
|
||||
String cmd = getCmd(req).toLowerCase();
|
||||
if (cmd.equals("start")) {
|
||||
doSetExpressCheckout(req, res);
|
||||
} else if (cmd.equals("res")) {
|
||||
getPayerDatails(req, res);
|
||||
} else if (cmd.equals("dopayment")) {
|
||||
doExpresssCheckout(req, res);
|
||||
} else {
|
||||
doSetExpressCheckout(req, res);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
handleDebug(e);
|
||||
}
|
||||
}
|
||||
|
||||
protected boolean isSecureServlet(HttpServletRequest req) {
|
||||
return false;
|
||||
}
|
||||
|
||||
protected boolean isApiCertificate(HttpServletRequest req) {
|
||||
long temp = getParm("PAYPAL_USE_CERTIFICATE").getNumeroLong();
|
||||
if (temp == 1L)
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
protected void recordOrder(HttpServletRequest req, HttpServletResponse res, PayPalResp ppResponse) {}
|
||||
|
||||
protected void preparePaymenResPage(HttpServletRequest req, HttpServletResponse res, PayPalResp ppResponse) {}
|
||||
|
||||
private String getPayPalHttpServer(HttpServletRequest req) {
|
||||
if (getParm("TEST").getNumeroLong() == 1L) {
|
||||
System.out.println("PAYPAL TEST!!!! USING SANDBOX");
|
||||
if (isApiCertificate(req)) {
|
||||
this.payPalHttpServer = "https://api.sandbox.paypal.com/nvp";
|
||||
} else {
|
||||
this.payPalHttpServer = "https://api-aa-3t.sandbox.paypal.com/nvp";
|
||||
}
|
||||
} else if (isApiCertificate(req)) {
|
||||
this.payPalHttpServer = "https://api.paypal.com/nvp";
|
||||
} else {
|
||||
this.payPalHttpServer = "https://api-3t.paypal.com/nvp";
|
||||
}
|
||||
return this.payPalHttpServer;
|
||||
}
|
||||
|
||||
public void setPayPalHttpServer(String payPalHttpServer) {
|
||||
this.payPalHttpServer = payPalHttpServer;
|
||||
}
|
||||
|
||||
private String getRequiredParameterstring() {
|
||||
return "USER=" + getApiUsername() + "&PWD=" + getApiPassword() + "&SIGNATURE=" + getApiSignature() + "&VERSION=" + this.API_VERSION;
|
||||
}
|
||||
|
||||
protected String getApiPassword() {
|
||||
String temp = getParm("PAYPAL_API_PWD").getTesto();
|
||||
if (temp.isEmpty())
|
||||
return "1196089261";
|
||||
return temp;
|
||||
}
|
||||
|
||||
protected String getApiSignature() {
|
||||
String temp = getParm("PAYPAL_API_SIGNATURE").getTesto();
|
||||
if (temp.isEmpty())
|
||||
return "AGAgVmHK8-QsvPbEGnNP6SiFg7qvADQfsLa6GrW8G43-yqX46vNyyZzG";
|
||||
return temp;
|
||||
}
|
||||
|
||||
private String getPageStyle() {
|
||||
String temp = getParm("PAYPAL_PAGE_STYLE").getTesto();
|
||||
if (temp.isEmpty())
|
||||
return "";
|
||||
return temp;
|
||||
}
|
||||
|
||||
protected String getApiUsername() {
|
||||
String temp = getParm("PAYPAL_API_USERNAME").getTesto();
|
||||
if (temp.isEmpty())
|
||||
return "acolzi_1196089239_biz_api1.f3.com";
|
||||
return temp;
|
||||
}
|
||||
|
||||
protected String getCurrency() {
|
||||
String temp = getParm("PAYPAL_CURRENCY").getTesto();
|
||||
if (temp.isEmpty())
|
||||
return "EUR";
|
||||
return temp;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,182 @@
|
|||
package it.acxent.bank.servlet.paypalcheckout;
|
||||
|
||||
import com.paypal.http.HttpResponse;
|
||||
import com.paypal.http.serializer.Json;
|
||||
import com.paypal.orders.Order;
|
||||
import it.acxent.bank.paypalcheckout.PayPalOrder;
|
||||
import it.acxent.bank.paypalcheckout.PayPalReq;
|
||||
import it.acxent.db.DBAdapter;
|
||||
import it.acxent.servlet.AcServlet;
|
||||
import javax.servlet.RequestDispatcher;
|
||||
import javax.servlet.ServletRequest;
|
||||
import javax.servlet.ServletResponse;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import org.apache.commons.io.IOUtils;
|
||||
import org.json.JSONArray;
|
||||
import org.json.JSONObject;
|
||||
|
||||
public class PaypalCheckoutSvlt extends AcServlet {
|
||||
private static final long serialVersionUID = 5690568301539954108L;
|
||||
|
||||
public static final String CMD_CREATE_ORDER = "createOrder";
|
||||
|
||||
public static final String CMD_GET_ORDER_DETAILS = "getOrderDetails";
|
||||
|
||||
protected static final String CMD_GET_RES = "res";
|
||||
|
||||
protected static final String BEAN_PAYPALRES = "payPalResp";
|
||||
|
||||
private static final boolean debug = false;
|
||||
|
||||
protected final void callJsp(HttpServletRequest req, HttpServletResponse res) {
|
||||
setJspPageRelative(getJspOkPage(req, res), req);
|
||||
try {
|
||||
RequestDispatcher rd = getServletContext().getRequestDispatcher(getJspPage(req));
|
||||
rd.forward((ServletRequest)req, (ServletResponse)res);
|
||||
} catch (Exception e) {
|
||||
handleDebug(e);
|
||||
}
|
||||
}
|
||||
|
||||
private void _createOrder(HttpServletRequest req, HttpServletResponse res) {
|
||||
PayPalReq pReq = getPayPalReq(req, res);
|
||||
pReq.setPaypalClientId(getApplicationClientId());
|
||||
pReq.setPaypalClientSecret(getApplicationClienteSecret());
|
||||
pReq.setUseSandbox(isUseSandbox(req));
|
||||
try {
|
||||
HttpResponse<Order> respOrd = new PayPalOrder(pReq).createOrder(false);
|
||||
String orderId = ((Order)respOrd.result()).id();
|
||||
String result = "{\"orderID\":\"" + orderId + "\"}";
|
||||
System.out.println(String.valueOf(DBAdapter.getNow()) + " _createOrder paypalcheckoutsvlt: " + String.valueOf(DBAdapter.getNow()));
|
||||
pReq.setPaypalOrderId(orderId);
|
||||
updatePaypalOrderId(req, pReq);
|
||||
sendHtmlMsgResponse(req, res, result);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
System.out.println(String.valueOf(DBAdapter.getNow()) + " _createOrder paypalcheckoutsvlt: exception; " + String.valueOf(DBAdapter.getNow()));
|
||||
}
|
||||
}
|
||||
|
||||
private String getJspOkPage(HttpServletRequest req, HttpServletResponse res) {
|
||||
String temp = getParm("PAYPAL_OK").getTesto();
|
||||
if (temp.isEmpty())
|
||||
return "payPalRes.jsp";
|
||||
return temp;
|
||||
}
|
||||
|
||||
private String getCancelURL(HttpServletRequest req, HttpServletResponse res) {
|
||||
String temp = getParm("PAYPAL_CANCELURL").getTesto();
|
||||
if (temp.isEmpty())
|
||||
return "http://localhost/cc/PayPalCOResp.abl";
|
||||
return temp;
|
||||
}
|
||||
|
||||
protected void processRequest(HttpServletRequest req, HttpServletResponse res) {
|
||||
try {
|
||||
String cmd = getCmd(req);
|
||||
if (cmd.equals("createOrder")) {
|
||||
_createOrder(req, res);
|
||||
} else {
|
||||
_getPayerDatails(req, res);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
handleDebug(e);
|
||||
}
|
||||
}
|
||||
|
||||
protected boolean isSecureServlet(HttpServletRequest req) {
|
||||
return false;
|
||||
}
|
||||
|
||||
private boolean isUseSandbox(HttpServletRequest req) {
|
||||
return getParm("P_PAYPAL_CHECKOUT_USE_SANDBOX").isTrue();
|
||||
}
|
||||
|
||||
protected void recordOrder(HttpServletRequest req, HttpServletResponse res, JSONObject jso) {}
|
||||
|
||||
private String getApplicationClientId() {
|
||||
String temp = getParm("PAYPAL_CHECKOUT_APPLICATION_CLIENT_ID").getTesto();
|
||||
if (temp.isEmpty())
|
||||
return "ASB7x1BxlkomVZ1BM0OesK2SuCLjRq9R4dyc5rtCVBzM7nHB0eunZyyxO4758BgXnZBV9JSCZ3bqpFw9";
|
||||
return temp;
|
||||
}
|
||||
|
||||
private String getApplicationClienteSecret() {
|
||||
String temp = getParm("PAYPAL_CHECKOUT_APPLICATION_CLIENT_SECRET").getTesto();
|
||||
if (temp.isEmpty())
|
||||
return "EFiYhkh4tgv1d3Wnx2qUAG1_BtxddWoGhZTlV7EseRfP4uKFMRAub_5G9D9PIgTObVjB54SZd2UNyXlZ";
|
||||
return temp;
|
||||
}
|
||||
|
||||
private String getCurrency() {
|
||||
String temp = getParm("PAYPAL_CURRENCY").getTesto();
|
||||
if (temp.isEmpty())
|
||||
return "EUR";
|
||||
return temp;
|
||||
}
|
||||
|
||||
private String getReturnURL(HttpServletRequest req, HttpServletResponse res) {
|
||||
String temp = getParm("PAYPAL_RETURNURL").getTesto();
|
||||
if (temp.isEmpty())
|
||||
return "http://localhost/cc/PayPalCOResp.abl";
|
||||
return temp;
|
||||
}
|
||||
|
||||
private void _getPayerDatails(HttpServletRequest req, HttpServletResponse res) {
|
||||
PayPalReq preq = new PayPalReq();
|
||||
fillObject(req, preq);
|
||||
preq.setPaypalClientId(getApplicationClientId());
|
||||
preq.setPaypalClientSecret(getApplicationClienteSecret());
|
||||
preq.setUseSandbox(isUseSandbox(req));
|
||||
System.out.println("PAYPALCHECKOUT _getPayerDatails .... ");
|
||||
try {
|
||||
String orderIdJson = IOUtils.toString(req.getReader());
|
||||
JSONObject jso = new JSONObject(orderIdJson);
|
||||
String orderId = jso.getString("orderID");
|
||||
HttpResponse<Order> respOrd = new PayPalOrder(preq).getOrder(orderId);
|
||||
JSONObject jsonRespObj = new JSONObject(new Json().serialize(respOrd.result()));
|
||||
String json = jsonRespObj.toString(4);
|
||||
String status = jsonRespObj.getString("status");
|
||||
System.out.println("PAYPALCHECKOUT _getPayerDatails status: " + status);
|
||||
if (status.equals("COMPLETED"))
|
||||
recordOrder(req, res, jsonRespObj);
|
||||
sendHtmlMsgResponse(req, res, json);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
protected PayPalReq getPayPalReq(HttpServletRequest req, HttpServletResponse res) {
|
||||
return null;
|
||||
}
|
||||
|
||||
protected void updatePaypalOrderId(HttpServletRequest req, PayPalReq pReq) {}
|
||||
|
||||
protected String extractTransactionId(JSONObject jo) {
|
||||
String transactionId = "";
|
||||
if (jo == null)
|
||||
return transactionId;
|
||||
try {
|
||||
if (!jo.has("purchase_units"))
|
||||
return transactionId;
|
||||
JSONArray purchaseUnits = jo.optJSONArray("purchase_units");
|
||||
if (purchaseUnits == null || purchaseUnits.isEmpty())
|
||||
return transactionId;
|
||||
JSONObject firstPurchaseUnit = purchaseUnits.optJSONObject(0);
|
||||
if (firstPurchaseUnit == null)
|
||||
return transactionId;
|
||||
JSONObject payments = firstPurchaseUnit.optJSONObject("payments");
|
||||
if (payments == null)
|
||||
return transactionId;
|
||||
JSONArray captures = payments.optJSONArray("captures");
|
||||
if (captures == null || captures.isEmpty())
|
||||
return transactionId;
|
||||
JSONObject firstCapture = captures.optJSONObject(0);
|
||||
if (firstCapture == null)
|
||||
return transactionId;
|
||||
transactionId = firstCapture.optString("id", "");
|
||||
} catch (Exception e) {}
|
||||
return transactionId;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,47 @@
|
|||
package it.acxent.bank.servlet.sella;
|
||||
|
||||
import it.acxent.bank.sella.GestPayCrypt;
|
||||
import it.acxent.bank.sella.SellaResp;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
public abstract class GetSellaResponseSvlt extends SellaSvlt {
|
||||
protected void processRequest(HttpServletRequest req, HttpServletResponse res) {
|
||||
getResponse(req, res);
|
||||
}
|
||||
|
||||
protected void getResponse(HttpServletRequest req, HttpServletResponse res) {
|
||||
try {
|
||||
GestPayCrypt objCrypt = new GestPayCrypt();
|
||||
String a = req.getParameter("a");
|
||||
String b = req.getParameter("b");
|
||||
a = a.trim();
|
||||
b = b.trim();
|
||||
GestPayCrypt objdeCrypt = new GestPayCrypt();
|
||||
objdeCrypt.setShopLogin(a);
|
||||
objdeCrypt.setEncryptedString(b);
|
||||
objdeCrypt.Decrypt();
|
||||
SellaResp sellaRes = new SellaResp(objdeCrypt);
|
||||
if (sellaRes.getMyerrorcode().equals("0")) {
|
||||
setJspPageRelative(getJspOkPage(req, res), req);
|
||||
recordOrder(req, res, sellaRes);
|
||||
} else {
|
||||
setJspPageRelative(getJspKoPage(req, res), req);
|
||||
}
|
||||
req.setAttribute("sellaResp", sellaRes);
|
||||
preparePaymenResPage(req, res, sellaRes);
|
||||
callJsp(req, res);
|
||||
} catch (Exception e) {
|
||||
setJspPageRelative(getJspErrorPage(req, res), req);
|
||||
String temp = "ERRORE!!GestPay Error! Risposta non valida: ";
|
||||
sendMessage(req, temp);
|
||||
handleDebug(temp, 2);
|
||||
preparePaymenResPage(req, res, null);
|
||||
callJsp(req, res);
|
||||
}
|
||||
}
|
||||
|
||||
protected abstract void preparePaymenResPage(HttpServletRequest paramHttpServletRequest, HttpServletResponse paramHttpServletResponse, SellaResp paramSellaResp);
|
||||
|
||||
protected abstract void recordOrder(HttpServletRequest paramHttpServletRequest, HttpServletResponse paramHttpServletResponse, SellaResp paramSellaResp);
|
||||
}
|
||||
|
|
@ -0,0 +1,118 @@
|
|||
package it.acxent.bank.servlet.sella;
|
||||
|
||||
import it.acxent.bank.sella.GestPayCrypt;
|
||||
import it.acxent.bank.sella.SellaReq;
|
||||
import it.acxent.servlet.AcServlet;
|
||||
import javax.servlet.RequestDispatcher;
|
||||
import javax.servlet.ServletRequest;
|
||||
import javax.servlet.ServletResponse;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
public class SellaSvlt extends AcServlet {
|
||||
protected static final String CMD_SEND_REQ = "send";
|
||||
|
||||
protected static final String CMD_GET_RES = "res";
|
||||
|
||||
protected static final String BEAN_SELLA_RES = "sellaResp";
|
||||
|
||||
protected final void callJsp(HttpServletRequest req, HttpServletResponse res) {
|
||||
setJspPageRelative(getJspOkPage(req, res), req);
|
||||
try {
|
||||
RequestDispatcher rd = getServletContext().getRequestDispatcher(getJspPage(req));
|
||||
rd.forward((ServletRequest)req, (ServletResponse)res);
|
||||
} catch (Exception e) {
|
||||
handleDebug(e);
|
||||
}
|
||||
}
|
||||
|
||||
protected void sendRequest(HttpServletRequest req, HttpServletResponse res) {
|
||||
try {
|
||||
GestPayCrypt objCrypt = new GestPayCrypt();
|
||||
SellaReq sellareq = new SellaReq();
|
||||
fillObject(req, sellareq);
|
||||
objCrypt.setShopLogin(getCodiceEsercente(req));
|
||||
objCrypt.setCurrency(sellareq.getMycurrency());
|
||||
if (getParm("TEST").getNumeroLong() == 1L) {
|
||||
objCrypt.setAmount("0.12");
|
||||
} else {
|
||||
objCrypt.setAmount(sellareq.getMyamount());
|
||||
}
|
||||
objCrypt.setShopTransactionID(sellareq.getMyshoptransactionID());
|
||||
if (getParm("SELLA_FULL").isTrue()) {
|
||||
if (!sellareq.getMybuyername().isEmpty())
|
||||
objCrypt.setBuyerName(sellareq.getMybuyername());
|
||||
if (!sellareq.getMybuyeremail().isEmpty())
|
||||
objCrypt.setBuyerEmail(sellareq.getMybuyeremail());
|
||||
if (!sellareq.getMylanguage().isEmpty())
|
||||
objCrypt.setLanguage(sellareq.getMylanguage());
|
||||
if (!sellareq.getMycustominfo().isEmpty())
|
||||
objCrypt.setCustomInfo(sellareq.getMycustominfo());
|
||||
}
|
||||
String tempX = "cod eserc.: " + objCrypt.getShopLogin() + " curr:" + objCrypt.getCurrency() + " amount:" + objCrypt.getAmount() + " shoptranid:" +
|
||||
objCrypt.getShopTransactionID() + " buyername:" + objCrypt.getBuyerName() + " buyeremail:" +
|
||||
objCrypt.getBuyerEmail() + " lang:" + sellareq.getMylanguage() + " custinfo:" + objCrypt.getCustomInfo();
|
||||
System.out.println("SELLA:SENDREQUEST ENCRYPT: " + tempX);
|
||||
objCrypt.Encrypt();
|
||||
String b = "";
|
||||
String a = "";
|
||||
if (objCrypt.getErrorCode().equals("0")) {
|
||||
String sellaSite;
|
||||
b = objCrypt.getEncryptedString();
|
||||
a = objCrypt.getShopLogin();
|
||||
if (getParm("TEST").getNumeroLong() == 1L) {
|
||||
sellaSite = "testecomm.sella.it";
|
||||
} else {
|
||||
sellaSite = "ecomm.sella.it";
|
||||
}
|
||||
String requestPage = "https://" + sellaSite + "/gestpay/pagam.asp?a=" + a + "&b=" + b;
|
||||
res.sendRedirect(requestPage);
|
||||
} else {
|
||||
setJspPageRelative(getJspErrorPage(req, res), req);
|
||||
String temp = "ERRORE!!GestPay Error! Code: " + objCrypt.getErrorCode() + ": " + objCrypt.getErrorDescription();
|
||||
sendMessage(req, temp);
|
||||
handleDebug(temp, 2);
|
||||
callJsp(req, res);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
handleDebug(e);
|
||||
}
|
||||
}
|
||||
|
||||
protected String getCodiceEsercente(HttpServletRequest req) {
|
||||
return getParm("COD_ESER_SELLA").getTesto();
|
||||
}
|
||||
|
||||
protected String getJspErrorPage(HttpServletRequest req, HttpServletResponse res) {
|
||||
String temp = getParm("SELLA_OK").getTesto();
|
||||
if (temp.isEmpty())
|
||||
return getJspKoPage(req, res);
|
||||
return temp;
|
||||
}
|
||||
|
||||
protected String getJspOkPage(HttpServletRequest req, HttpServletResponse res) {
|
||||
String temp = getParm("SELLA_OK").getTesto();
|
||||
if (temp.isEmpty())
|
||||
return "payRes.jsp";
|
||||
return temp;
|
||||
}
|
||||
|
||||
protected String getJspKoPage(HttpServletRequest req, HttpServletResponse res) {
|
||||
String temp = getParm("SELLA_OK").getTesto();
|
||||
if (temp.isEmpty())
|
||||
return "payRes.jsp";
|
||||
return temp;
|
||||
}
|
||||
|
||||
protected void processRequest(HttpServletRequest req, HttpServletResponse res) {
|
||||
try {
|
||||
sendRequest(req, res);
|
||||
} catch (Exception e) {
|
||||
handleDebug(e);
|
||||
}
|
||||
}
|
||||
|
||||
protected boolean isSecureServlet(HttpServletRequest req) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,45 @@
|
|||
package it.acxent.bank.servlet.sellaPCredit;
|
||||
|
||||
import it.acxent.bank.sellaPCredit.SellaPCreditReq;
|
||||
import javax.servlet.RequestDispatcher;
|
||||
import javax.servlet.ServletRequest;
|
||||
import javax.servlet.ServletResponse;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
public abstract class SellaPCreditReqSvlt extends SellaPCreditlSvlt {
|
||||
protected void sendRequest(HttpServletRequest req, HttpServletResponse res) {
|
||||
try {
|
||||
SellaPCreditReq conselReq = new SellaPCreditReq(getApFull());
|
||||
String conselSite = conselReq.getRequestServer();
|
||||
fillObject(req, conselReq);
|
||||
if (!getRequestParameter(req, "tabfin").isEmpty())
|
||||
conselReq.setTabellaFinanziaria(getRequestParameter(req, "tabfin"));
|
||||
caricaSellaPCreditRequest(req, conselReq);
|
||||
if (getParm("SELLA_P_CREDIT_TEST").isTrue())
|
||||
caricaDemoRequest(req, conselReq);
|
||||
req.setAttribute("sellaPCreditReq", conselReq);
|
||||
RequestDispatcher rd = getServletContext().getRequestDispatcher("/sellaPCreditReq.jsp");
|
||||
rd.forward((ServletRequest)req, (ServletResponse)res);
|
||||
} catch (Exception e) {
|
||||
handleDebug(e);
|
||||
}
|
||||
}
|
||||
|
||||
protected void processRequest(HttpServletRequest req, HttpServletResponse res) {
|
||||
try {
|
||||
sendRequest(req, res);
|
||||
} catch (Exception e) {
|
||||
handleDebug(e);
|
||||
}
|
||||
}
|
||||
|
||||
protected abstract void caricaSellaPCreditRequest(HttpServletRequest paramHttpServletRequest, SellaPCreditReq paramSellaPCreditReq);
|
||||
|
||||
private void caricaDemoRequest(HttpServletRequest req, SellaPCreditReq conselReq) {
|
||||
conselReq.setCodiceFiscale("CLMCST80A01D969I");
|
||||
conselReq.setCognome("COLOMBO");
|
||||
conselReq.setNome("CRISTOFORO");
|
||||
conselReq.setData_nascita("01/01/1980");
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,39 @@
|
|||
package it.acxent.bank.servlet.sellaPCredit;
|
||||
|
||||
import it.acxent.bank.sellaPCredit.SellaPCreditResp;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
public abstract class SellaPCreditRespSvlt extends SellaPCreditlSvlt {
|
||||
protected void processRequest(HttpServletRequest req, HttpServletResponse res) {
|
||||
try {
|
||||
manageResponse(req, res);
|
||||
} catch (Exception e) {
|
||||
handleDebug(e);
|
||||
}
|
||||
}
|
||||
|
||||
protected void manageResponse(HttpServletRequest req, HttpServletResponse res) {
|
||||
try {
|
||||
SellaPCreditResp conselResp = new SellaPCreditResp(getApFull());
|
||||
fillObject(req, conselResp);
|
||||
if (conselResp.getStato().toLowerCase()
|
||||
.equals("OK".toLowerCase()) ||
|
||||
|
||||
conselResp.getStato()
|
||||
.toLowerCase()
|
||||
.equals("WW".toLowerCase())) {
|
||||
setJspPageRelative(getJspOkPage(req, res), req);
|
||||
} else {
|
||||
setJspPageRelative(getJspKoPage(req, res), req);
|
||||
}
|
||||
manageSellaPCreditResponse(req, conselResp);
|
||||
req.setAttribute("sellaPCreditResp", conselResp);
|
||||
callJsp(req, res);
|
||||
} catch (Exception e) {
|
||||
handleDebug(e);
|
||||
}
|
||||
}
|
||||
|
||||
protected abstract void manageSellaPCreditResponse(HttpServletRequest paramHttpServletRequest, SellaPCreditResp paramSellaPCreditResp);
|
||||
}
|
||||
|
|
@ -0,0 +1,68 @@
|
|||
package it.acxent.bank.servlet.sellaPCredit;
|
||||
|
||||
import it.acxent.bank.sellaPCredit.ConselTabfin;
|
||||
import it.acxent.bank.sellaPCredit.ConselTabfinCR;
|
||||
import it.acxent.servlet.AcServlet;
|
||||
import javax.servlet.RequestDispatcher;
|
||||
import javax.servlet.ServletRequest;
|
||||
import javax.servlet.ServletResponse;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
public class SellaPCreditlSvlt extends AcServlet {
|
||||
protected static final String SELLA_P_CREDIT_REQ_JSP = "/sellaPCreditReq.jsp";
|
||||
|
||||
protected static final String BEAN_SELLA_P_CREDIT_REQ = "sellaPCreditReq";
|
||||
|
||||
protected static final String BEAN_SELLA_P_CREDIT_RESP = "sellaPCreditResp";
|
||||
|
||||
protected final void callJsp(HttpServletRequest req, HttpServletResponse res) {
|
||||
setJspPageRelative(getJspOkPage(req, res), req);
|
||||
try {
|
||||
RequestDispatcher rd = getServletContext().getRequestDispatcher(getJspPage(req));
|
||||
rd.forward((ServletRequest)req, (ServletResponse)res);
|
||||
} catch (Exception e) {
|
||||
handleDebug(e);
|
||||
}
|
||||
}
|
||||
|
||||
protected String getCodiceConvenzione(HttpServletRequest req) {
|
||||
return getParm("COD_CONVENZIONE_SELLA_P_CREDIT").getTesto();
|
||||
}
|
||||
|
||||
protected String getJspErrorPage(HttpServletRequest req, HttpServletResponse res) {
|
||||
String temp = getParm("SELLA_P_CREDIT_ERROR_PAGE").getTesto();
|
||||
if (temp.isEmpty())
|
||||
return getJspKoPage(req, res);
|
||||
return temp;
|
||||
}
|
||||
|
||||
protected String getJspOkPage(HttpServletRequest req, HttpServletResponse res) {
|
||||
String temp = getParm("SELLA_P_CREDIT_OK_PAGE").getTesto();
|
||||
if (temp.isEmpty())
|
||||
return "conselRes.jsp";
|
||||
return temp;
|
||||
}
|
||||
|
||||
protected String getJspKoPage(HttpServletRequest req, HttpServletResponse res) {
|
||||
String temp = getParm("SELLA_P_CREDIT_OK_PAGE").getTesto();
|
||||
if (temp.isEmpty())
|
||||
return "conselRes.jsp";
|
||||
return temp;
|
||||
}
|
||||
|
||||
protected void processRequest(HttpServletRequest req, HttpServletResponse res) {
|
||||
ConselTabfin ct = new ConselTabfin(getApFull());
|
||||
ConselTabfinCR CR = new ConselTabfinCR();
|
||||
fillObject(req, CR);
|
||||
req.setAttribute("list", ct.findByCR(CR, 0, 0));
|
||||
req.setAttribute("CR", CR);
|
||||
req.setAttribute("nf3", getNf3());
|
||||
setJspPageRelative("tabfin" + CR.getFlgTipo() + getAct(req) + ".jsp", req);
|
||||
callJsp(req, res);
|
||||
}
|
||||
|
||||
protected boolean isSecureServlet(HttpServletRequest req) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1 @@
|
|||
package it.acxent.bank.servlet.sellaPCredit;
|
||||
|
|
@ -0,0 +1,176 @@
|
|||
package it.acxent.bank.servlet.setefi;
|
||||
|
||||
import it.acxent.bank.setefi.SetefiReq;
|
||||
import it.acxent.bank.setefi.SetefiResp;
|
||||
import it.acxent.db.ResParm;
|
||||
import it.acxent.servlet.AcServlet;
|
||||
import java.io.BufferedReader;
|
||||
import java.io.DataOutputStream;
|
||||
import java.io.InputStreamReader;
|
||||
import java.net.HttpURLConnection;
|
||||
import java.net.URL;
|
||||
import javax.servlet.RequestDispatcher;
|
||||
import javax.servlet.ServletRequest;
|
||||
import javax.servlet.ServletResponse;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
public abstract class MonetaOnlineSvlt extends AcServlet {
|
||||
protected static final String CMD_GET_RES = "res";
|
||||
|
||||
protected static final String CMD_SEND_REQ = "send";
|
||||
|
||||
protected final void callJsp(HttpServletRequest req, HttpServletResponse res) {
|
||||
setJspPageRelative(getResponsePage(req, res), req);
|
||||
try {
|
||||
RequestDispatcher rd = getServletContext()
|
||||
.getRequestDispatcher(getJspPage(req));
|
||||
rd.forward((ServletRequest)req, (ServletResponse)res);
|
||||
} catch (Exception e) {
|
||||
handleDebug(e);
|
||||
}
|
||||
}
|
||||
|
||||
protected String getResponsePage(HttpServletRequest req, HttpServletResponse res) {
|
||||
String temp = getParm("MONETAONLINE_RESPONSE_PAGE")
|
||||
.getTesto();
|
||||
if (temp.isEmpty())
|
||||
return "http://www.miodominio.it/xxx_response-#-@.html";
|
||||
return temp;
|
||||
}
|
||||
|
||||
protected void processRequest(HttpServletRequest req, HttpServletResponse res) {
|
||||
String cmd = getCmd(req).toLowerCase();
|
||||
if (cmd.equals("send")) {
|
||||
sendRequest(req, res);
|
||||
} else if (getCmd(req).equals("risultato") ||
|
||||
getCmd(req).equals("result")) {
|
||||
preparePaymentResultPage(req, res);
|
||||
setJspPage(getResponseJsp(req, res), req);
|
||||
callJsp(req, res);
|
||||
} else {
|
||||
getResponse(req, res);
|
||||
}
|
||||
}
|
||||
|
||||
protected boolean isSecureServlet(HttpServletRequest req) {
|
||||
return false;
|
||||
}
|
||||
|
||||
protected void sendRequest(HttpServletRequest req, HttpServletResponse res) {
|
||||
try {
|
||||
boolean testMode = (getParm("TEST").getNumeroInt() == 1);
|
||||
SetefiReq setefiReq = new SetefiReq();
|
||||
fillObject(req, setefiReq);
|
||||
String theUrl = "https://test.monetaonline.it/monetaweb/hosted/init/http";
|
||||
if (testMode) {
|
||||
theUrl = "https://test.monetaonline.it/monetaweb/hosted/init/http";
|
||||
setefiReq.setId(getParm("MONETAONLINE_ID").getTesto());
|
||||
setefiReq.setPassword(getParm("MONETAONLINE_PASSWORD")
|
||||
.getTesto());
|
||||
} else {
|
||||
setefiReq.setId("99999999");
|
||||
setefiReq.setPassword("99999999");
|
||||
}
|
||||
setefiReq.setResponseurl(getResponseUrl(req, res));
|
||||
String rawData = setefiReq.getRawdata();
|
||||
if (!rawData.equals("")) {
|
||||
String type = "application/x-www-form-urlencoded";
|
||||
String encodedData = rawData;
|
||||
URL u = new URL("https://test.monetaonline.it/monetaweb/hosted/init/http");
|
||||
HttpURLConnection conn = (HttpURLConnection)u.openConnection();
|
||||
conn.setDoInput(true);
|
||||
conn.setDoOutput(true);
|
||||
conn.setUseCaches(false);
|
||||
conn.setRequestMethod("POST");
|
||||
conn.setRequestProperty("Content-Type", type);
|
||||
conn.setRequestProperty("Content-Length",
|
||||
String.valueOf(encodedData.length()));
|
||||
conn.connect();
|
||||
DataOutputStream os = new DataOutputStream(
|
||||
conn.getOutputStream());
|
||||
os.writeBytes(encodedData);
|
||||
os.flush();
|
||||
os.close();
|
||||
BufferedReader read = new BufferedReader(new InputStreamReader(
|
||||
conn.getInputStream()));
|
||||
String line = read.readLine();
|
||||
String html = "";
|
||||
while (line != null) {
|
||||
html = html + html;
|
||||
line = read.readLine();
|
||||
}
|
||||
int idx2dot = html.indexOf(":");
|
||||
String paymentId = html.substring(0, html.indexOf(":"));
|
||||
String url = html.substring(idx2dot + 1, html.length());
|
||||
String paymentUrl = url + "?paymentid=" + url;
|
||||
System.out.println(paymentUrl);
|
||||
ResParm rp = recordPaymentId(req, res, paymentId);
|
||||
if (rp.getStatus()) {
|
||||
res.sendRedirect(paymentUrl);
|
||||
} else {
|
||||
setJspPageRelative(getResponsePage(req, res), req);
|
||||
sendMessage(req, rp.getErrMsg());
|
||||
getResponse(req, res);
|
||||
callJsp(req, res);
|
||||
}
|
||||
} else {
|
||||
setJspPageRelative(getResponsePage(req, res), req);
|
||||
String temp = "ERRORE!!MonetaOnline Svlt! Impossibile creare url di richiesta!";
|
||||
sendMessage(req, temp);
|
||||
getResponse(req, res);
|
||||
handleDebug(temp, 2);
|
||||
callJsp(req, res);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
handleDebug(e);
|
||||
}
|
||||
}
|
||||
|
||||
protected String getResponseJsp(HttpServletRequest req, HttpServletResponse res) {
|
||||
String temp = getParm("MONETAONLINE_RESPONSE_JSP").getTesto();
|
||||
if (temp.isEmpty())
|
||||
return "/payResMO.jsp";
|
||||
return temp;
|
||||
}
|
||||
|
||||
protected abstract ResParm recordPaymentId(HttpServletRequest paramHttpServletRequest, HttpServletResponse paramHttpServletResponse, String paramString);
|
||||
|
||||
protected String getResponseUrl(HttpServletRequest req, HttpServletResponse res) {
|
||||
String temp = getParm("MONETAONLINE_RESPONSE_URL").getTesto();
|
||||
if (temp.isEmpty())
|
||||
return "http://www.miodoninio.it/RicevutaMO.abl";
|
||||
return temp;
|
||||
}
|
||||
|
||||
protected abstract void preparePaymentResultPage(HttpServletRequest paramHttpServletRequest, HttpServletResponse paramHttpServletResponse);
|
||||
|
||||
protected abstract void checkPaymentId(HttpServletRequest paramHttpServletRequest, HttpServletResponse paramHttpServletResponse, SetefiResp paramSetefiResp);
|
||||
|
||||
protected void getResponse(HttpServletRequest req, HttpServletResponse res) {
|
||||
try {
|
||||
req.setAttribute("responsecode", "000");
|
||||
req.setAttribute("result", "Accepted");
|
||||
req.setAttribute("trackid", "6");
|
||||
req.setAttribute("paymentid", "316061656072333389");
|
||||
req.setAttribute("tranid", "316061656072333389");
|
||||
SetefiResp setefiResp = new SetefiResp();
|
||||
fillObject(req, setefiResp);
|
||||
checkPaymentId(req, res, setefiResp);
|
||||
String theUrl = getResponsePage(req, res).replace("#",
|
||||
setefiResp.getTrackid());
|
||||
theUrl = theUrl.replace("@",
|
||||
String.valueOf(setefiResp.getPaymentid()));
|
||||
System.out.println("redirect url :" + theUrl);
|
||||
sendHtmlMsgResponse(req, res, "redirect=" + theUrl);
|
||||
} catch (Exception e) {
|
||||
setJspPageRelative(getResponsePage(req, res), req);
|
||||
String temp = "ERRORE!!MONETAONLINE ! Risposta non valida: ";
|
||||
sendMessage(req, temp);
|
||||
handleDebug(temp, 2);
|
||||
setJspPage(getResponsePage(req, res), req);
|
||||
callJsp(req, res);
|
||||
callJsp(req, res);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,49 @@
|
|||
package it.acxent.bank.servlet.stripe;
|
||||
|
||||
import it.acxent.bank.stripe.StripeResp;
|
||||
import it.acxent.db.ResParm;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
public abstract class _StripeResponseSvlt extends _StripeSvlt {
|
||||
private static final long serialVersionUID = 571692091994662023L;
|
||||
|
||||
protected void processRequest(HttpServletRequest req, HttpServletResponse res) {
|
||||
getResponse(req, res);
|
||||
}
|
||||
|
||||
protected void getResponse(HttpServletRequest req, HttpServletResponse res) {
|
||||
try {
|
||||
StripeResp stripeRes = new StripeResp();
|
||||
fillObject(req, stripeRes);
|
||||
if (stripeRes.getRedirect_status().equals("succeeded")) {
|
||||
setJspPageRelative(getJspOkPage(req, res), req);
|
||||
recordOrder(req, res, stripeRes);
|
||||
} else {
|
||||
setJspPageRelative(getJspKoPage(req, res), req);
|
||||
}
|
||||
req.setAttribute("stripeResp", stripeRes);
|
||||
preparePaymenResPage(req, res, stripeRes);
|
||||
callJsp(req, res);
|
||||
} catch (Exception e) {
|
||||
setJspPageRelative(getJspErrorPage(req, res), req);
|
||||
String temp = "ERRORE!!Stripe Error! Risposta non valida: ";
|
||||
sendMessage(req, temp);
|
||||
handleDebug(temp, 2);
|
||||
preparePaymenResPage(req, res, null);
|
||||
callJsp(req, res);
|
||||
}
|
||||
}
|
||||
|
||||
protected abstract void preparePaymenResPage(HttpServletRequest paramHttpServletRequest, HttpServletResponse paramHttpServletResponse, StripeResp paramStripeResp);
|
||||
|
||||
protected abstract void recordOrder(HttpServletRequest paramHttpServletRequest, HttpServletResponse paramHttpServletResponse, StripeResp paramStripeResp);
|
||||
|
||||
protected long getAmount(HttpServletRequest req, long l_id) {
|
||||
return 0L;
|
||||
}
|
||||
|
||||
protected ResParm saveClientSecret(HttpServletRequest req, long l_id, String l_clientSecret) {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,101 @@
|
|||
package it.acxent.bank.servlet.stripe;
|
||||
|
||||
import com.google.gson.Gson;
|
||||
import com.stripe.Stripe;
|
||||
import com.stripe.model.PaymentIntent;
|
||||
import com.stripe.param.PaymentIntentCreateParams;
|
||||
import it.acxent.bank.stripe.CreatePaymentResponse;
|
||||
import it.acxent.db.ResParm;
|
||||
import it.acxent.servlet.AcServlet;
|
||||
import javax.servlet.RequestDispatcher;
|
||||
import javax.servlet.ServletRequest;
|
||||
import javax.servlet.ServletResponse;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import org.json.JSONObject;
|
||||
|
||||
public abstract class _StripeSvlt extends AcServlet {
|
||||
private static Gson gson = new Gson();
|
||||
|
||||
private static final long serialVersionUID = 7052017571211783636L;
|
||||
|
||||
protected static final String BEAN_STRIPE_RESP = "stripeResp";
|
||||
|
||||
protected final void callJsp(HttpServletRequest req, HttpServletResponse res) {
|
||||
setJspPageRelative(getJspOkPage(req, res), req);
|
||||
try {
|
||||
RequestDispatcher rd = getServletContext().getRequestDispatcher(getJspPage(req));
|
||||
rd.forward((ServletRequest)req, (ServletResponse)res);
|
||||
} catch (Exception e) {
|
||||
handleDebug(e);
|
||||
}
|
||||
}
|
||||
|
||||
protected String getStripeSecretApiKey(HttpServletRequest req) {
|
||||
return getParm("STRIPE_PRIVATE_KEY").getTesto();
|
||||
}
|
||||
|
||||
protected String getJspErrorPage(HttpServletRequest req, HttpServletResponse res) {
|
||||
String temp = getParm("SELLA_OK").getTesto();
|
||||
if (temp.isEmpty())
|
||||
return getJspKoPage(req, res);
|
||||
return temp;
|
||||
}
|
||||
|
||||
protected String getJspOkPage(HttpServletRequest req, HttpServletResponse res) {
|
||||
String temp = getParm("STRIPE_OK_PAGE").getTesto();
|
||||
if (temp.isEmpty())
|
||||
return "stripeRes.jsp";
|
||||
return temp;
|
||||
}
|
||||
|
||||
protected String getJspKoPage(HttpServletRequest req, HttpServletResponse res) {
|
||||
String temp = getParm("SELLA_OK").getTesto();
|
||||
if (temp.isEmpty())
|
||||
return "stripeRes.jsp";
|
||||
return temp;
|
||||
}
|
||||
|
||||
protected void processRequest(HttpServletRequest req, HttpServletResponse res) {
|
||||
try {
|
||||
_getPaymentIntent(req, res);
|
||||
} catch (Exception e) {
|
||||
handleDebug(e);
|
||||
}
|
||||
}
|
||||
|
||||
protected boolean isSecureServlet(HttpServletRequest req) {
|
||||
return false;
|
||||
}
|
||||
|
||||
public void _getPaymentIntent(HttpServletRequest req, HttpServletResponse res) {
|
||||
try {
|
||||
Stripe.apiKey = getStripeSecretApiKey(req);
|
||||
String body = req.getReader().lines().reduce("", String::concat);
|
||||
JSONObject jo = new JSONObject(body).getJSONObject("orderData");
|
||||
long l_id = jo.getLong("id");
|
||||
String l_descrizione = jo.getString("descOrdine");
|
||||
System.out.println("" + l_id + " " + l_id);
|
||||
System.out.println("body: " + body);
|
||||
Long amount = getAmount(req, l_id);
|
||||
if (amount == 0L) {
|
||||
sendHtmlMsgResponse(req, res, "Error: amount==0!!!");
|
||||
} else {
|
||||
PaymentIntentCreateParams params = PaymentIntentCreateParams.builder().setAmount(amount).setCurrency("eur")
|
||||
.setAutomaticPaymentMethods(PaymentIntentCreateParams.AutomaticPaymentMethods.builder().setEnabled(Boolean.valueOf(true)).build())
|
||||
.build();
|
||||
PaymentIntent paymentIntent = PaymentIntent.create(params);
|
||||
CreatePaymentResponse paymentResponse = new CreatePaymentResponse(paymentIntent.getClientSecret());
|
||||
saveClientSecret(req, l_id, paymentIntent.getClientSecret());
|
||||
sendHtmlMsgResponse(req, res, gson.toJson(paymentResponse));
|
||||
}
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
sendHtmlMsgResponse(req, res, "Error: " + e.getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
protected abstract ResParm saveClientSecret(HttpServletRequest paramHttpServletRequest, long paramLong, String paramString);
|
||||
|
||||
protected abstract long getAmount(HttpServletRequest paramHttpServletRequest, long paramLong);
|
||||
}
|
||||
|
|
@ -0,0 +1 @@
|
|||
package it.acxent.bank.servlet.stripe;
|
||||
|
|
@ -0,0 +1,55 @@
|
|||
package it.acxent.bank.servlet.xpay;
|
||||
|
||||
import it.acxent.bank.xpay.XpayResp;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
public abstract class GetXpayResponseSvlt extends XpaySvlt {
|
||||
protected abstract void preparePaymenResPage(HttpServletRequest paramHttpServletRequest, HttpServletResponse paramHttpServletResponse, XpayResp paramXpayResp);
|
||||
|
||||
protected abstract void recordOrder(HttpServletRequest paramHttpServletRequest, HttpServletResponse paramHttpServletResponse, XpayResp paramXpayResp);
|
||||
|
||||
protected void getResponse(HttpServletRequest req, HttpServletResponse res) {
|
||||
try {
|
||||
XpayResp xpRes = new XpayResp(getApFull(req));
|
||||
fillObject(req, xpRes);
|
||||
xpRes.setBRAND(getRequestParameter(req, "$BRAND"));
|
||||
if (xpRes.isMacRitornoOk()) {
|
||||
if (xpRes.getEsito() != null && xpRes.getEsito().equals("OK")) {
|
||||
setJspPageRelative(getJspOkPage(req, res), req);
|
||||
recordOrder(req, res, xpRes);
|
||||
req.setAttribute("XPAYResp", xpRes);
|
||||
preparePaymenResPage(req, res, xpRes);
|
||||
} else {
|
||||
preparePaymenResPage(req, res, xpRes);
|
||||
resetId_documentoXpay(req, res, xpRes);
|
||||
setJspPageRelative(getJspKoPage(req, res), req);
|
||||
}
|
||||
callJsp(req, res);
|
||||
} else {
|
||||
xpRes.setEsito("KO");
|
||||
preparePaymenResPage(req, res, xpRes);
|
||||
resetId_documentoXpay(req, res, xpRes);
|
||||
setJspPageRelative(getJspKoPage(req, res), req);
|
||||
sendMessage(req, "ATTENZIONE!! Codice mac di controllo errato.");
|
||||
req.setAttribute("XPAYResp", xpRes);
|
||||
callJsp(req, res);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
setJspPageRelative(getJspErrorPage(req, res), req);
|
||||
String temp = "ERRORE!!XPAY ! Risposta non valida: ";
|
||||
sendMessage(req, temp);
|
||||
handleDebug(temp, 2);
|
||||
preparePaymenResPage(req, res, null);
|
||||
callJsp(req, res);
|
||||
}
|
||||
}
|
||||
|
||||
protected void processRequest(HttpServletRequest req, HttpServletResponse res) {
|
||||
getResponse(req, res);
|
||||
}
|
||||
|
||||
protected void prepareSendRequest(HttpServletRequest req, HttpServletResponse res) {}
|
||||
|
||||
protected abstract void resetId_documentoXpay(HttpServletRequest paramHttpServletRequest, HttpServletResponse paramHttpServletResponse, XpayResp paramXpayResp);
|
||||
}
|
||||
|
|
@ -0,0 +1,115 @@
|
|||
package it.acxent.bank.servlet.xpay;
|
||||
|
||||
import it.acxent.bank.infogroup.ShopnetResp;
|
||||
import it.acxent.bank.xpay.XpayReq;
|
||||
import it.acxent.servlet.AcServlet;
|
||||
import javax.servlet.RequestDispatcher;
|
||||
import javax.servlet.ServletRequest;
|
||||
import javax.servlet.ServletResponse;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
public abstract class XpaySvlt extends AcServlet {
|
||||
protected static final String BEAN_XPAY_RES = "XPAYResp";
|
||||
|
||||
protected static final String CMD_GET_RES = "res";
|
||||
|
||||
protected static final String CMD_SEND_REQ = "send";
|
||||
|
||||
protected final void callJsp(HttpServletRequest req, HttpServletResponse res) {
|
||||
setJspPageRelative(getJspOkPage(req, res), req);
|
||||
try {
|
||||
RequestDispatcher rd = getServletContext().getRequestDispatcher(getJspPage(req));
|
||||
rd.forward((ServletRequest)req, (ServletResponse)res);
|
||||
} catch (Exception e) {
|
||||
handleDebug(e);
|
||||
}
|
||||
}
|
||||
|
||||
protected void getResponse(HttpServletRequest req, HttpServletResponse res) {}
|
||||
|
||||
protected String getJspErrorPage(HttpServletRequest req, HttpServletResponse res) {
|
||||
String temp = getParm("XPAY_PAY_OK").getTesto();
|
||||
if (temp.isEmpty())
|
||||
return getJspKoPage(req, res);
|
||||
return temp;
|
||||
}
|
||||
|
||||
protected String getJspOkPage(HttpServletRequest req, HttpServletResponse res) {
|
||||
String temp = getParm("XPAY_PAY_OK").getTesto();
|
||||
if (temp.isEmpty())
|
||||
return "payRes.jsp";
|
||||
return temp;
|
||||
}
|
||||
|
||||
protected String getJspKoPage(HttpServletRequest req, HttpServletResponse res) {
|
||||
String temp = getParm("XPAY_PAY_OK").getTesto();
|
||||
if (temp.isEmpty())
|
||||
return "payRes.jsp";
|
||||
return temp;
|
||||
}
|
||||
|
||||
protected void processRequest(HttpServletRequest req, HttpServletResponse res) {
|
||||
String cmd = getCmd(req).toLowerCase();
|
||||
try {
|
||||
if (cmd.equals("send")) {
|
||||
sendRequest(req, res);
|
||||
} else if (cmd.equals("res")) {
|
||||
getResponse(req, res);
|
||||
} else {
|
||||
sendRequest(req, res);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
handleDebug(e);
|
||||
}
|
||||
}
|
||||
|
||||
protected boolean isSecureServlet(HttpServletRequest req) {
|
||||
return false;
|
||||
}
|
||||
|
||||
protected void payKoUpdateOrder(HttpServletRequest req, HttpServletResponse res, ShopnetResp snRes) {}
|
||||
|
||||
protected void sendRequest(HttpServletRequest req, HttpServletResponse res) {
|
||||
try {
|
||||
String theUrl;
|
||||
prepareSendRequest(req, res);
|
||||
XpayReq xpayReq = new XpayReq(getApFull(req));
|
||||
fillObject(req, xpayReq);
|
||||
if (getParm("TEST").isTrue()) {
|
||||
theUrl = xpayReq.getTestRequestUrl();
|
||||
} else {
|
||||
theUrl = xpayReq.getRequestUrl();
|
||||
}
|
||||
System.out.println(theUrl);
|
||||
if (!theUrl.equals("")) {
|
||||
res.sendRedirect(theUrl);
|
||||
} else {
|
||||
setJspPageRelative(getJspErrorPage(req, res), req);
|
||||
String temp = "ERRORE!!XPAY Svlt! Impossibile creare url di richiesta!";
|
||||
sendMessage(req, temp);
|
||||
getResponse(req, res);
|
||||
handleDebug(temp, 2);
|
||||
callJsp(req, res);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
handleDebug(e);
|
||||
}
|
||||
}
|
||||
|
||||
protected String getUrlResponse(HttpServletRequest req, HttpServletResponse res) {
|
||||
String temp = getParm("XPAY_URL_RESPONSE").getTesto();
|
||||
if (temp.isEmpty())
|
||||
return "RicevutaKC.abl";
|
||||
return temp;
|
||||
}
|
||||
|
||||
protected String getUrlResponseNull(HttpServletRequest req, HttpServletResponse res) {
|
||||
String temp = getParm("XPAY_URL_RESPONSE_NULL").getTesto();
|
||||
if (temp.isEmpty())
|
||||
return "RicevutaKC.abl";
|
||||
return temp;
|
||||
}
|
||||
|
||||
protected abstract void prepareSendRequest(HttpServletRequest paramHttpServletRequest, HttpServletResponse paramHttpServletResponse);
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue