JBoss / Java的状态机框架?

时间:2008-11-04 19:17:32

标签: java frameworks fsm

我们正在开发一个涉及许多不同测试的应用程序,其中每个测试都会引导用户执行许多步骤。我们正在考虑使用状态机框架来捕获代码中的状态/转换。我们也在考虑使用规则引擎来补充规则。任何人都有使用JBoss和/或Java的任何状态机框架的经验吗?提前谢谢。

-nguyen

8 个答案:

答案 0 :(得分:3)

jbpm这样做并且与jboss很好地集成。根据我的经验,它非常易于使用且功能强大。

答案 1 :(得分:3)

您可能需要查看StatefulJ。它基于Spring Data for Persistence支持,State Model本身使用Annotations定义。这种方法使得设置和维护与XML相比更容易。关于规则 - 我过去使用过Drools并且似乎得到了很好的支持。

免责声明:我是StatefulJ的作者

答案 2 :(得分:1)

如果您要构建一些基于屏幕转换的屏幕系统,那么您应该明确查看Spring WebFlow http://springframework.org/webflow

答案 3 :(得分:1)

我在使用ragel构建易于维护的状态机方面有很好的经验。生成的java代码质量非常高。但是,它纯粹是一个没有特定用途的状态机生成器,因此您可能会发现其他解决方案可以在Web相关问题域中更加无缝地工作。

答案 4 :(得分:1)

也许你可以看看JBoss PVM。它仍处于alpha状态,但可用于建模任何类型的状态机。我们也在研究gui过渡。

http://www.jboss.org/jbossjbpm/pvm

答案 5 :(得分:1)

尝试Activiti,似乎很多人都在使用它。 http://activiti.org

对于规则引擎部分,您当然可以使用Drools。

答案 6 :(得分:0)

查看StateBuilderJava,这是一个状态机代码生成器,它将状态机的XML描述转换为Java状态模式的扩展版本。它支持所有UML语义:状态机可以是分层的,并发的和异步的。

每个测试场景都可以使用状态机Xml描述进行建模,代码生成器会代表您编写状态模式,如果手动完成,这将是乏味且容易出错的。

另一个优点是使用图形工具可视化和编辑测试场景。 这允许快速实现和记录一组测试场景。 在这些示例中,编写了一个XMPP客户端的测试套件,以说明如何使用状态机代码生成器轻松快速地编写复杂的测试场景。

免责声明:我是这些软件的作者。

答案 7 :(得分:0)

我使用过activiti。 这是最好的框架。 它是一个轻量级的工作流程和业务流程管理(BPM)平台。 开源并适用于任何Java平台或云。 所有人都需要具备BPMN,Maven,Spring和Activiti的知识。