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