【问题标题】:How can I get the current view-state id of a Web Flow inside a JSP?如何在 JSP 中获取 Web Flow 的当前视图状态 ID?
【发布时间】:2013-07-30 17:24:28
【问题描述】:

我在我的 WebFlow 中为两个不同的视图状态使用相同的 jsp。

  • 第一个视图状态用于添加记录。
  • 第二个用于编辑已添加的记录(从概览页面返回时)

我不想为 2 个视图状态复制 jsp,因为 99% 的代码都是通用的。

我希望获得视图状态的 id(名称),以便在 EL 中将其用于一些基本的 if / choose 逻辑。

如何在 jsp 中获取视图状态的 ID(名称)?

【问题讨论】:

    标签: spring jsp el spring-webflow


    【解决方案1】:

    获取当前视图状态的名称(id)的解决方案是:

    ${flowRequestContext.currentState.id}
    

    【讨论】:

      【解决方案2】:

      试试

      <c:out value="${flowExecutionContext.activeSession.state.id}"/>
      

      【讨论】:

      • 不幸的是这不起作用,结果只是空的。我想知道 flowExecutionContext 来自哪里,它似乎不存在于我的基于 jsp 的视图中。
      • 这在我的流程中运行良好。 flowExecutionContext 是特殊的 Spring 变量,参见static.springsource.org/spring-webflow/docs/2.0.x/reference/…。如果配置正确,您应该可以在流程中使用它
      • 在玩了你的解决方案之后,我发现 有效,但只有在我进入流程之后。当移动到随后的视图状态时,它又是空的。我正在调查更多。
      • flowExecutionContext 本身似乎也未在我的 JSP 中设置。不明白为什么
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-09-22
      • 1970-01-01
      • 2011-01-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多