Short:是否可以在Papyrus中创建层次式(嵌套)状态图,然后使用它来构建工作状态机实例?
解释道:
没有嵌套状态的简单示例如文件所示正在正常工作。
我尝试了两种创建嵌套状态的方法:
在这两种情况下,创建的statemachine都不识别子机状态。
当我用以下代码列出应用程序中的所有状态时:
public List<String> getAllStates() {
List<String> list = new ArrayList<>();
Collection<State<String, String>> states = machine.getStates();
for (State state : states) {
Collection<State<String, String>> substates = state.getStates();
for (State<String, String> substate : substates) {
list.add(substate.getIds().toString());
}
}
return list;
},它只列出了初始化和处理两种状态。当我发送事件时,机器进入从初始化到处理,而不是处理,准备。
我是做错了什么,还是试图做一些甚至没有由Statemachine实现的事情?也就是说,是否可以只从UML图创建一个级别的状态机?
编辑:
感谢Janne Valkealahti阅读了这个问题,并确保了spring-statemachine有这样的选择。
这似乎毕竟是我的错,但我不知道在哪里和如何(几个相似的图表被创建/编辑,但没有成功)。它可能与昨天发生在我的Fedora 24上的Papyrus / Eclipse警告和错误有关。今天,在从头开始创建新的图表之后,一切都如期而至。下面是新的、工作的、图表,状态机列出了所有的状态和子状态。
发布于 2016-08-03 07:51:04
链接子机还不能工作,但是在对UML子状态机#121的支持中正在工作。
当您尝试时,需要在一台机器内配置子状态。这方面的Uml测试源位于simple-submachine.uml。如果您发布了您的uml,我可以查看是否有任何明显的遗漏(或者将所有3个纸草记录文件、di、符号、uml)放在某个地方(可能是github gist ),这样我就可以在纸莎草中打开它。
https://stackoverflow.com/questions/38718765
复制相似问题