问题标签 [spring-statemachine]

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.

0 投票
1 回答
1146 浏览

java - 使用 spring-statemachine 和 spring cloud slueth 时出现 BeanNotOfRequiredTypeException

我目前正在使用 spring-boot 开发微服务。我目前在同时使用 spring-state machine 和 spring-cloud-sleuth 工件时遇到问题。

}

在我添加 spring-cloud sleuth 的依赖项之前我没有任何问题,当我开始执行“mvn clean install”时弹出错误。

错误堆栈跟踪:

错误消息 org.springframework.beans.factory.BeanCreationException: Error Creating bean with name 'stateMachine': Invocation of init method failed; 嵌套异常是 org.springframework.beans.factory.BeanNotOfRequiredTypeException:名为 'stateMachineTaskExecutor' 的 Bean 应该是 [org.springframework.core.task.TaskExecutor] 类型,但实际上是 [org.springframework.cloud.sleuth.instrument .async.LazyTraceExecutor]

这是具有两个依赖项的 pom.xml 文件

我应该如何让 spring 应用程序上下文知道它必须加载哪种类型?因为这两个类都使用 java util 包中的相同执行器。

java.util.concurrent.Executor

0 投票
1 回答
261 浏览

spring-statemachine - Spring 状态机作为消息总线

我目前正在检查弹簧状态机作为自定义服务总线的实现。我有 2 个问题:

  1. 如何基于计时器配置转换,其中时间将基于模型。例如:如果我想将消息传递延迟到模型对象的开始时间(并且在不同的消息中可能不同)。那是我自己没有实施调度。
  2. 我喜欢这个 API,但它适合弹簧状态机(性能方面),以实现消息总线,在某些情况下每秒处理数百(甚至数千)条消息。

谢谢

0 投票
1 回答
1577 浏览

spring-statemachine - spring状态机可以支持多配置吗?

在我的项目中,我遇到了问题;我有很多场景需要支持多状态配置,比如需要定义创建订单状态机,还需要定义创建商品状态;那么有人可以告诉我如何使用弹簧状态机吗?

我已经使用@EnableStateMachineFactory并定义了

@Configuration @EnableStateMachineFactory @SuppressWarnings("all") public class OrderHoldConfiguration extends EnumStateMachineConfigurerAdapter<HoldState, HoldEvent> { ... }

@Configuration @EnableStateMachineFactory public class JsdConfiguration extends EnumStateMachineConfigurerAdapter<BizState, BizEvent> { ... }

但它不起作用,我应该使用哪种方式?

0 投票
1 回答
142 浏览

spring - 为什么网站首页没有列出 Spring Statemachine 项目?

在亲眼目睹了为我工作场所的一个项目提供的巨大效用之后,我最近想到了深入研究各种 Spring 项目。我们使用 Spring Statemachine项目来实现购物车生命周期。这是我的一位同事在查找代码示例以在 Java中实现状态模式时提出的建议。此外,我已经独立使用Spring for Android来实现我的第一个 Android 应用程序。

但是,在访问 Spring 主页时,我无法看到其中列出的 Spring Statemachine 项目。此外,离线文档中也没有提到它,尽管有相同的.

我有两个问题:

  1. 在哪里可以找到 Spring 提供的所有各种项目的完整列表?我尝试咨询他们的 Github 页面,但是(例如)“Kafka”对 repos 的过滤器返回了两个 不同的 repos(仅供参考,项目页面重定向到第二个 URL)。我希望有一个全面的资源,比如所有 Apache 项目的 Wikipedia 页面
  2. 为什么首页没有列出Statemachine项目?是否有一些标准导致某些项目被列在那里,而有些则没有?

谢谢你

0 投票
1 回答
1220 浏览

spring-statemachine - Spring 状态机持久化

我正在测试 Spring Statemachine,特别是我对应用状态机来管理我的对象的状态很感兴趣。

我的状态机是StateMachine<EpisodeState, EpisodeEvent>.

我的业务对象Episode有一个类型为 的枚举属性 ( state) EpisodeState,它应该保存剧集的状态机状态。我有一个批处理过程,它将在初始化时获得一个 Statemachine 实例。我想遵循基本流程:

  • Episode从数据库加载一个
  • EpisodeState从该Episode实例中的状态机设置当前状态。
  • 向状态机发送事件。
  • 从 Statemachine(发布事件)获取结果状态并EpisodeState在我的Episode实例中设置。
  • 保存Episode实例。

文档提到了一个extendedState属性,在我的测试中它是空的,但似乎支持任意对象的映射,我想我可以用它来保存我的主键Episode,但我不知道如何设置当前状态将状态机的EpisodeState值转换为Episode.

我已经StateMachineInterceptorAdapter<EpisodeState, EpisodeEvent>preEvent.

0 投票
0 回答
62 浏览

uml - Spring UML 引用的子机不工作

是否有 http://docs.spring.io/spring-statemachine/docs/current/reference/htmlsingle/的第 31.16 节中显示的 Spring UML 子机参考的工作示例

就我而言,似乎sub statemachine从未输入过引用的内容。

0 投票
1 回答
537 浏览

spring-statemachine - Spring Statemachine 重置状态不触发进入动作

配置代码

states .withStates() .initial(OrderState.Create) .state(OrderState.Create, startAction) .state(OrderState.Payed, paymentAction) .states(EnumSet.allOf(OrderState.class));

运行代码

stateMachine .getStateMachineAccessor() .doWithAllRegions(access -> { access.resetStateMachine(new DefaultStateMachineContext<> (OrderState.Payed, null, null, null, null)); }); stateMachine.start();

paymentAction 启动时未触发,如何触发

0 投票
1 回答
45 浏览

spring-statemachine - or 语句/条件开始

我缺少一些基本的东西。这是我的伪场景:

假设我的流程可以从状态 A 或状态 B 开始。如果流程从状态 A 开始,那么它应该转换到状态 B 触发事件 S。如果流程从状态 B 开始,那么它应该转换到状态 A 触发事件 D。我该怎么做建立这样的配置?

0 投票
1 回答
303 浏览

spring - Spring 子状态机不启动

我一直在开发一个包含状态机的程序。它现在变得过于复杂,我一直在等到添加子机 UML 支持。但是即使我按照1.2.2参考文档中的说明进行操作,子机也不会启动。机器在“测试”状态下挂起。请参考所附的uml文件链接

https://drive.google.com/open?id=0B9PT7E5L1ac9dmNRSUVfZ3JfcTA

有没有办法在应用程序启动时启动所有子机。只有父机器启动

0 投票
1 回答
574 浏览

spring - Spring子状态机退出点到父机器

我已经成功地实现了一个状态机和一个带有初始参考的子机。现在我被困在一个我无法考虑将退出点链接到它的任何方式的点上。给出了我的模型的链接。

https://drive.google.com/open?id=0B9PT7E5L1ac9LTZlZWV5bWx1V1U

https://drive.google.com/open?id=0B9PT7E5L1ac9RnR6UUtrMkRoZE0

如果你看一下,我已经从“DirectQuery”状态引用了一个子机(在父机-img2 中标记为红色)。现在我在将出口点链接到父节点时遇到问题。如果有两个出口点,我该如何处理它们?