簡體   English   中英

使用 jsonbuilder 為 Groovy 中的 integer 類型元素修改 json

[英]modifying json with jsonbuilder for an integer type element in Groovy

有以下 JSON:

def jsonString = '{"studyDTO":{"studyId":191,"studyCode":"test_ispptest2"},"sites":[{"studyId":191,"siteRecid":16521,"siteId":"11001"}],"allSubjects":true,"states":null,"visits":[{"studyId":191,"visitSubmitName":"baseline","visitDisplayName":"Baseline","orderOfDisplay":10}],"modalities":null,"examDates":null,"series":null,"transferType":null,"sftpLocations":[],"dicomLocations":[],"fileSystemLocations":[],"rawFileSystemLocations":[],"customFolder":null,"folderStructure":null,"customFile":null,"fileStructure":null,"includePS":null}'

想要使用來自數據源的 integer 動態更新"orderOfDisplay":10的值。

def jsonConvert = new JsonSlurper();
def object = jsonConvert.parseText(jsonString);
def builder = new JsonBuilder(object)

builder.content.visits[0].orderOfDisplay = 23

[23 只是舉例。 我運行了 10 次,每次預期值都會改變]

log.info(builder.toPrettyString());

類似於這里的帖子,但就我而言,我正在嘗試更新 integer。

更新后我得到的錯誤是,

{
    "studyDTO": {
        "studyId": 191,
        "studyCode": "test_ispptest2"
    },
    "sites": [
        {
            "studyId": 191,
            "siteRecid": 16521,
            "siteId": "11001"
        }
    ],
    "allSubjects": true,
    "states": null,
    "visits": [
        {
            "studyId": 191,
            "visitSubmitName": "cycle_1",
            "visitDisplayName": "Cycle 1",
            "orderOfDisplay": "23"
        }
    ],
    "modalities": null,
    "examDates": null,
    "series": null,
    "transferType": null,
    "sftpLocations": [
    ],
    "dicomLocations": [
    ],
    "fileSystemLocations": [
    ],
    "rawFileSystemLocations": [
    ],
    "customFolder": null,
    "folderStructure": null,
    "customFile": null,
    "fileStructure": null,
    "includePS": null
}

值 23 用引號括起來

我無法使用 Groovy 3.0.11 隨附的JMeter 5.5復制它,所以請仔細檢查您的軟件版本,也許您正遭受某種形式的ZACA268A40E82159E156B5B74C67

在此處輸入圖像描述

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM