Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Spring 如何在JSP中获取Web流的当前视图状态id?_Spring_Jsp_El_Spring Webflow - Fatal编程技术网

Spring 如何在JSP中获取Web流的当前视图状态id?

Spring 如何在JSP中获取Web流的当前视图状态id?,spring,jsp,el,spring-webflow,Spring,Jsp,El,Spring Webflow,我在WebFlow中对两种不同的视图状态使用相同的jsp 第一个视图状态用于添加记录 第二个用于编辑已添加的记录(从概览页面返回时) 我不想为这两个视图状态复制jsp,因为99%的代码是通用的 我更愿意获取视图状态的id(名称),以便在EL中使用它来实现一些基本的if/choose逻辑 如何在jsp中获取视图状态的id(名称)?试试看 <c:out value="${flowExecutionContext.activeSession.state.id}"/> 获取当前视图状态

我在WebFlow中对两种不同的视图状态使用相同的jsp

  • 第一个视图状态用于添加记录
  • 第二个用于编辑已添加的记录(从概览页面返回时)
我不想为这两个视图状态复制jsp,因为99%的代码是通用的

我更愿意获取视图状态的id(名称),以便在EL中使用它来实现一些基本的if/choose逻辑

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

试试看

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

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

${flowRequestContext.currentState.id}

不幸的是,这不起作用,结果只是空的。我想知道flowExecutionContext从何而来,它似乎不存在于我基于jsp的视图中。这在我的流中工作得很好。flowExecutionContext是特殊的Spring变量,请参阅。如果配置正确,您的流中应该有可用的配置。在使用您的解决方案之后,我发现它可以工作,但只有在我进入流之后。当移动到后续视图状态时,它再次为空。我正在进一步调查。
flowExecutionContext
本身在我的JSP中似乎也没有设置。不明白为什么