Java / Spring Webflow将数据从流传递到另一个

问题描述

我正在尝试将数据从Weblow A发送到Webflow B 所以我有一个收集数据的功能

public void affDeclaFromrowNum(String rowNum,RequestContext context){
    Declaration decla = null;
    Def def = null;

    if (rowNum != null && StringUtil.isNumeric(rowNum))
    {
        Collection<Declaration> listDeclas = getDeclasListFromContext(context);
        decla = RowModel.getIndexedRow(listDeclas,Integer.valueOf(rowNum));
    }
    if (decla != null && decla.getId() != null)
    {
        def = decla.getDef();
    }
    context.getFlowScope().put("def",def);
    context.getFlowScope().put("defSelected",def);
    context.getFlowScope().put("tabSelected","declaration");       
}

(当我处于调试模式时,代码中的数据不为空)

我有一个流程(A)

  <view-state id="declaration.list" view="declaration.list.depot" redirect="true">
    <transition on="edit" to="viewDeclaration" bind="false" validate="false" >
            <evaluate expression="declarationRechercheFormAction.affDeclaFromrowNum(requestParameters.rowNum,flowRequestContext)" />
    </transition>        
    <transition on="retour" to="declarationSearchView" validate="false" bind="false" />
    <transition on="retourSearch" to="declarationSearchView" validate="false" bind="false" />
  </view-state>
 
  <end-state id="viewDeclaration" view="externalRedirect:contextRelative:/def/flux.ex?_flowId=def-view-flow" >
        <output type="commun.bean.hibernate.Def" name="defSelected" value="flowScope.defSelected" /> 
        <output type="java.lang.String" name="tab" value="flowScope.tabSelected" /> 
  </end-state>

还有一个流程(B)

<!-- Parametre d'entrée du flow -->
  <input name="defSelected" required="true" />
  <input name="tab" />

但是,当我执行代码时,总是会出现此错误: org.springframework.webflow.engine.FlowInputMappingException:“ def-view-flow”流启动时在输入映射期间发生错误;在org.springframework上,错误= [[requiredError @ 40e613fc映射= defSelected-> flowScope.defSelected,代码='必需',错误= true,errorCause = [null],originalValue = [null],mappedValue = [null]]]。 webflow.engine.Flow.start(Flow.java:523)

有人可以帮助我吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)