我们有一个庞大的企业应用程序,其中用户通过应用程序注册,数据输入以及最终基于数据处理的一些结果进行导航。目前导航逻辑在java类中处理;根据输入的数据,用户操作等,导航到的下一页将在每一步确定。
我们决定实施spring web flow来实现导航。但是,我们不确定是否可以预先涵盖所有可能的方案,并在考虑所有方案的情况下创建流程。
因此,我们正在寻找一种方法,可以根据应用程序中的不同条件在运行时动态创建流。我们如何在SWF中实现这一目标?任何帮助都将受到高度赞赏。
答案 0 :(得分:1)
在幕后,Spring WebFlow使用流注册表(FlowDefinitionRegistryImpl)来处理url到内部资源的映射。在内部,流注册表(最终)是一个围绕哈希映射的包装器。
我相信在运行时定义的流程超出了Spring-weblow开箱即用的范围。
但是,在给定企业资源的情况下,您可以扩展FlowDefinitionRegistryImpl或使用行为与您想要的自定义类实现FlowDefinitionRegistry,并允许您动态更改流程#34;。您需要注意性能和同步,并定义刷新底层Map的机制。