Cela fait longtemps que j'ai utilisé Paypal pour la dernière fois et c'était avec PHP uniquement, mais si je me souviens bien, vous deviez fournir à Paypal une "URL de retour" en tant que paramètre que Paypal devait utiliser pour rediriger la requête vers votre site après avoir traité le paiement. Afin de maintenir la session en vie, vous devez ajouter le paramètre jsessionid
à l'URL avec l'identifiant de la session en cours comme valeur.
String returnURL = "http://example.com/completed.jsp;jsessionid=" + session.getId();
String paypalURL = "http://paypal.com/process?returnURL=" + URLEncoder.encode(returnURL, "UTF-8"));
Une autre solution consiste à traiter cette question dans une fenêtre contextuelle et à laisser la fenêtre se fermer lorsque Paypal revient. La session dans la fenêtre parentale sera simplement conservée.