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

2.2 KiB
Raw Blame History

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.TRUEgetAdditionalInfoMap() 原先直接返回反序列化后的 BooleanJSON 序列化为 boolean与 BrAPI schemaadditionalInfo 值须为 string不符。
  • 修复:在 BrAPIPrimaryEntity.getAdditionalInfoMap() 中对每个值使用 String.valueOf(),使 dummyData 等字段以 "true" 字符串形式返回。
  • 验证GET /brapi/v2/crossingprojects 响应中 additionalInfo.dummyData 均为 JSON 字符串(如 "dummyData":"true"),无 boolean 类型。

状态:已完成