首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >方法未找到--使用GoCardless ColdFusion库和ColdFusion

方法未找到--使用GoCardless ColdFusion库和ColdFusion
EN

Stack Overflow用户
提问于 2013-07-15 10:31:32
回答 1查看 405关注 0票数 2

我正在尝试使用GoCardless库(如这里的文档guide#installation-and-setup)在ColdFusion中实现它们的订阅。我对在ColdFusion中使用Java非常陌生,并且我得到了以下错误:

没有找到newSubscriptionUrl方法--要么没有指定方法名和参数类型的方法,要么newSubscriptionUrl方法重载了ColdFusion无法可靠解密的参数类型。ColdFusion找到了与提供的参数匹配的0种方法。如果这是一个Java对象,并且您验证了该方法的存在,那么使用javacast函数来减少歧义。

产生错误的代码如下:

代码语言:javascript
复制
<cfset GoCardless = createobject("java","gocardless.GoCardless")>

<cfset GoCardless.environment = GoCardless.Environment.SANDBOX>

<cfset GoCardless.accountDetails.setAppId("My app ID")>
<cfset GoCardless.accountDetails.setAppSecret("My app secret")>
<cfset GoCardless.accountDetails.setAccessToken("My access token")>
<cfset GoCardless.accountDetails.setMerchantId("My merchant ID")>

<cfset monthlyAmount = 35>
<cfset subscription = createobject("java","gocardless.connect.Subscription").init(
GoCardless.accountDetails.getMerchantId(),
javacast("bigdecimal",monthlyAmount),
1,
"month"
)>

<cfset GoCardless.connect.newSubscriptionUrl(subscription)>

我的第一个想法是,订阅对象不是newSubscriptionUrl方法的正确类型,但我不认为是这样的,因为当我转储GoCardless.connect时,它显示了以下内容:

这表明传递给newSubscriptionUrl方法的第一个参数应该属于gocardless.connect.Subscription类。

当我转储订阅对象时,它会显示确实是这样的:

就像我说的那样,我对在ColdFusion中使用Java并不熟悉,所以我不知道是什么原因导致了这个问题,也不知道到目前为止我编写的代码是否正确。任何帮助都将不胜感激。

谢谢,迈克尔。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-07-15 10:50:19

该方法的签名如下:

代码语言:javascript
复制
newSubscriptionUrl(Subscription, String, String, String)

但是,您将其称为:

代码语言:javascript
复制
newSubscriptionUrl(Subscription)

因此出现了错误消息。您需要确保按预期调用该方法。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17652124

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档