问题标签 [jsonschema2pojo]

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 投票
4 回答
2010 浏览

java - 在java中检查JSON对象

我正在使用改造 2 获取 JSON,如果键具有值,则它携带对象,否则为空数组。前任:

如果键即地址有值,则返回对象

如果键即地址没有任何值,则返回空数组

在我的 POJO 类中,我将 Address 类类型设置为对象,以便改造可以解析 JSON。

现在如何检查地址类型是对象还是数组?

我尝试过使用 isArray(),但没有找到结果。

提前致谢。

0 投票
1 回答
1723 浏览

android - Retrofit 2.0 解析来自同一个 POJO 类的动态 json

我有的

我有一个服务器success response

Error,同样API返回

发生了什么

数据JsonObject更改error scenarioJsonArray

我的问题

在成功响应时一切正常(因为我POJO classsuccess response

在错误响应时,我的应用程序崩溃说尝试读取对象但找到数组

我不能做什么

我无法更改back-end,因为它已经开发并适用于网站。

我做了什么

我用谷歌搜索并找到了许多与我的问题无关的解决方案

POJO

0 投票
3 回答
775 浏览

java - 没有 @Validated 的 Spring JSR303/349 验证

我正在使用 jsonschema2pojo 从 json 模式生成 POJO。我想使用 jsr303/349 bean 验证的东西。我将必要的项目添加到类路径中,添加了必要的 bean 以触发验证,但是 jsonschema2pojo 不会添加@org.springframework.validation.annotation.Validated到生成的类中,因此当请求进入我的 Spring Boot 应用程序时不会触发验证。

@RequestBody通过像这样编写一个空类并将类型更改为新类型,我能够确认我的验证器设置正确:

当我这样做时,验证按预期工作。但是,我们正在研究数十个(如果不是可能有一百个或更多)这些扩展对象,并且其中有一堆是湿(IE,而不是 DRY)代码的缩影,因此这不是理想的解决方案。

所以我的问题是:如果有问题的对象没有用 注释,是否有办法在传入请求中触发 bean 验证@Validated?请注意,jsonschema2pojo 目前对 Spring 没有依赖关系,我发现作者不太可能接受添加一个的拉取请求。

-- 有帮助的代码

一个示例 JSON 模式:

生成的类:

我的 WebConfig 中的验证 bean 设置:

我的控制器方法:

0 投票
1 回答
838 浏览

jackson - 在将 Json 反序列化为 Java 对象期间如何跳过使用 @JsonCreator 进行枚举?

一个 Enum 类,ColorName 是使用 ColorName json 文件中的 jsonschema2pojo 生成的。因此,默认情况下,Enum 类具有使用 @JsonCreator 注释的 fromValue 方法。

如果此类用于将 json 字符串反序列化为 Java 对象,并且在 json 中传递了新的/错误的 Enum 值,则反序列化失败,IllegalArgumentException() 当尝试使用以下方法避免此错误时,它不起作用

ObjectMapper om = new ObjectMapper(); om.configure(DeserializationFeature.READ_UNKNOWN_ENUM_VALUES_AS_NULL, true);

这个问题似乎是因为@JsonCreator 总是很荣幸。有没有办法指示反序列化器跳过这个或忽略未知的枚举值?

0 投票
1 回答
292 浏览

java - (没用?)带有 jsonschema2pojo 的 Resource__ 类

熟悉Java和XML,曾尝试处理JSON数据。我正在使用jsonschema2pojo从示例 JSON 数据生成普通的旧 Java 对象。

假设我想从网上商店导入产品和类别;

http://developers.seoshop.com/api/resources/product http://developers.seoshop.com/api/resources/category

jsonschema2pojo完成了它的工作,但是所有生成的Resource, Resource_, Resource__, Resource____etc. 文件呢?

在此处输入图像描述

所有这些Resource类都是平等的。我可以删除这些(并将它们替换为 bij 一Resource类)吗?所有这些重复类的原因是什么?

不要介意 .json 和 .schema.json 文件,它们只是用于调查

0 投票
0 回答
488 浏览

json - 带有双引号的 json 模式到 pojo 错误

我正在尝试使用http://www.jsonschema2pojo.org/将提到的部分 JSON 响应从预测 api 转换为 POJO 。当我尝试将其转换为 pojo 时,错误说

现在我看到我需要在 json 响应的每个关键参数上加上双引号。所以我手动输入双引号,然后我得到 pojo 类。所以我的问题是我是否必须每次都这样做并对每个键应用双引号?我还缺少其他任何技巧吗?

0 投票
1 回答
842 浏览

java - 如何获取嵌套类实例流口水

我是流口水使用的新手,我有一个小问题。我有如下地图,我使用 schemaJson2Pojo java api 创建了 pojo:

注意:svo.svoMetadata 有人名

因此,在使用 schemaJson2Pojo api 时,会生成以下类:

我将 RootDoc 转发给 drl,我正在尝试获取一个“svoMetadata”实例,如下所示,希望更新 drl RHS 中的人员:

drl中的规则如下:

我如何让 SvoMetadata 实例执行 setPerson 方法????

0 投票
0 回答
425 浏览

json - jsonSchema2pojo杰克逊反序列化问题

我正在尝试使用 jsonSchema2pojo POJO 生成库,并且我也成功地这样做了。但是当我尝试通过 typeReferencing 生成的 rootClass 即 EsRootDoc(在下面的代码中)生成地图时,我面临的问题是反序列化异常。

这是我正在测试的代码:

例外 :

现在,如果我在这里生成类然后 typeReference 相同生成的 rootClass ,我如何获得与 Pojo 不同的 json 问题?

已编辑(添加 json):

0 投票
1 回答
890 浏览

android - jsonschema2pojo gradle 插件不在子项目中生成 Java 类

我在根项目和子项目中也有带有jsonschema2pojo Gradle 插件的 React Native Android 项目(位于 cd ../node_modules/subproject),具有不同的 jsonSchema2Pojo 配置

我的 Android 子项目是位于 ../node_modules 中的标准 React Native 模块库。如果我在子项目的根项目上运行“gradlew build”,Java 类不会仅在根项目中生成。要在子项目中生成 Java 类,我需要先导航到子项目目录:

我可以使用根构建运行子项目 generateJsonSchema2PojoForDebug 任务吗?

0 投票
2 回答
314 浏览

java - 如何从此示例 JSON 创建 POJO?

我正在尝试从https://developers.google.com/qpx-express/v1/trips/search的 API 为以下 JSON 创建 POJO

当我将其复制并粘贴到http://www.jsonschema2pojo.org/时,我在第 5 行收到一条错误"requestId": string,消息:“出现问题:无法识别的令牌‘字符串’:期待(‘真’、‘假’或‘空’ )(第 5 行,第 24 列)"

如果我更改string为实际的示例字符串,它可以正常工作。这个 json to pojo 转换器不能处理这种格式的 JSON 吗?不得不将所有数据类型更改为样本似乎有点乏味。