• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Paypal API, Java

krackmoe

Neues Mitglied
Ich mühe mich gerade ab einen Paypal Express Button einzubauen.
Ich versteh nicht wie das funktionieren soll.
Die Dokumentation hilft mir überhaupt nicht weiter...

Wie mache ich den Aufruf auf: SetExpressCheckout?
 
Hast Du dann überhaupt ein Paypal Object erstellt? Zeige doch mal bitte ein paar Codeschnipsel. Dann kann ich Dir wahrscheinlich weiterhelfen. Und was hast Du bisher versucht damit es funktioniert?
 
Hab noch keine Codeschnippsel, da ich nicht weiß wie ich beginnen soll..
In der Doku steht: Klickt der Kunde auf den Button Express-Kauf mit PayPal, wird der API-Aufruf SetExpressCheckout gestartet.

Aber keine Ahnung wie ich diesen Aufruf starte..
Ich find die Methode nirgendwo... kA wo ich die herbekomme..

Ich hab mir dieses sdk runtergeladen: https://www.paypal.com/IntegrationCenter/sdk/PayPal_Java_NVP_SDK.zip
Ist das richtig?

Bzw.. wie verbind ich das SDK mit meiner webapp? Brauch ich doch eigentlich gar nicht? Benötige ich dann überhaupt das SDK?
 
Also sicherlich brauchst Du das SDK von Paypal. Füge das Klassenverzeichnis in Dein bestehnden Projekt ein. Dann importierst Du die Klasse und erstellst ein neues Objekt von dem Paypall Button. Nun solltest Du einfach dessen Namen nehmen können und sagen "Paybutton.SetExpressCheckout"

Da ich hier leider kein Eclipse zur Verfügung habe konnte ich es nicht testen, welche Klasse Du importieren musst. Da musst Du nun etwas testen. Aber solltest Du es bis heute Abend nicht rausbekommen helfe ich Dir da gerne weiter.
 
Hab jetzt das SDK integriert ins Projekt das sollt jetzt passen.

Nur es gibt die Methode SetExpressCheckout nicht.
Ich weiß nicht wo ich die aufrufen soll... wär toll wenn du mir da noch helfen könntest!
Ich glaub ich weiß wo mein Problem liegt.. ich weiß schon nicht, über welche Methoden ich mit dem Paypal Server kommunizieren soll.. um meine Signature zu übergeben und so..

Bin ich der einzige der mit sowas Probleme hat? Ich google schon wie ein blöder.. und find nichts was mir annähernd weiterhilft..
 
Zuletzt bearbeitet:
Der Code ist jetzt absolut eklig.. und wirklich nur dazu gedacht, auszuprobiern ob es so funktioniert..

Code:
<%
            String s = URLEncoder.encode("USER=dal_127735536_biz_api1.live.at&PWD=RUPEX922NWC9V8M&SIGNATURE=An5ns1Kso7MWUdWErQKJJJ4qi4-A88lFFVjpgaT5asRyxXaPL9EfIZ&[email protected]&METHOD=SetExpressCheckout&RETURNURL=https://www.mey.com&CANCELURL=https://www.mey.com", "UTF-8");
            URL url = new URL("https://api-3t.sandbox.paypal.com/nvp");
            URLConnection conn = url.openConnection();
            conn.setDoOutput(true);
            OutputStreamWriter writer = new OutputStreamWriter(conn.getOutputStream());

            writer.write(s);
            writer.flush();

            StringBuffer answer = new StringBuffer();
            BufferedReader reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));
            String line;
            while ((line = reader.readLine()) != null) {
                answer.append(line);
            }
            writer.close();
            reader.close();

            //Output the response
            System.out.println("antwort "+answer.toString());
    %>

Nur da bekomm ich immer folgende Fehlermeldung:
ACK=Failure&L_ERRORCODE0=81002&L_SHORTMESSAGE0=Unspecified%20Method&L_LONGMESSAGE0=Method%20Specified%20is%20not%20Supported&L_SEVERITYCODE0=Error

Stimmt das ned so wie ich das mach?
 
Zuletzt bearbeitet:
Ok.. ich habs jetzt nach Stundemlangen rumwerken ^^
Lösung ist eh so einfach.. oh mann..

Code:
HttpClient client = new HttpClient();
            String url = "https://api-3t.sandbox.paypal.com/nvp";
            String key5 = URLEncoder.encode("METHOD","UTF-8");
            String value5 = URLEncoder.encode("SetExpressCheckout","UTF-8");
            String key6 = URLEncoder.encode("RETURNURL","UTF-8");
            String value6 = URLEncoder.encode("https://www.mey.com","UTF-8");
            String key7 = URLEncoder.encode("CANCELURL","UTF-8");
            String value7 = URLEncoder.encode("https://www.mey.com","UTF-8");

            String allParams = "?"+key+"=dan_127739536_biz_api1.live.at&"+key2+"=RUPEX922NCQ9V8M&"+key3+"=An5ns1Kso7WUdW4ErQKJJJ4qi4-A88lF0VjpgaT5asRyxXaPL9EfIZ&VERSION=53.0&AMT=2.0&"+key5+"="+value5+"&"+key6+"="+value6+"&"+key7+"="+value7;
            out.println(url+allParams);
            GetMethod fileGet = new GetMethod(url+allParams);
            try{
                client.executeMethod(fileGet);
                if (fileGet.getStatusCode() == HttpStatus.SC_OK) {
                    String response2 = fileGet.getResponseBodyAsString();
                    out.println("Response = " + response2);
                }
                else{
                    out.println(fileGet.getStatusCode());
                    out.println("ne");
                }
            }
            catch(Exception e){System.out.println(e);}
 
Zurück
Oben