You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Braintree Java API获取UsBankAccount支付方式的更新日期?

解决Braintree UsBankAccount无getUpdatedAt()方法的构建错误

问题场景

  • 信用卡支付方式获取更新日期的代码可正常运行:
CreditCard card = (CreditCard) paymentMethodToken;
Calendar cal2  = card.getUpdatedAt();
  • 但美国银行账户(UsBankAccount)调用getUpdatedAt()触发Maven构建错误:
UsBankAccount usBankAccount = (UsBankAccount) paymentMethodToken;
Calendar cal3  = usBankAccount.getUpdatedAt();
  • 错误信息:

/C:/lplr/zmmpnb/JavaProject/src/main/java/org/nazarene/zmmpnb/ZGLOBAL1_Operation.java:[1439,40] cannot find symbol
[ERROR] symbol: method getUpdatedAt()
[ERROR] location: variable usBankAccount of type com.braintreegateway.UsBankAccount

已导入com.braintreegateway.*;,且确认Braintree Java仓库中UsBankAccount类无该方法,但官方开发者文档显示该方法是UsBankAccount的属性之一。

解决方案

  1. 升级Braintree SDK版本
    你当前依赖的SDK版本过低,getUpdatedAt()方法是后续版本新增的功能。查找Braintree版本更新日志确认该方法引入的版本号,然后在pom.xml中更新依赖:

    <dependency>
        <groupId>com.braintreegateway</groupId>
        <artifactId>braintree-java</artifactId>
        <version>对应版本号</version>
    </dependency>
    
  2. 匹配文档与SDK版本
    官方文档通常对应最新版SDK,若你使用旧版,文档中的方法可能尚未实现。确保查看的文档版本和项目依赖的SDK版本一致。

  3. 通过父类PaymentMethod获取
    若暂时无法升级SDK,可尝试通过父类PaymentMethod获取更新日期(CreditCard和UsBankAccount均继承自该类):

    PaymentMethod paymentMethod = (PaymentMethod) paymentMethodToken;
    Calendar cal3 = paymentMethod.getUpdatedAt();
    

内容的提问来源于stack exchange,提问作者Ken P

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.07 10:00:18