我使用 Stripe plugin for Grails ,Grails版本 2.5.1 我无法成功完成任务我总是得到{{1如控制器中所示,我注意到There was an error processing your credit card.
方法未定义,如屏幕截图
我尝试导入Charge
,但我得到com.stripe.Stripe
。
以下是行动:
unable to resolve class com.stripe.Stripe
答案 0 :(得分:0)
试试这个,
在构建配置中添加:
plugins {
...
compile "org.grails.plugins:stripe:2.8"
...
}
在您的控制器中:
package stripesample
import com.stripe.model.Charge
import com.stripe.exception.CardException;
class CheckoutController {
def index() {}
def charge(String stripeToken, Double amount) {
def amountInCents = (amount * 100) as Integer
def chargeParams = [
'amount': amountInCents,
'currency': 'usd',
'card': stripeToken,
'description': 'customer@sample.org'
]
def status
Charge chargeStatus
try {
chargeStatus = Charge.create(chargeParams)
println chargeStatus
status = 'Your purchase was successful.'
} catch(CardException) {
println status
status = 'There was an error processing your credit card.'
}
render view: "confirmation", model:[msg: status,chargeObject:chargeStatus]
return
}
}
在主布局文件中:
<html>
<head>
<g:javascript src="stripe-v2.js" />
<r:layoutResources/>
</head>
<body>
<g:layoutBody/>
<r:layoutResources/>
</body>
</html>
在您的信用卡表格中查看:
<!DOCTYPE html>
<html>
<head>
<meta name="layout" content="main"/>
</head>
<body>
<h3>Checkout</h3>
<stripe:script formName="payment-form"/>
<g:form controller="checkout" action="charge" method="POST" name="payment-form">
<div class="payment-errors"></div>
<div class="form-row">
<label>Amount (USD)</label>
<input type="text" size="20" autocomplete="off" id="amount" name="amount"/>
</div>
<stripe:creditCardInputs cssClass="form-row"/>
<button type="submit">Submit Payment</button>
</g:form>
</div>
</body>
</html>
在我的案例checkout / confirmation.gsp
中的同一控制器文件夹中创建另一个视图<!DOCTYPE html>
<html>
<head>
</head>
<body>
<h3>Checkout</h3>
<p>${msg}</p>
<p>Data: </p>
<p>${chargeObject}</p>
</body>
</html>
运行grails clean
然后,
运行grails run-app
如果您需要测试示例应用,可以在此处克隆我的应用:Sample App
答案 1 :(得分:0)
我在eclipse中做了“刷新依赖关系”,并且一切正常
答案 2 :(得分:0)
问题是关于Grails 2.5.x.该插件不适用于Grails 3.x.x.我得到了它的工作,并发布了一个在线教程。有一个完整的,可用的Grails 3.2.3应用程序可供下载。它还实现了购物车。该页面是:http://www.databaseapplications.com.au/stripe_payments.jsp