Files
brapi-java/docs/problem_fix/03-fix-doing/08-get-crossingprojects.md

75 lines
2.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# GET /crossingprojects
> 来源BrAPI v2.1 校验报告03-fix.md
## 概要
| 项 | 值 |
| --- | --- |
| 状态 | warning |
| 方法 | GET |
| URL | `/brapi/v2/crossingprojects` |
| 完整 URL | `http://localhost:8081/brapi/v2/crossingprojects` |
| 路径模板 | `GET /crossingprojects` |
| 模块 | Crossing Projects |
| 响应时间 | 13722 ms |
## 校验详情
```
GET /crossingprojects
Crossing Projects
13722 ms
schema mismatch
Json matches schema: schemas/v2.1/CrossingProjects/getCrossingprojectsResponse.json (schema mismatch) — Schema: schemas/v2.1/CrossingProjects/getCrossingprojectsResponse.json
Response structure doesn't match schema.
[
{
"level": "error",
"schema": {
"loadingURI": "#",
"pointer": "/properties/result/properties/data/items/properties/additionalInfo/additionalProperties"
},
"instance": {
"pointer": "/result/data/8/additionalInfo/dummyData"
},
"domain": "validation",
"keyword": "type",
"message": "instance type (boolean) does not match any allowed primitive type (allowed: [\"string\"])",
"found": "boolean",
"expected": [
"string"
]
},
{
"level": "error",
"schema": {
"loadingURI": "#",
"pointer": "/properties/result/properties/data/items/properties/additionalInfo/additionalProperties"
},
"instance": {
"pointer": "/result/data/12/additionalInfo/dummyData"
},
"domain": "validation",
"keyword": "type",
"message": "instance type (boolean) does not match any allowed primitive type (allowed: [\"string\"])",
"found": "boolean",
"expected": [
"string"
]
}
]
```
---
## 修复说明
- **根因**`additional_info.value` 列以 Java 序列化形式存储 `Boolean.TRUE``getAdditionalInfoMap()` 原先直接返回反序列化后的 `Boolean`JSON 序列化为 boolean与 BrAPI schema`additionalInfo` 值须为 string不符。
- **修复**:在 `BrAPIPrimaryEntity.getAdditionalInfoMap()` 中对每个值使用 `String.valueOf()`,使 `dummyData` 等字段以 `"true"` 字符串形式返回。
- **验证**`GET /brapi/v2/crossingprojects` 响应中 `additionalInfo.dummyData` 均为 JSON 字符串(如 `"dummyData":"true"`),无 boolean 类型。
---
**状态:已完成**