Search code examples
jsonjenkinsjenkins-pipelinejenkins-groovycicd

jenkins error: hudson.remoting.ProxyException: net.sf.json.JSONException: Invalid JSON String


I am facing below error while trying to parse the json file in Jenkins multibranch pipeline:

def payload = writeJSON(file: "hostname.json", json: env.config)
json = readJSON file: 'hostname.json'
data = new JsonSlurperClassic().parseText(json)
echo "Original Payload: ${data.software_maintainance_package_destination}"

json File

{
  "software_maintainance_package_name": [
    {"AgentName":"TrendMicro", "process":"Install", "OS":"linux"}],
  "software_maintainance_package_destination": [
    {"name":"InstanceIds", "detail":"186.12.45.23"}],
  "siteName": "us-east-1",  
  "siteEnvironment": "OnPrem",
  "ReferenceTicket": "RITM0923008",
} 

Error:

hudson.remoting.ProxyException: net.sf.json.JSONException: Expected a ',' or ']' at character 36 of [software_maintainance_package_name:[[AgentName:TrendMicro, process:Install, OS:linux]], software_maintainance_package_destination:[[name:InstanceIds, detail:186.12.45.23]], siteName:us-east-1, siteEnvironment:OnPrem, ReferenceTicket:RITM0923008]
    at net.sf.json.util.JSONTokener.syntaxError(JSONTokener.java:499)
    at net.sf.json.JSONArray._fromJSONTokener(JSONArray.java:1182)
    at net.sf.json.JSONArray._fromString(JSONArray.java:1192)
    at net.sf.json.JSONArray.fromObject(JSONArray.java:127)
    at net.sf.json.JSONSerializer.toJSON(JSONSerializer.java:137)
    at net.sf.json.JSONSerializer.toJSON(JSONSerializer.java:103)
    at net.sf.json.JSONSerializer.toJSON(JSONSerializer.java:84)
[Bitbucket] Notifying commit build result
[Bitbucket] Build result notified
Finished: FAILURE

Solution

  • You JSON seems to be invalid. Following is the corrected JSON.

    {
        "software_maintainance_package_name": [{
            "AgentName": "TrendMicro",
            "process": "Install",
            "OS": "linux"
        }],
        "software_maintainance_package_destination": [{
            "name": "InstanceIds",
            "detail": "186.12.45.23"
        }],
        "siteName": "us-east-1",
        "siteEnvironment": "OnPrem",
        "ReferenceTicket": "RITM0923008"
    }