问题标签 [apache-commons-scxml]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Commons SCXML - 强制跳转到给定状态
我正在使用Apache Commons SCXML,我想知道是否可以告诉状态机 (SCXMLExecutor) 跳转到给定状态。
我不能使用该initialstate
属性,因为我希望状态机恢复(即从电源故障中恢复),而我唯一拥有的就是最后一个状态。这就是为什么我想告诉状态机直接跳转到它。
java - 状态机中的动态目标
在使用 SCXML 制作的状态机中,有没有办法为转换设置动态目标值?
我的意思是,假设我有一个名为“obj”的对象,它已被设置为 scxml 的数据模型。因此可以在其上设置条件(如果对象中有一个名为 checkCondition 的属性),例如:
cond="obj.checkCondition"
我在 obj 中有另一个属性,称为 nextTarget。我想在这个转换中设置目标,从对象中读取它的值(因为它在条件中完成)。
有什么语法可以做到这一点吗?
谢谢。
java - Commons SCXML 问题
我一直在考虑 Commons SCXML 的实现。看起来很全面,但我有一些不清楚的地方。
在我看到的所有示例中,状态机的状态基本上是扩展AbstractStateMachine类的类的方法。
对于小型状态图,这是可以的,但对于有很多状态的机器(像在 BCSM 中),这是一个矫枉过正的做法。
默认情况下是否有可能将状态表示为类(又名 StateMachine 是状态的组合)?
java - 在 scxml 中引发事件的问题
我在使用以下 scxml 代码时遇到问题:
它工作正常,但是当我添加了 onentry 元素时,处理器会说以下内容:
似乎 raise 不被理解。我试图用“发送”元素来改变“提高”元素,我得到了类似的日志警告。谁能告诉我可能出了什么问题?
谢谢。
更新
我试图改变架构,避免像这样嵌入 if 元素:
但它也给出了以下错误:
java - Apache Commons SCXML - 找不到 JexlContext
我是 SCXML 的新手,我什至无法启动最简单的应用程序。当我尝试启动它时,出现以下异常。但是我commons-scxml-0.9.jar
在类路径上有那个类的库。有任何想法吗?
这是代码:
Main class
Event
StateMachineImpl
state-machine-cfg.xml
编辑 - 解决方案: 我必须添加额外的依赖项(我认为它们会由 Maven 自动加载)。
pom.xml dependencies
java - Apache Commons SCXML 有什么替代品吗?
我正在寻找一个好的通用状态机,到目前为止我已经找到了 SCXML。它使用起来非常简单(我的意思是配置),但源代码过时 - 没有类型安全,所有集合都是原始类型。我不必说要找到这些集合中实际存储的内容有多么困难。那么有没有现代的替代品呢?
android - 用于建模表示多模式用户界面的状态图的可视化编程工具
是否有任何可视化编程工具来建模表示多模式用户界面的状态图?我想构建一个 android 和 windows metro 应用程序,它接收来自触摸和语音的输入。该应用程序通过问卷引导用户在医疗保健场景中进行筛查。用户可以在文本框中输入文本或通过触摸按钮或说话来生成事件。
我发现状态图用于模拟反应系统行为,例如最初由其创建者 David Harel 使用的航空电子系统,其任务是为以色列飞机工业公司制造的 LAVI 战斗机设计软件;IAI 清晰准确地指定飞机控制行为。他想以一种直观清晰且数学严谨的方式来指定行为。从那时起,状态图就从单纯的规范语言发展成为可执行、可编译和可分析的语言。
由于我要构建的应用程序具有复杂的医疗保健逻辑,并且由屏幕流的层次结构组成,该层次结构会根据交互用户的输入发生变化,将操作发送到外部 Web 服务并从外部 Web 服务接收异步事件——所有这些都在用户界面中保持响应性,我想到了用状态图对应用程序逻辑进行建模。但是,我找不到可以让我分别编写应用程序业务逻辑和 UI(不仅仅是屏幕界面组件)的编程工具。例如,如果我想在 html5/ mxml中表示 UI和在scxml中的业务逻辑。
我找到了几个工具,但没有一个与我的应用程序要求相对应。主要是没有这样一个应用程序的设计示例,将状态图中的行为和某种形式的标记语言的 UI 表示明确分离。我的发现:
- IBM Rational Statemate是一个图形化设计、模拟和原型设计工具,用于快速开发复杂的嵌入式系统
- IBM Rational Rhapsody - 基于 UML 的建模环境,是系统工程师的可视化开发环境,具有 UML 状态图
- Apache scxml 编辑器:仅用于建模scxml的 Gsoc 项目
- Qt 状态机框架,但没有分离行为和用户界面的状态图
- W3C Multimodal Architecture也有一些设计理念,以及scxml+xhtml
java - SCXML,我不能在事件中使用 fireEvent
我正在使用 Apache Commons SCXML 创建 FSM。使用来自 Apache 的示例 StopWatch,我创建了一个 FSM。
SCXML:
主程序:在主程序中,想法是不触发任何事件。
密克罗尼西亚联邦:
我的问题是,为什么在 FSM 类中,我无法执行该方法:
但是如果我在主程序中执行方法,我没有任何问题。
任何想法。
当前控制台:
java - 运行 Apache SCXML 引擎时出现异常。参数类型不匹配 -
我正在使用 apache commons scxml 引擎运行微波炉 scxml 。我有扩展 AbstarctStateMachine 的自定义类
现在当创建这个类的一个实例时,我得到一个异常
我知道这与我的数据模型有关,因为数据模型不被视为 XML 节点,