问题标签 [quarkus-rest-client]

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 投票
2 回答
656 浏览

java - 我如何在 Quarkus 中定义用于序列化的聊天集?

我正在尝试通过 ISO-8859-1 编码中的 RESTCLIENT 数据发送到其他系统,但出现错误:“com.fasterxml.jackson.databind.JsonMappingException: Invalid UTF-8 middle byte 0xe3”。

我想将序列化编码更改为 ISO-8859-1 而不是 UTF-8,可以吗?

如果我在发送之前转换为 UTF-8,它可以工作,但我不想要这个选项,因为数据库是 ISO-8859-1。

我在 JVM 中尝试了 set -Dfile.encoding=ISO-8859-1,值已更改但错误仍然存​​在。

0 投票
1 回答
2104 浏览

java - 如何为 Quarkus REST 客户端配置 ObjectMapper

我知道您可以实现ObjectMapperCustomizer为您的 Quarkus REST 服务配置映射器。但是,Quarkus REST Client 的文档中并不清楚它是否会使用相同的(全局?)映射器。当外部服务与您自己的服务具有不同的 JSON 命名约定时,您如何处理这种情况?我找不到为 REST 客户端配置 ObjectMapper 的方法。我假设您可能可以使用 Jackson 注释解决此问题,但我正在寻找一种仅通过配置 ObjectMapper 来解决此问题的方法。

所以,基本上,问题是:如何为一个特定的REST 客户端配置单独的ObjectMapper ?

0 投票
1 回答
62 浏览

quarkus-rest-client - 如何在 quarkus restAPI 中实现 angularjs

使用 quarkus 构建了我的第一个宁静的应用程序。我想要一个可以调用这些宁静服务的前端。任何指针。

0 投票
1 回答
980 浏览

reactive-programming - Vertx 在 Quarkus vertx munity Web 客户端扩展中不可用

我尝试测试由 vertx munity Web 客户端提供的响应式 Web 客户端。

我遵循了官方指南Quarkus - Getting Started with Reactive

并在依赖项中添加了以下内容。

Vertx但是当我按照文章中提到的方式注入时,得到了 CDI unsatisfied dependency 异常。Vertx不可用。

完整的代码在这里

0 投票
1 回答
357 浏览

java - 如何解决 java.lang.RuntimeException: RESTEASY007545: Unable to find a MessageBodyReader for media type

我使用的是 Quarkus 版本 1.5.1,但是当尝试发送表单的 LocalDate(或日期)类型的数据时,它返回以下错误消息:

java.lang.RuntimeException:RESTEASY007545:找不到媒体类型的MessageBodyReader:文本/普通;charset = us-ascii 和类类型 java.time.LocalDate

我已经导入了以下依赖项,但错误仍然存​​在。

这是代码:

  • 控制器
  • 实体
0 投票
4 回答
2236 浏览

rest - Quarkus 找不到内容类型多部分/表单数据休息客户端的编写器

我正在使用 Quarkus 为我的休息微服务实现一个 API 网关。我想将请求转发到另一个(Quarkus)rest-api。我正在尝试使用多格式数据转发 POST 请求。我期望得到 201,但我得到 500 内部服务器错误。RESTEASY 抛出以下错误:

我尝试将我的 Quarkus 版本从 1.4.2 升级到 1.5.2,因为我看到了以下问题: https ://github.com/quarkusio/quarkus/issues/8223

还尝试过 Intellij 无效缓存/重启,重新导入 maven

代码

多部分体:

界面:

资源:

测试:

0 投票
1 回答
360 浏览

quarkus - 在 ClientHeadersFactory 中注入 bean 不起作用

我正在构建一个 Quarkus 应用程序,它使用 resteasy 处理 http 请求并使用 restclient 调用另一个 api,我需要传播一个标头并动态添加另一个,所以我添加了一个实现 ClientHeadersFactory 的类。

这是代码:

我的问题是配置的注入不起作用。我尝试了@Inject@Context,如ClientHeadersFactory. 我也试图使类非抽象,但它没有改变任何东西。

MicroServicesConfig 是一个@Startupbean,因为它需要在Quarkus.run()调用之前进行初始化,否则热重载不再起作用,因为它需要处理请求。这是代码仅供参考:

这似乎是一个问题,ClientHeadersFactory因为如果我在我的主类()中注入我的 bean @QuarkusMain,它就可以工作。然后我可以将地图分配给一个公共静态地图,然后我可以从我的 HeaderHandler 访问它,Application.myPublicStaticMap但这很难看,所以我真的更愿意避免这种情况。

