微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Quarkus - 如何使用多个反应式 PgPool 测试 CDI 服务

如何解决Quarkus - 如何使用多个反应式 PgPool 测试 CDI 服务

我有一个 CDI bean,我在其中注入了一些反应性数据源,如here

我尝试测试我的服务,但我不知道如何模拟所有 PgPool(我应该模拟它们吗?)? 我按照说明尝试了“测试容器”方法here

我注意到主要的实现没有使用@Inject 注释:见 here 为什么?

我在运行测试时得到了这个堆栈:

java.lang.RuntimeException: java.lang.RuntimeException: io.quarkus.builder.BuildException: Build failure: Build Failed due to errors
    [error]: Build step io.quarkus.arc.deployment.ArcProcessor#validate threw an exception: javax.enterprise.inject.spi.DeploymentException: javax.enterprise.inject.UnsatisfiedResolutionException: Unsatisfied dependency for type io.vertx.mutiny.pgclient.PgPool and qualifiers [@Default]
    - java member: sncf.mobilite.groupehv.mytraindata.service.SignalementsScheduler#AGcclient
    - declared on CLASS bean [types=[sncf.mobilite.groupehv.mytraindata.service.SignalementsScheduler,java.lang.Object],qualifiers=[@Default,@Any],target=sncf.mobilite.groupehv.mytraindata.service.SignalementsScheduler]
    at io.quarkus.arc.processor.BeanDeployment.processErrors(BeanDeployment.java:1078)
    at io.quarkus.arc.processor.BeanDeployment.init(BeanDeployment.java:255)
    at io.quarkus.arc.processor.BeanProcessor.initialize(BeanProcessor.java:129)
    at io.quarkus.arc.deployment.ArcProcessor.validate(ArcProcessor.java:428)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:566)
    at io.quarkus.deployment.ExtensionLoader$2.execute(ExtensionLoader.java:920)
    at io.quarkus.builder.BuildContext.run(BuildContext.java:277)
    at org.jboss.threads.EnhancedQueueExecutor$Task.run(EnhancedQueueExecutor.java:2415)
    at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1452)
    at java.base/java.lang.Thread.run(Thread.java:834)
    at org.jboss.threads.JBossthread.run(JBossthread.java:501)
Caused by: javax.enterprise.inject.UnsatisfiedResolutionException: Unsatisfied dependency for type io.vertx.mutiny.pgclient.PgPool and qualifiers [@Default]
    - java member: sncf.mobilite.groupehv.mytraindata.service.SignalementsScheduler#AGcclient
    - declared on CLASS bean [types=[sncf.mobilite.groupehv.mytraindata.service.SignalementsScheduler,target=sncf.mobilite.groupehv.mytraindata.service.SignalementsScheduler]
    at io.quarkus.arc.processor.Beans.resolveInjectionPoint(Beans.java:484)
    at io.quarkus.arc.processor.BeanInfo.init(BeanInfo.java:378)
    at io.quarkus.arc.processor.BeanDeployment.init(BeanDeployment.java:247)
    ... 12 more

quarkus 文档中有很多使用 Panache 实体测试持久性的示例,但没有一个使用反应池。

怎么办?

谢谢!

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?