阿贾克斯+春天的Webflow(Ajax + Spring Webflow)

2019-06-24 11:17发布

首先,我使用访问Spring WebFlow和一些春天的JavaScript,使AJAX调用更加容易。

截至目前,我有AJAX拨打电话到一个Webflow显示相应的片段。

所以我尝试使用Spring.AjaxEventDecoration我为我的应用AJAX的需求。 不过,我有一些麻烦,用这种方法和Webflow的,从我所知道的,有可用的例子非常少的工作。

在一个侧面说明,我没有使用窗体或一个选择框。 我以为我会提到这一点,因为我已经找到了使用的表单/表格点击数事件或选择框onchange事件提交每一个例子。

主要问题 :如果我在我的Webflow有参数从我的阿贾克斯未来的方法,可我居然传递从阿贾克斯的参数Webflow的?

码:

<transition on="disassociateProperty" >
     <evaluate expression="dService.disassociateProperty(requestParameters.currentPId ,currentD)"  result="flowScope.currentD" />
<render fragments="PList" />
</transition>

所以,当我看到在萤火Ajax调用,它具有参数我传递(currentPId)和正确的事件ID。

我穿上disassociateProperty方法的第一线调试点,它告诉我currentPId为空。

所以我会承担requestParameters.currentPId在一个Webflow不是从Ajax调用拉动currentPId。

这个预期? 谁能解释和举个例子?

我将不胜感激提供任何帮助。

亚当

Answer 1:

如果您认为问题来自Ajax调用,如果你写在这里的Ajax调用这将是有益的,这样我们就可以检查呼叫正在做正确。

你可以尝试通过做Ajax调用时的数据参数序列化形式 。 另外,不要忘记添加ajaxSource参数中的URL。 希望这有助于。

HTML例子:

<form id="formId" method="post" action="${flowExecutionUrl}&_eventId=disassociateProperty">
    <input type="text" id="currentPId" />
</form>

jQuery的实施例:

$.ajax({
        type: "POST",
        data: $("#formId").serialize(),
        url: $("#formId").attr("action") + "&ajaxSource=true",
        ...
});


文章来源: Ajax + Spring Webflow