我在网上搜索过,发现有几个人有同样的问题,但根据这篇博文或这篇博文,它应该从Quarkus 1.3 和 MicroProfile 3.3 (RestClient 1.4) 开始工作,我正在使用 Quarkus 1.5.2。即使是第二个链接中的示例也不适用于注入 UriInfo ,因此问题不是来自我尝试注入的 bean。

我已经为此苦苦挣扎了好几个星期,现在我真的很想摆脱我的解决方法。我可能只是错过了一些东西,但这让我发疯。

在此先感谢您的帮助。

0 投票
0 回答
59 浏览

quarkus - 来自 spring-cloud-config 的 Quarkus 可配置路径

我们目前正在从 spring-boot 迁移到 quarkus。在 spring-boot 中,我们曾经使用表达式语言让路径从 spring-cloud-config 中获取路径变量:

@RequestMapping("${url.microservice.controller.base-path}")

这一切都正常工作。但是,现在我们正在迁移到 Quarkus,我们希望也可以从 spring-cloud 配置路径。

我无法让它工作,因为 java 编译器期望路径中有一个常量。

有什么办法可以让我错过的工作吗?

0 投票
1 回答
319 浏览

java - 寻找与 quarkus 共享微服务之间接口的最佳方式

我对微服务还是很陌生,并且有一些我现在无法解决的基本架构问题。我使用 Quarkus 框架和 quarkus-resteasy 和 quarkus-rest-client 等标准扩展来实现。

场景:

我有一个“持久性”服务示例,我想通过专用 Maven 项目中的 REST 调用从外部填充数据。

同时我想有一个微服务DataGenerator来生成相应的数据并将其传递给Persistence服务。

我的问题:API 共享

这两个服务都是作为 Maven 项目创建的。根据教程,我发现正确的方法是像这样在项目中声明一个接口(这里称为PersistenceApiDataGenerator

然后通过@Inject 将该接口集成到DataGenerator服务中,从而产生以下示例性服务。

我在端口 8181 上本地运行,并在项目PersistenceService中添加了以下条目,以便可以找到该服务。application.propertiesDataGenerator

我发现在 my 中声明接口是“错误的” DataGenerator,因为此时我没有注意到Persistence服务提供的 api 何时更改。因此,可以想出将接口定位在Persistence服务中的想法,然后由我的具体Persistence实现来实现,并导致以下代码。

为了在我的DataGenerator项目中使用它们,我必须将Persistence项目作为依赖项包含在我的DataGenerator项目中,这对我来说听起来像是“带有额外步骤的整体”,因此在“关注点分离”方面感觉不对。

我尝试了以下方法: 我创建了另一个名为的 Maven 项目PersistenceApi,它只包含相应的PersistenceApi. 该PersistenceApi项目随后作为依赖项包含在“Persistence”和“DataGenerator”项目中。在“持久性”项目中,我实现了上面示例中的服务,并尝试通过@Inject.

不幸的是,这不起作用。在构建服务时,我收到一条消息PersistenceApi,即我想@InjectDataGenerator服务中包含的所需依赖项不能以UnsatisfiedResolutionException.

现在我的问题:

  1. 我看不出我在这里缺少什么。你可以帮帮我吗?
  2. 这种与专用 API 项目共享 API 的方式是可行的方式,还是“带有额外步骤的单体”方式真的可行?

先感谢您。

0 投票
1 回答
476 浏览

quarkus - 从 quarkus graphQL 访问 RestClient 会出现 RESTEASY004655:无法调用请求:javax.net.ssl.SSLHandshakeException 错误

我有一个 quarkus-graphql、quarkus-restservice 和一个 openliberty restservice 在不同命名空间的 openshift 中运行。Quarkus-graphql 正在使用 RestClient 访问 restservices。在所有应用程序中,tls.key 和 tls.crt 由 penshift 服务资源注释 service.alpha.openshift.io/serving-cert-secret-name: app-certs 创建并作为卷添加到容器中。所有应用程序都有一个 initContainer,其中 keystore.jsk 键是从上面的 tls 键和 crt 创建的。

应用程序构建“./mvnw clean package”,然后推送到 openshift docker-registry,然后使用将应用程序部署到 openshift 的 openshift oc 命令处理附加的模板。

当我尝试从 graphql 访问 RestClient 时出现以下错误

应用属性

我已经打开了一个问题https://github.com/quarkusio/quarkus/issues/10727但是如果有人遇到这个问题并解决了它,我将不胜感激

拉吉