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,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;
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue