2016-05-29 10 views
0

Java PayPal SDKを使用してアカウント履歴を取得します。私はこの単純なコードを試みた:RESTを使用してPayPalアカウントの履歴を取得

public void randomDatabaseData() throws SQLException, FileNotFoundException, IOException, PayPalRESTException { 
    String clientID = "test"; 
    String clientSecret = "test"; 

    String accessToken = null; 
    try { 
     Map<String, String> map = new HashMap<String, String>(); 
     map.put("mode", "live"); 
     try { 
      accessToken = new OAuthTokenCredential(clientID, clientSecret, map).getAccessToken(); 
     } catch (Exception e) { 
      e.printStackTrace(); 
     } 
     System.out.println(accessToken); 
     transactionSearch(accessToken); 

    } catch (Exception e) { 
     e.printStackTrace(); 
    } 
} 

public TransactionSearchResponseType transactionSearch(String accessToken) { 

    TransactionSearchReq transactionSearchReq = new TransactionSearchReq(); 
    TransactionSearchRequestType transactionSearchRequest = new TransactionSearchRequestType(
      "2012-12-25T00:00:00+0530"); 
    transactionSearchReq.setTransactionSearchRequest(transactionSearchRequest); 
    PayPalAPIInterfaceServiceService service = new PayPalAPIInterfaceServiceService(); 
    service.setTokenSecret(accessToken); 

    TransactionSearchResponseType transactionSearchResponse = null; 
    try { 
     transactionSearchResponse = service.transactionSearch(transactionSearchReq); 
    } catch (Exception e) { 
     System.out.println("Error Message : " + e.getMessage()); 
    } 
    if (transactionSearchResponse.getAck().getValue().equalsIgnoreCase("success")) { 

     Iterator<PaymentTransactionSearchResultType> iterator = transactionSearchResponse 
       .getPaymentTransactions().iterator(); 
     while (iterator.hasNext()) { 
      PaymentTransactionSearchResultType searchResult = iterator.next(); 

      System.out.println("Transaction ID : " + searchResult.getTransactionID()); 
     } 
    } else { 
     List<ErrorType> errorList = transactionSearchResponse.getErrors(); 
     System.out.println("API Error Message : " + errorList.get(0).getLongMessage()); 
    } 

    return transactionSearchResponse; 
} 

をしかし、私は、コード実行したとき、私は彼のエラー・スタックを取得:

Error Message : configurationMap cannot be null 
java.lang.NullPointerException 
    at com.crm.web.tickets.GenearateTicketsTest.transactionSearch(GenearateTicketsTest.java:161) 
    at com.crm.web.tickets.GenearateTicketsTest.randomDatabaseData(GenearateTicketsTest.java:139) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 

私はこのコードを修正することができますどのように? PayPalのWebサイトにクライアントIDと秘密鍵を設定しますが、まだエラーが発生します。

答えて

1

TransactionSearch APIを使用して、検索期間に基づく支払い履歴を取得することをおすすめします。

+0

投稿を更新しましたが、エラーが発生します。あなたはどの設定を使用する必要があるか分かりますか? –

関連する問題