繁体   English   中英

如何通过QBMS Java API在托管模式下处理信用卡

[英]How to process credit card in hosted mode via QBMS Java API

我修改了此处提供的示例,但不适用于托管应用。 显然问题是连接票证,据我了解,不应使用该票证。

以下是java类:

public class MyPayment {
    public static void main(String[] args) throws Exception{
        QbmsConfiguration qbmsConfiguration =new QbmsConfiguration("/qbmsconnector.properties");

        // Create a JAXB-backed QbmsConnector
        QbmsConnector qbmsConnector =new JaxbQbmsConnector(qbmsConfiguration);

        // Build a charge request...
        CreditCardChargeRequest request =new CreditCardChargeRequest();
        request.setCreditCardNumber("4111111111111111");
        request.setNameOnCard("John Doe");
        request.setExpirationMonth(12);
        request.setExpirationYear(2014);
        request.setAmount(130.00);

        // ...define a connection ticket...
        String connectionTicket ="TGT-XXX-XXXXXXXXXXXXXXXXXXXXXX";

        // ...and make the payment.
        try{
          CreditCardChargeResponse response = qbmsConnector.creditCardCharge(connectionTicket, request);
          System.out.println(response);
        }catch(QbmsOperationException e){
          System.out.println("Payment failed: "+ e.getMessage());
          e.printStackTrace();
        }
    }
}

这是qbmsconnector.properties

qbmsconnector.applicationLogin=loginidxxxxxx
qbmsconnector.applicationId=123456789
qbmsconnector.environment=ptc
qbmsconnector.model=hosted
qbmsconnector.keyStoreLocation=/qbms
qbmsconnector.keyStorePassword=password111
qbmsconnector.certPassword=password111
qbmsconnector.certAlias=alias_abc

它引发以下错误:

Payment failed: Application agent not found TGT-XXX-XXXXXXXXXXXXXXXXXXXXXX
com.intuit.qbmsconnector.response.QbmsResponseStatusException: Application agent not found TGT-XXX-XXXXXXXXXXXXXXXXXXXXXX
    at com.intuit.qbmsconnector.jaxb.JaxbResponseExtractor.processSignonNode(Unknown Source)
    at com.intuit.qbmsconnector.jaxb.JaxbResponseExtractor.unmarshal(Unknown Source)
    at com.intuit.qbmsconnector.jaxb.JaxbResponseExtractor.extractCreditCardChargeResponse(Unknown Source)
    at com.intuit.qbmsconnector.jaxb.JaxbQbmsConnector.creditCardCharge(Unknown Source)
    at qbo.MyPayment.main(MyPayment.java:30)

这个错误:

Application agent not found TGT-XXX-XXXXXXXXXXXXXXXXXXXXXX

通常表示1或2件事:

  • 您未使用有效的连接凭单(是您使用的实际连接凭单,还是您对连接凭单进行了XXX?)

要么

  • 您使用的是有效的连接票证,但您在错误的环境中使用它。 在PTC环境中生成的连接票证不适用于生产环境,反之亦然。 您是否为PTC或生产生成了连接票证?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM