当前位置: 首页 > 知识库问答 >
问题:

Axon服务器命令不包含路由密钥

丘飞
2023-03-14
data class CreateTravelProductCommand(
    @TargetAggregateIdentifier val id: String,
    val productCreator: String
)

val id: String = ObjectId.get().toString()
val command = CreateTravelProductCommand(id=id, productCreator=request.creator)
commandGateway.sendAndWait(command)

但我的命令出错了。

编辑:

我刚刚发现,如果你把类保留在同一个项目中,这是可以的。

我的项目依赖于另一个叫做API的项目。

dependencies {
    compile project(':api')
}

如果在api项目中声明类,axon服务器库将抛出找不到路由密钥的错误。但是如果类是在主项目中声明的,它就会按照预期工作。我想我应该把这个问题提交到GitHub上。

共有1个答案

栾鸣
2023-03-14

这其实和Kotlin的关系更大,而不是轴突。Axon在Field或Getter方法中需要它们。显然,这不是Kotlin认为他们是默认的地方。

查看https://kotlinlang.org/docs/reference/annotations.html#annotation-use-site-targets

您可能需要使用@Get:TargetAggregateIdentifier对属性进行注释

 类似资料:
  • 我正在开发SpringBootAxonCQRS示例。在本例中,当敲击到 curl-H“内容类型:application/json”-d'{“company”:“apple”,“description”:“My Kep”}”http://localhost:8080 我已经启动了下面的服务器(axonserver-4.0.jar),我不知道如何修复这个错误。如果您需要任何其他详细信息,请告诉我? 我

  • 主要内容:常用服务器命令,基本命令演示Redis 服务器是对客户端提供服务的主体,只要是安装了 Redis 数据库的计算机都可以通过本地,或者远程的方式对外提供服务。 Redis 服务器能够以高可用集群的方式对外提供服务。所谓高可用集群,指的是多台 Redis 服务器组成的服务器架构,每台服务器都提供相同的服务,从而让服务器达到一个稳定,高效的运行状态。有关 Redis 集群的相关知识在后续内容中详介绍。 从 3.0 版本开始,Red

  • KEYS,SCAN,FLUSHDB 等等,这些命令在哪里? 一些常见的重复性的问题是: 好像没有看到如:Key(...) 或者 Scan(...) 方法?我该怎么才能查询哪些key是在数据库中的? 或者 好像也没有 Flush(...) 方法?我该怎样才能移除掉所有在数据库中的key? The key word here, oddly enough, is the last one: databa

  • 路由服务 首先,要理解什么是 router,router是提供跨 subnet 的互联功能的。比如用户的内部网络中主机想要访问外部互联网的地址,就需要router来转发(因此,所有跟外部网络的流量都必须经过router)。目前router的实现是通过iptables进行的。 同样的,router服务也运行在自己的名字空间中,可以通过如下命令查看: $ sudo ip net exec qroute

  • 有人能解释一下(如果可能的话,用一些代码或参考)独立路由器和自包含的路由器参与者之间有什么区别吗? 提前谢谢你。 编辑: 与此相比有何不同?: 在性能或能力方面有什么区别吗?

  • ASUS 华硕路由器 注意 Windows 所装 Home Assistant 无法使用此组件。 更新提示 本插件配置方法自 0.82 版本开始发生变化,请及时更新。 使用前请前往路由器管理界面 —— 系统管理 —— Enable SSH 或 启动 Telnet asuswrt: host: 路由器IP username: 路由器账号 password: 路由器密码 protoc