- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我们正在尝试使用 spring-cloud @FeignClient
从另一个微服务调用微服务的 HAL-JSON REST API。该服务使用 Spring Data Rest、Spring Boot 1.4 实现,默认启用 Hateoas。
在客户端使用专用 DTO,所有简单属性都已正确映射,但忽略了特定于 HAL 的 _embedded
集合。
主要取自 this post ,我们实现了一个自定义的Feign Decoder
和相应的ObjectMapper
,使用经常提到的Jackson2HalModule
,但这仍然没有解决我们的问题。
您可以使用 this sample project 重现问题,其中更详细地描述了问题。
我们感谢有关此问题的任何帮助或提示!提前致谢
最佳答案
我认为理解如何反序列化的关键是您的 Customer
是嵌入关系的 Resources
类。因此,您需要将其反序列化为 Resources
,以便 HalResourcesDeserializer
提取它。
我让它以这种方式工作。
@Getter
@Setter
public class Customer extends Resources<Resource<Relation>> {
public static enum Type {
PERSON, INSTITUTION
}
private String displayName;
private Integer rating;
private Type type;
public Collection<Resource<Relation>> getRelations() {
return this.getContent();
}
}
这看起来还是有点奇怪,我不确定这是否是最好的解决方案。
关于spring-data-rest - 如何使用 @FeignClient 映射 HAL JSON _embedded 集合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42698024/
我正在使用支持 HATEOAS 的 Spring Data REST。我是这个范式的新手。 在来 self 的 RESTful Web 服务的 GET 响应中,我经常在名为 _embedded 的节点
我正在使用 Spring Boot 2.0.2(带有 oAuth2 2.3.3)和 HATEOAS(我有一个依赖文件,表明我正在使用它,即使我的重点不是)来构建 RestAPI。我可以毫无问题地提出请
我们正在尝试解析以下 JSON 以获取人员列表。 JSON 响应: { "_embedded": { "people": [ { "id": 35356,
我正在为购物 list 开发 Spring Boot 应用程序。为此,我使用 Spring Data Rest 通过 REST API 导出我的实体。 我的架构是这样的 我有一个ShoppingIte
我正在使用 Spring Boot 和 HATEOAS 构建一个 REST API,当我的 API 返回一个集合时,它被包装在一个“_embedded”属性中,如下所示: { "_links":
我正在尝试使用以下 REST HAL 响应中的实体列表: { "_embedded" : { "posts" : [ { "branch" : 1, "ar
我运行基于 Spring Boot Gradle Plugin 的 SDR 应用程序.我最近从 2.1.9.RELEASE 升级了至 2.2.0.RELEASE .虽然不能 100% 确定这就是原因,
我们目前正在我们最新的项目中实现一个 API 库。我们正在尝试使用带有 HAL 的 Spring HATEOAS 作为适当的库来生成 json hal 响应。 使用 Spring boot 1.2.5
我有一个简单的用例,我想使用一个用 json+hal 表示的资源集合。 我使用 spring RestTemplate 并将其配置为使用 Jackson2HalModule。 当我调试我的代码时,我发
我使用 CrudRepository 与 Restful 服务创建了一个基本的 Spring Boot 应用程序来与数据库交互。 JSON 响应包含我不想要的 "_embedded": { ... }
我很欣赏有几个库可以使用 HAL 格式的 HATEOAS linkrels,但我很想了解更多有关以最基本的方式访问 _embedded 资源及其 _links 的信息 - 或者我想我应该说天真 - 方
我正在尝试使用 Spring HATEOAS 构建符合 HAL 的 REST API。 经过一些摆弄后,我设法大部分按预期开始工作。(示例)输出现在看起来像这样: { "_links": {
我们正在尝试使用 spring-cloud @FeignClient 从另一个微服务调用微服务的 HAL-JSON REST API。该服务使用 Spring Data Rest、Spring Boo
我正在尝试调用返回这种形式的数据的非常简单的 json 网络服务: { "_embedded": { "users": [{ "identifier":
我正在使用 spring-boot-2.2.1 和 spring-HATEOAS。超媒体链接工作正常,但是我在返回链接时看到 _embedded 属性,请在 github here 中查找以下代码以供
我是一名优秀的程序员,十分优秀!