问题标签 [quarkus-panache]
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.
postgresql - Quarkus 原生镜像:postgresql 连接被拒绝
我创建了一个 quarkus 应用程序,可以访问 localhost 上的 postgresql 数据库。创建本机映像后,我尝试使用以下命令运行应用程序:
docker run -i --rm -p 8080:8080 quarkusimage
如果我尝试使用邮递员的方法,我会得到以下结果:
addEmployee Hibernate: select nextval ('quarkus.hibernate_sequence') 2020-06-18 20: 43: 38,214 WARN [io.agr.pool] (Agroal_20041415421) Datasource '': Connection to localhost: 5432 denied. 检查主机名和端口是否正确以及 postmaster 是否接受 TCP/IP 连接。
如果我尝试使用
docker run --net = "host" -i --rm -p 8080:8080 quarkusimage
应用程序访问本地主机上的数据库,但是如果我尝试使用邮递员调用它就无法访问该服务。
我究竟做错了什么?
谢谢
java - Quarkus Builder 错误 类 java.lang.Enum 不在 Jandex 索引内
我有一个使用 jandex 插件索引的依赖项,正如 Guilhaume Smet 对这个问题的回答所解释的那样:How to create a Jandex index in Quarkus for classes in a external module
它工作得很好,然后我决定使用扩展hibernate-orm-panache。一旦我将它添加到 pom 中,我就会收到以下错误:
那是一个错误吗?有转机吗?
java - 当修改的字段并不总是相同时,如何更新 MongoDB 文档的字段?
假设我有一个 Foo 类和一个将 API 公开给 CRUD Foos 的 jax-rs FooResource。
Foo 代表一个 MongoDB 文档。
在 FooResource 中,我会有这样的东西:
问题是 json 中的 foo 对象将只包含已更改的字段,但我从来不知道它会是什么字段。
我使用带有 Panache 扩展的 Quarkus,我看到的唯一方法是从数据库中检索实体,然后检查我从 http 请求收到的 foo 对象中的每个字段,看看它是否为空,如果不是,在实体中设置新值,最后调用 update() 。
但是,如果我的课程有几十个领域,那将成为一场噩梦。这是一个如此常见的用例,我无法想象(或不想相信)这是做到这一点的唯一方法。
如果有一种方法可以将不完整的文档发送到 MongoDB,以便它只更改此文档中存在的字段,那将是完美的。但我没有找到办法做到这一点。不使用 quarkus(有或没有 panache),也没有使用 mongo API 的 java 驱动程序。
那么有没有更简单的方法来做到这一点?我更喜欢使用带有 Panache 扩展的 quarkus MongoDB 的解决方案,但没有 Panache 甚至直接使用 java 驱动程序 API 的解决方案也可以。
PS:从前端发送完整对象并替换整个文档对我来说不是一个选项。
谢谢。
quarkus-panache - PanacheQuery:允许不区分大小写查询的运算符
我正在尝试创建一个具有以下两个条件的查询:
- 应该是部分字符串匹配而不是完全匹配
- 应该不区分大小写
我的查询目前是这样的:
但是,这不会进行部分字符串匹配。有这方面的运营商吗?
只是为了清楚起见,假设数据库包含peter, Peter, peTeR
,查询name=peter
应该返回所有 3 个名称。
java - 为什么使用 quarkus-panache、hibernate 和 jsonb 进行反序列化失败?
我想玩一下hibernate、panache和quarkus。我想构建一个“跟踪”api,一个人可以有多个跟踪,但一个跟踪只能由一个人拥有。但我面临反序列化错误。
假设我想发布这个:
我收到以下错误:
并在日志中:
我的实体看起来像这样:
和
POST 端点如下所示:
为了避免缓存问题,我打开了一个新事务,但我想这不是问题吗?
我真的不明白为什么 jsonB 抱怨反序列化以及如何修复它。此外,在某些时候我想public List<String> participants
成为public List<Person> participants
但可以等到关系和反序列化工作。
mongodb - 使用 MongoDB Panache 在 CodecProvider 中无法进行依赖注入?
我可以按照官方文档中的描述处理自定义 MongoDB 编解码器提供程序的创建,但是是否可以在 CodecProvider 中获得依赖注入,如下所示?
如果不是,您将如何在 Quarkus 中实现应用感知编解码器?
达米安
quarkus - MongoDB Panache 是否支持更改流?
MongoDB Panache 是否提供对变更流的支持?我在网上找不到任何关于它的信息。
java - Quarkus PanacheEntity 在测试期间未保存
我正在尝试使用 RestEasy 进行 Quarkus 和 Quarkus 测试,并且在每次测试之前设置虚拟数据时遇到了问题。
我正在尝试在调用端点之前使用 Active Record 模式插入用户。在向用户实体询问用户数量时调用 user.persistAndFlush()(或只是调用 .persist())后,它正确地返回数据库中有一条记录。但是,当通过 RestEasy 调用端点时,它会返回给我没有找到具有该给定标识符的用户,实际上,当注销服务中某个方法调用中的用户数时,根据 Quarkus,有 0 个用户. 在我看来,带有 @Test 注释的方法和服务本身好像在不同的上下文中运行?这有点奇怪,我肯定遗漏了一些明显的东西。
这是我的测试类的样子:
java - 多对多关系设计是否正确
我创建了两个基于 Hibernate 的表,它们之间具有多对多的关系。
表格:
在幕后,Hibernate 创建了一个单独的表来保存外键。这是生成的 DDL:
问题是,约束后的神秘字符串是什么,DDL 是否正确定义?
mongodb - 我们如何在 QUARKUS - MONGODB WITH PANACHE 中实现 MongoDB DBRefs?
我遵循以下指南在我的 Quarkus 服务器应用程序中实现 MongoDB ORM。
QUARKUS - 简化的 MONGODB 与 PANACHE
https://quarkus.io/guides/mongodb-panache
我怎样才能用这个实现文档参考?
例如:如果我有 2 个实体,例如 Employee、Organization,那么如何在我的 Employee 实体中引用 Organization?