嗨!
我在 Spring Web 流中集成了 Paypal 支付。
该应用程序使用 externalRedirect 将请求转发到 PayPal 网站。(setExpresscheckout) 用户登录到 PayPal 并为该项目付款。用户完成支付后,paypal 会将请求转发回流程。一旦请求从 PayPal 返回,是否有办法在流程中输入特定的视图状态?
我试过这个,但不起作用:
这是 paypalcontroller 的一部分,我在其中将返回 url 设置为 paypal:
private void sessionmanager(RequestContext context) {
HttpServletRequest request = (HttpServletRequest)context.getExternalContext().getNativeRequest();
//generate Spring Webflow return URL
String url = request.getRequestURL()+";jsessionid="+ request.getSession().getId() + "?" +
request.getQueryString();
String paypalCancelUrl = url + "&_eventId=end-state";
String paypalApprovedUrl = url + "&_eventId=approved";
}
流.xml:
<view-state id="view-state-1" view="sampleflow/view-state-1">
<transition on="success" to="view-state-2"/>
<transition on="cancel" to="end-state"/>
<transition on="approved" to="view-state-2"/>
</view-state>
这是会话管理器代码生成的 url,paypal 重定向到它:
http://localhost:8080/testpaysys/sampleflow;jsessionid=D693C9D4A2681CA6FF18E7C7078EA971?null&_eventId=approved
批准的 eventID 似乎不起作用,我进入流程,但进入了起始状态。(不重定向到状态 2)
我错过了什么?