我用,
redirectAttributes.addFlashAttribute("msg","Level complete")
访问重定向的jsp上的消息。
当我重定向到Webflow时,如何使用此重定向属性?
答案 0 :(得分:0)
当使用flash属性将数据从一个控制器发送到Webflow时,我们必须将重定向的flash属性(从控制器)绑定到Webflow的响应JSP页面。为此,我们可以维护一个后端FormAction类,将值绑定到任何webflow范围。在flow xml中,我们可以在输入视图状态时调用自定义方法。
FormAction类的自定义方法就像
public void setupReferenceData(RequestContext context) throws Exception {
HttpServletRequest request = (HttpServletRequest) context.getExternalContext().getNativeRequest();
Map<String, ?> inputFlashMap = RequestContextUtils.getInputFlashMap(request);
if (inputFlashMap != null) {
String flash = (String) inputFlashMap.get("flash");
context.getRequestScope().put("flash1", flash);
}
}
此方法调用应包含在视图状态的条目部分中。所以flow xml应该有这些部分。
<view-state id="request" view="hello">
<on-entry>
<evaluate expression="requestAction.setupReferenceData" />
</on-entry>
<transition on="next" to="helloend"/>
</view-state>