2013-02-12 43 views
-1

Spring web流转换根本不起作用。只加载第一个视图状态。但点击任何转换状态后,流程将再次刷新,第一个视图再次加载。虽然,相同的流xml和相同的设置在我的朋友机器中工作正常。这怎么可能?同一个流(流xml)在一个系统中工作正常,而不是另一个。有没有人遇到这种类型的问题?任何帮助是极大的赞赏。谢谢!!!Spring Web Flow - 任何转换都会刷新流程

---------------------------- 

What I was able to see is that, whenver a transition is triggered, it returns http status 302 rather than 200. Hence it defaults to flow start. 

Can anyone help me here pls.. 
+0

你能提供一些代码和指示你已经尝试过吗? – 2013-02-12 15:25:17

+0

添加上面的代码。 – Ruud 2013-02-12 17:00:49

+0

请发表您的看法。您的表单中可能没有包含所需的SWF字段。此外,HTTP代码302完全正常,SWF使用它将您重定向到webflow中的下一步 – rootkit 2013-02-12 17:21:07

回答

1

我们能够找出问题所在。对于每个事件,SWF使用JSESSIONID。如果该cookie不是从浏览器发送回服务器,它假定没有有效的会话,并重定向到第一页(流程启动)。这可以在代码或容器级别修复。 JESSIONID cookie不应该是HttpOnly。要么这可以在应用程序服务器中完成(在我的情况下是Websphere,不确定其他服务器是否有此选项)。否则,在代码中有一个过滤器来获取JSESSIONID cookie并执行此cookie.setHttpOnly(false);

Firebug是识别这类问题的最佳工具。 :)

+0

是的,我打算说这听起来像你在使用你的会话。然而,除非你特别使用JavaScript来浏览,否则不应该是cookies不能是HttpOnly。那么,当然,HttpOnly必须是假的。 – dbreaux 2013-02-13 13:54:45