You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@groovy.apache.org by "Sebastian Schuberth (JIRA)" <ji...@apache.org> on 2017/05/31 10:05:04 UTC

[jira] [Issue Comment Deleted] (GROOVY-7392) JsonSlurper Fails on Valid JSON

     [ https://issues.apache.org/jira/browse/GROOVY-7392?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Sebastian Schuberth updated GROOVY-7392:
----------------------------------------
    Comment: was deleted

(was: I'm still seeing this with Groovy 2.4.5 and 2.4.11.)

> JsonSlurper Fails on Valid JSON
> -------------------------------
>
>                 Key: GROOVY-7392
>                 URL: https://issues.apache.org/jira/browse/GROOVY-7392
>             Project: Groovy
>          Issue Type: Bug
>          Components: JSON
>    Affects Versions: 2.3.6, 2.4.3
>         Environment: Mac Yosemite
>            Reporter: Scott
>            Assignee: Pascal Schumacher
>             Fix For: 2.4.4
>
>         Attachments: Test.groovy, video-playthrough.har
>
>
> We are generating a har file (JSON representation of network traffic) to verify some information surrounding playback.
> I am generating this har file, and regardless of the JsonParserType I use, I am getting the following error:
> {code}
> There was 1 error:
> 1) testEntries(Test)groovy.json.JsonException: Unable to parse JSON object
> The current character read is '"' with an int value of 34
> Unable to parse JSON object
> line number 1
> index number 1
> ",\n                     \"color\": \"controlHoverColor\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 110,\n                     \"cropY\": 1,\n                     \"cropWidth\": 19,\n                     \"cropHeight\": 20,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            },\n            \"selected\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLink_bigSelected\",\n                     \"type\": \"image\",\n                     \"color\": \"controlSelectedColor\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 110,\n                     \"cropY\": 1,\n                     \"cropWidth\": 19,\n                     \"cropHeight\": 20,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            },\n            \"disabled\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLink_bigDisabled\",\n                     \"type\": \"image\",\n                     \"color\": \"#b3b3b3\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 110,\n                     \"cropY\": 1,\n                     \"cropWidth\": 19,\n                     \"cropHeight\": 20,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            }\n         },\n         \"properties\": {\n            \"defaultWidth\": 19,\n            \"defaultHeight\": 20\n         }\n      },\n      \"IconLink_big\": {\n         \"states\": {\n            \"normal\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLink_bigNormal\",\n                     \"type\": \"image\",\n                     \"color\": \"#b3b3b3\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 110,\n                     \"cropY\": 1,\n                     \"cropWidth\": 19,\n                     \"cropHeight\": 20,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            },\n            \"hover\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLink_bigHover\",\n                     \"type\": \"image\",\n                     \"color\": \"controlHoverColor\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 110,\n                     \"cropY\": 1,\n                     \"cropWidth\": 19,\n                     \"cropHeight\": 20,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            },\n            \"selected\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLink_bigSelected\",\n                     \"type\": \"image\",\n                     \"color\": \"controlSelectedColor\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 110,\n                     \"cropY\": 1,\n                     \"cropWidth\": 19,\n                     \"cropHeight\": 20,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            },\n            \"disabled\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLink_bigDisabled\",\n                     \"type\": \"image\",\n                     \"color\": \"#b3b3b3\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 110,\n                     \"cropY\": 1,\n                     \"cropWidth\": 19,\n                     \"cropHeight\": 20,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            }\n         },\n         \"properties\": {\n            \"defaultWidth\": 19,\n            \"defaultHeight\": 20\n         }\n      },\n      \"IconLock\": {\n         \"states\": {\n            \"normal\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLockNormal\",\n                     \"type\": \"image\",\n                     \"color\": \"#b3b3b3\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 534,\n                     \"cropY\": 1,\n                     \"cropWidth\": 7,\n                     \"cropHeight\": 9,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            },\n            \"hover\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLockHover\",\n                     \"type\": \"image\",\n                     \"color\": \"controlHoverColor\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 534,\n                     \"cropY\": 1,\n                     \"cropWidth\": 7,\n                     \"cropHeight\": 9,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            },\n            \"selected\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLockSelected\",\n                     \"type\": \"image\",\n                     \"color\": \"controlSelectedColor\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 534,\n                     \"cropY\": 1,\n                     \"cropWidth\": 7,\n                     \"cropHeight\": 9,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            },\n            \"disabled\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLockDisabled\",\n                     \"type\": \"image\",\n                     \"color\": \"#b3b3b3\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 534,\n                     \"cropY\": 1,\n                     \"cropWidth\": 7,\n                     \"cropHeight\": 9,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            }\n         },\n         \"properties\": {\n            \"defaultWidth\": 7,\n            \"defaultHeight\": 9\n         }\n      },\n      \"IconMail\": {\n         \"states\": {\n            \"normal\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconMail_bigNormal\",\n                     \"type\": \"image\",\n                     \"color\": \"#b3b3b3\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n
> .^
> 	at groovy.json.internal.JsonParserUsingCharacterSource.decodeJsonObject(JsonParserUsingCharacterSource.java:100)
> 	at groovy.json.internal.JsonParserUsingCharacterSource.decodeValue(JsonParserUsingCharacterSource.java:137)
> 	at groovy.json.internal.JsonParserUsingCharacterSource.parse(JsonParserUsingCharacterSource.java:291)
> 	at groovy.json.internal.BaseJsonParser.parse(BaseJsonParser.java:149)
> 	at groovy.json.JsonSlurper.parseFile(JsonSlurper.java:364)
> 	at groovy.json.JsonSlurper.parse(JsonSlurper.java:345)
> 	at groovy.json.JsonSlurper$parse.call(Unknown Source)
> 	at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:45)
> 	at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:110)
> 	at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:122)
> 	at Test.testEntries(Test.groovy:7)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 	at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90)
> 	at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:324)
> 	at groovy.lang.MetaClassImpl.invokeStaticMethod(MetaClassImpl.java:1440)
> 	at org.codehaus.groovy.runtime.InvokerHelper.invokeStaticMethod(InvokerHelper.java:940)
> 	at org.codehaus.groovy.runtime.InvokerHelper.invokeStaticMethod(InvokerHelper.java:78)
> 	at groovy.lang.GroovyShell.runJUnit3Test(GroovyShell.java:373)
> 	at groovy.lang.GroovyShell.runScriptOrMainOrTestOrRunnable(GroovyShell.java:293)
> 	at groovy.lang.GroovyShell.run(GroovyShell.java:522)
> 	at groovy.lang.GroovyShell.run(GroovyShell.java:511)
> 	at groovy.ui.GroovyMain.processOnce(GroovyMain.java:650)
> 	at groovy.ui.GroovyMain.run(GroovyMain.java:381)
> 	at groovy.ui.GroovyMain.process(GroovyMain.java:367)
> 	at groovy.ui.GroovyMain.processArgs(GroovyMain.java:126)
> 	at groovy.ui.GroovyMain.main(GroovyMain.java:106)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 	at org.codehaus.groovy.tools.GroovyStarter.rootLoader(GroovyStarter.java:106)
> 	at org.codehaus.groovy.tools.GroovyStarter.main(GroovyStarter.java:128)
> Caused by: groovy.json.JsonException: Unable to parse JSON object
> The current character read is '"' with an int value of 34
> Unable to parse JSON object
> line number 1
> index number 1
> ",\n                     \"color\": \"controlHoverColor\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 110,\n                     \"cropY\": 1,\n                     \"cropWidth\": 19,\n                     \"cropHeight\": 20,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            },\n            \"selected\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLink_bigSelected\",\n                     \"type\": \"image\",\n                     \"color\": \"controlSelectedColor\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 110,\n                     \"cropY\": 1,\n                     \"cropWidth\": 19,\n                     \"cropHeight\": 20,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            },\n            \"disabled\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLink_bigDisabled\",\n                     \"type\": \"image\",\n                     \"color\": \"#b3b3b3\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 110,\n                     \"cropY\": 1,\n                     \"cropWidth\": 19,\n                     \"cropHeight\": 20,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            }\n         },\n         \"properties\": {\n            \"defaultWidth\": 19,\n            \"defaultHeight\": 20\n         }\n      },\n      \"IconLink_big\": {\n         \"states\": {\n            \"normal\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLink_bigNormal\",\n                     \"type\": \"image\",\n                     \"color\": \"#b3b3b3\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 110,\n                     \"cropY\": 1,\n                     \"cropWidth\": 19,\n                     \"cropHeight\": 20,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            },\n            \"hover\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLink_bigHover\",\n                     \"type\": \"image\",\n                     \"color\": \"controlHoverColor\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 110,\n                     \"cropY\": 1,\n                     \"cropWidth\": 19,\n                     \"cropHeight\": 20,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            },\n            \"selected\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLink_bigSelected\",\n                     \"type\": \"image\",\n                     \"color\": \"controlSelectedColor\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 110,\n                     \"cropY\": 1,\n                     \"cropWidth\": 19,\n                     \"cropHeight\": 20,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            },\n            \"disabled\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLink_bigDisabled\",\n                     \"type\": \"image\",\n                     \"color\": \"#b3b3b3\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 110,\n                     \"cropY\": 1,\n                     \"cropWidth\": 19,\n                     \"cropHeight\": 20,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            }\n         },\n         \"properties\": {\n            \"defaultWidth\": 19,\n            \"defaultHeight\": 20\n         }\n      },\n      \"IconLock\": {\n         \"states\": {\n            \"normal\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLockNormal\",\n                     \"type\": \"image\",\n                     \"color\": \"#b3b3b3\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 534,\n                     \"cropY\": 1,\n                     \"cropWidth\": 7,\n                     \"cropHeight\": 9,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            },\n            \"hover\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLockHover\",\n                     \"type\": \"image\",\n                     \"color\": \"controlHoverColor\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 534,\n                     \"cropY\": 1,\n                     \"cropWidth\": 7,\n                     \"cropHeight\": 9,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            },\n            \"selected\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLockSelected\",\n                     \"type\": \"image\",\n                     \"color\": \"controlSelectedColor\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 534,\n                     \"cropY\": 1,\n                     \"cropWidth\": 7,\n                     \"cropHeight\": 9,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            },\n            \"disabled\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLockDisabled\",\n                     \"type\": \"image\",\n                     \"color\": \"#b3b3b3\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 534,\n                     \"cropY\": 1,\n                     \"cropWidth\": 7,\n                     \"cropHeight\": 9,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            }\n         },\n         \"properties\": {\n            \"defaultWidth\": 7,\n            \"defaultHeight\": 9\n         }\n      },\n      \"IconMail\": {\n         \"states\": {\n            \"normal\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconMail_bigNormal\",\n                     \"type\": \"image\",\n                     \"color\": \"#b3b3b3\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n
> .^
> 	at groovy.json.internal.JsonParserUsingCharacterSource.decodeJsonObject(JsonParserUsingCharacterSource.java:100)
> 	at groovy.json.internal.JsonParserUsingCharacterSource.decodeValue(JsonParserUsingCharacterSource.java:137)
> 	at groovy.json.internal.JsonParserUsingCharacterSource.decodeJsonObject(JsonParserUsingCharacterSource.java:78)
> 	... 49 more
> Caused by: groovy.json.JsonException: Unexpected issue
> The current character read is '"' with an int value of 34
> Unexpected issue
> line number 1
> index number 1
> ",\n                     \"color\": \"controlHoverColor\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 110,\n                     \"cropY\": 1,\n                     \"cropWidth\": 19,\n                     \"cropHeight\": 20,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            },\n            \"selected\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLink_bigSelected\",\n                     \"type\": \"image\",\n                     \"color\": \"controlSelectedColor\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 110,\n                     \"cropY\": 1,\n                     \"cropWidth\": 19,\n                     \"cropHeight\": 20,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            },\n            \"disabled\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLink_bigDisabled\",\n                     \"type\": \"image\",\n                     \"color\": \"#b3b3b3\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 110,\n                     \"cropY\": 1,\n                     \"cropWidth\": 19,\n                     \"cropHeight\": 20,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            }\n         },\n         \"properties\": {\n            \"defaultWidth\": 19,\n            \"defaultHeight\": 20\n         }\n      },\n      \"IconLink_big\": {\n         \"states\": {\n            \"normal\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLink_bigNormal\",\n                     \"type\": \"image\",\n                     \"color\": \"#b3b3b3\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 110,\n                     \"cropY\": 1,\n                     \"cropWidth\": 19,\n                     \"cropHeight\": 20,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            },\n            \"hover\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLink_bigHover\",\n                     \"type\": \"image\",\n                     \"color\": \"controlHoverColor\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 110,\n                     \"cropY\": 1,\n                     \"cropWidth\": 19,\n                     \"cropHeight\": 20,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            },\n            \"selected\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLink_bigSelected\",\n                     \"type\": \"image\",\n                     \"color\": \"controlSelectedColor\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 110,\n                     \"cropY\": 1,\n                     \"cropWidth\": 19,\n                     \"cropHeight\": 20,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            },\n            \"disabled\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLink_bigDisabled\",\n                     \"type\": \"image\",\n                     \"color\": \"#b3b3b3\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 110,\n                     \"cropY\": 1,\n                     \"cropWidth\": 19,\n                     \"cropHeight\": 20,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            }\n         },\n         \"properties\": {\n            \"defaultWidth\": 19,\n            \"defaultHeight\": 20\n         }\n      },\n      \"IconLock\": {\n         \"states\": {\n            \"normal\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLockNormal\",\n                     \"type\": \"image\",\n                     \"color\": \"#b3b3b3\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 534,\n                     \"cropY\": 1,\n                     \"cropWidth\": 7,\n                     \"cropHeight\": 9,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            },\n            \"hover\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLockHover\",\n                     \"type\": \"image\",\n                     \"color\": \"controlHoverColor\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 534,\n                     \"cropY\": 1,\n                     \"cropWidth\": 7,\n                     \"cropHeight\": 9,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            },\n            \"selected\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLockSelected\",\n                     \"type\": \"image\",\n                     \"color\": \"controlSelectedColor\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 534,\n                     \"cropY\": 1,\n                     \"cropWidth\": 7,\n                     \"cropHeight\": 9,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            },\n            \"disabled\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLockDisabled\",\n                     \"type\": \"image\",\n                     \"color\": \"#b3b3b3\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 534,\n                     \"cropY\": 1,\n                     \"cropWidth\": 7,\n                     \"cropHeight\": 9,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            }\n         },\n         \"properties\": {\n            \"defaultWidth\": 7,\n            \"defaultHeight\": 9\n         }\n      },\n      \"IconMail\": {\n         \"states\": {\n            \"normal\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconMail_bigNormal\",\n                     \"type\": \"image\",\n                     \"color\": \"#b3b3b3\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n
> .^
> 	at groovy.json.internal.JsonParserUsingCharacterSource.decodeJsonArray(JsonParserUsingCharacterSource.java:280)
> 	at groovy.json.internal.JsonParserUsingCharacterSource.decodeValue(JsonParserUsingCharacterSource.java:133)
> 	at groovy.json.internal.JsonParserUsingCharacterSource.decodeJsonObject(JsonParserUsingCharacterSource.java:78)
> 	... 51 more
> Caused by: groovy.json.JsonException: Unable to parse JSON object
> The current character read is '"' with an int value of 34
> Unable to parse JSON object
> line number 1
> index number 1
> ",\n                     \"color\": \"controlHoverColor\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 110,\n                     \"cropY\": 1,\n                     \"cropWidth\": 19,\n                     \"cropHeight\": 20,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            },\n            \"selected\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLink_bigSelected\",\n                     \"type\": \"image\",\n                     \"color\": \"controlSelectedColor\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 110,\n                     \"cropY\": 1,\n                     \"cropWidth\": 19,\n                     \"cropHeight\": 20,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            },\n            \"disabled\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLink_bigDisabled\",\n                     \"type\": \"image\",\n                     \"color\": \"#b3b3b3\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 110,\n                     \"cropY\": 1,\n                     \"cropWidth\": 19,\n                     \"cropHeight\": 20,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            }\n         },\n         \"properties\": {\n            \"defaultWidth\": 19,\n            \"defaultHeight\": 20\n         }\n      },\n      \"IconLink_big\": {\n         \"states\": {\n            \"normal\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLink_bigNormal\",\n                     \"type\": \"image\",\n                     \"color\": \"#b3b3b3\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 110,\n                     \"cropY\": 1,\n                     \"cropWidth\": 19,\n                     \"cropHeight\": 20,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            },\n            \"hover\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLink_bigHover\",\n                     \"type\": \"image\",\n                     \"color\": \"controlHoverColor\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 110,\n                     \"cropY\": 1,\n                     \"cropWidth\": 19,\n                     \"cropHeight\": 20,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            },\n            \"selected\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLink_bigSelected\",\n                     \"type\": \"image\",\n                     \"color\": \"controlSelectedColor\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 110,\n                     \"cropY\": 1,\n                     \"cropWidth\": 19,\n                     \"cropHeight\": 20,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            },\n            \"disabled\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLink_bigDisabled\",\n                     \"type\": \"image\",\n                     \"color\": \"#b3b3b3\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 110,\n                     \"cropY\": 1,\n                     \"cropWidth\": 19,\n                     \"cropHeight\": 20,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            }\n         },\n         \"properties\": {\n            \"defaultWidth\": 19,\n            \"defaultHeight\": 20\n         }\n      },\n      \"IconLock\": {\n         \"states\": {\n            \"normal\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLockNormal\",\n                     \"type\": \"image\",\n                     \"color\": \"#b3b3b3\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 534,\n                     \"cropY\": 1,\n                     \"cropWidth\": 7,\n                     \"cropHeight\": 9,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            },\n            \"hover\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLockHover\",\n                     \"type\": \"image\",\n                     \"color\": \"controlHoverColor\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 534,\n                     \"cropY\": 1,\n                     \"cropWidth\": 7,\n                     \"cropHeight\": 9,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            },\n            \"selected\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLockSelected\",\n                     \"type\": \"image\",\n                     \"color\": \"controlSelectedColor\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 534,\n                     \"cropY\": 1,\n                     \"cropWidth\": 7,\n                     \"cropHeight\": 9,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            },\n            \"disabled\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLockDisabled\",\n                     \"type\": \"image\",\n                     \"color\": \"#b3b3b3\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 534,\n                     \"cropY\": 1,\n                     \"cropWidth\": 7,\n                     \"cropHeight\": 9,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            }\n         },\n         \"properties\": {\n            \"defaultWidth\": 7,\n            \"defaultHeight\": 9\n         }\n      },\n      \"IconMail\": {\n         \"states\": {\n            \"normal\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconMail_bigNormal\",\n                     \"type\": \"image\",\n                     \"color\": \"#b3b3b3\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n
> .^
> 	at groovy.json.internal.JsonParserUsingCharacterSource.decodeJsonObject(JsonParserUsingCharacterSource.java:100)
> 	at groovy.json.internal.JsonParserUsingCharacterSource.decodeValue(JsonParserUsingCharacterSource.java:137)
> 	at groovy.json.internal.JsonParserUsingCharacterSource.decodeJsonArray(JsonParserUsingCharacterSource.java:253)
> 	... 53 more
> Caused by: groovy.json.JsonException: Unable to parse JSON object
> The current character read is '"' with an int value of 34
> Unable to parse JSON object
> line number 1
> index number 1
> ",\n                     \"color\": \"controlHoverColor\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 110,\n                     \"cropY\": 1,\n                     \"cropWidth\": 19,\n                     \"cropHeight\": 20,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            },\n            \"selected\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLink_bigSelected\",\n                     \"type\": \"image\",\n                     \"color\": \"controlSelectedColor\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 110,\n                     \"cropY\": 1,\n                     \"cropWidth\": 19,\n                     \"cropHeight\": 20,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            },\n            \"disabled\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLink_bigDisabled\",\n                     \"type\": \"image\",\n                     \"color\": \"#b3b3b3\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 110,\n                     \"cropY\": 1,\n                     \"cropWidth\": 19,\n                     \"cropHeight\": 20,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            }\n         },\n         \"properties\": {\n            \"defaultWidth\": 19,\n            \"defaultHeight\": 20\n         }\n      },\n      \"IconLink_big\": {\n         \"states\": {\n            \"normal\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLink_bigNormal\",\n                     \"type\": \"image\",\n                     \"color\": \"#b3b3b3\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 110,\n                     \"cropY\": 1,\n                     \"cropWidth\": 19,\n                     \"cropHeight\": 20,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            },\n            \"hover\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLink_bigHover\",\n                     \"type\": \"image\",\n                     \"color\": \"controlHoverColor\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 110,\n                     \"cropY\": 1,\n                     \"cropWidth\": 19,\n                     \"cropHeight\": 20,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            },\n            \"selected\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLink_bigSelected\",\n                     \"type\": \"image\",\n                     \"color\": \"controlSelectedColor\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 110,\n                     \"cropY\": 1,\n                     \"cropWidth\": 19,\n                     \"cropHeight\": 20,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            },\n            \"disabled\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLink_bigDisabled\",\n                     \"type\": \"image\",\n                     \"color\": \"#b3b3b3\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 110,\n                     \"cropY\": 1,\n                     \"cropWidth\": 19,\n                     \"cropHeight\": 20,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            }\n         },\n         \"properties\": {\n            \"defaultWidth\": 19,\n            \"defaultHeight\": 20\n         }\n      },\n      \"IconLock\": {\n         \"states\": {\n            \"normal\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLockNormal\",\n                     \"type\": \"image\",\n                     \"color\": \"#b3b3b3\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 534,\n                     \"cropY\": 1,\n                     \"cropWidth\": 7,\n                     \"cropHeight\": 9,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            },\n            \"hover\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLockHover\",\n                     \"type\": \"image\",\n                     \"color\": \"controlHoverColor\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 534,\n                     \"cropY\": 1,\n                     \"cropWidth\": 7,\n                     \"cropHeight\": 9,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            },\n            \"selected\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLockSelected\",\n                     \"type\": \"image\",\n                     \"color\": \"controlSelectedColor\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 534,\n                     \"cropY\": 1,\n                     \"cropWidth\": 7,\n                     \"cropHeight\": 9,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            },\n            \"disabled\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLockDisabled\",\n                     \"type\": \"image\",\n                     \"color\": \"#b3b3b3\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 534,\n                     \"cropY\": 1,\n                     \"cropWidth\": 7,\n                     \"cropHeight\": 9,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            }\n         },\n         \"properties\": {\n            \"defaultWidth\": 7,\n            \"defaultHeight\": 9\n         }\n      },\n      \"IconMail\": {\n         \"states\": {\n            \"normal\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconMail_bigNormal\",\n                     \"type\": \"image\",\n                     \"color\": \"#b3b3b3\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n
> .^
> 	at groovy.json.internal.JsonParserUsingCharacterSource.decodeJsonObject(JsonParserUsingCharacterSource.java:100)
> 	at groovy.json.internal.JsonParserUsingCharacterSource.decodeValue(JsonParserUsingCharacterSource.java:137)
> 	at groovy.json.internal.JsonParserUsingCharacterSource.decodeJsonObject(JsonParserUsingCharacterSource.java:78)
> 	... 55 more
> Caused by: groovy.json.JsonException: Unable to parse JSON object
> The current character read is '"' with an int value of 34
> Unable to parse JSON object
> line number 1
> index number 1
> ",\n                     \"color\": \"controlHoverColor\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 110,\n                     \"cropY\": 1,\n                     \"cropWidth\": 19,\n                     \"cropHeight\": 20,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            },\n            \"selected\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLink_bigSelected\",\n                     \"type\": \"image\",\n                     \"color\": \"controlSelectedColor\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 110,\n                     \"cropY\": 1,\n                     \"cropWidth\": 19,\n                     \"cropHeight\": 20,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            },\n            \"disabled\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLink_bigDisabled\",\n                     \"type\": \"image\",\n                     \"color\": \"#b3b3b3\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 110,\n                     \"cropY\": 1,\n                     \"cropWidth\": 19,\n                     \"cropHeight\": 20,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            }\n         },\n         \"properties\": {\n            \"defaultWidth\": 19,\n            \"defaultHeight\": 20\n         }\n      },\n      \"IconLink_big\": {\n         \"states\": {\n            \"normal\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLink_bigNormal\",\n                     \"type\": \"image\",\n                     \"color\": \"#b3b3b3\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 110,\n                     \"cropY\": 1,\n                     \"cropWidth\": 19,\n                     \"cropHeight\": 20,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            },\n            \"hover\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLink_bigHover\",\n                     \"type\": \"image\",\n                     \"color\": \"controlHoverColor\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 110,\n                     \"cropY\": 1,\n                     \"cropWidth\": 19,\n                     \"cropHeight\": 20,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            },\n            \"selected\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLink_bigSelected\",\n                     \"type\": \"image\",\n                     \"color\": \"controlSelectedColor\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 110,\n                     \"cropY\": 1,\n                     \"cropWidth\": 19,\n                     \"cropHeight\": 20,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            },\n            \"disabled\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLink_bigDisabled\",\n                     \"type\": \"image\",\n                     \"color\": \"#b3b3b3\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 110,\n                     \"cropY\": 1,\n                     \"cropWidth\": 19,\n                     \"cropHeight\": 20,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            }\n         },\n         \"properties\": {\n            \"defaultWidth\": 19,\n            \"defaultHeight\": 20\n         }\n      },\n      \"IconLock\": {\n         \"states\": {\n            \"normal\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLockNormal\",\n                     \"type\": \"image\",\n                     \"color\": \"#b3b3b3\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 534,\n                     \"cropY\": 1,\n                     \"cropWidth\": 7,\n                     \"cropHeight\": 9,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            },\n            \"hover\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLockHover\",\n                     \"type\": \"image\",\n                     \"color\": \"controlHoverColor\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 534,\n                     \"cropY\": 1,\n                     \"cropWidth\": 7,\n                     \"cropHeight\": 9,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            },\n            \"selected\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLockSelected\",\n                     \"type\": \"image\",\n                     \"color\": \"controlSelectedColor\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 534,\n                     \"cropY\": 1,\n                     \"cropWidth\": 7,\n                     \"cropHeight\": 9,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            },\n            \"disabled\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconLockDisabled\",\n                     \"type\": \"image\",\n                     \"color\": \"#b3b3b3\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n                     \"top\": 0,\n                     \"right\": 0,\n                     \"bottom\": 0,\n                     \"left\": 0,\n                     \"cropX\": 534,\n                     \"cropY\": 1,\n                     \"cropWidth\": 7,\n                     \"cropHeight\": 9,\n                     \"scale9Top\": 0,\n                     \"scale9Right\": 0,\n                     \"scale9Bottom\": 0,\n                     \"scale9Left\": 0\n                  }\n               ]\n            }\n         },\n         \"properties\": {\n            \"defaultWidth\": 7,\n            \"defaultHeight\": 9\n         }\n      },\n      \"IconMail\": {\n         \"states\": {\n            \"normal\": {\n               \"layers\": [\n                  {\n                     \"name\": \"IconMail_bigNormal\",\n                     \"type\": \"image\",\n                     \"color\": \"#b3b3b3\",\n                     \"alpha\": 1,\n                     \"url\": \"library:GlassFormsAssets\",\n
> .^
> 	at groovy.json.internal.JsonParserUsingCharacterSource.decodeJsonObject(JsonParserUsingCharacterSource.java:100)
> 	at groovy.json.internal.JsonParserUsingCharacterSource.decodeValue(JsonParserUsingCharacterSource.java:137)
> 	at groovy.json.internal.JsonParserUsingCharacterSource.decodeJsonObject(JsonParserUsingCharacterSource.java:78)
> 	... 57 more
> Caused by: java.lang.ArrayIndexOutOfBoundsException: 73494
> 	at groovy.json.internal.CharBuf.decodeJsonString(CharBuf.java:765)
> 	at groovy.json.internal.CharBuf.decodeJsonString(CharBuf.java:746)
> 	at groovy.json.internal.JsonParserUsingCharacterSource.decodeString(JsonParserUsingCharacterSource.java:220)
> 	at groovy.json.internal.JsonParserUsingCharacterSource.decodeValue(JsonParserUsingCharacterSource.java:117)
> 	at groovy.json.internal.JsonParserUsingCharacterSource.decodeJsonObject(JsonParserUsingCharacterSource.java:78)
> 	... 59 more
> FAILURES!!!
> Tests run: 1,  Failures: 0,  Errors: 1
> {code}
> I have run the attached Test Case in 2.3.6 and 2.4.3. In addition I have used three separate tools to verify that the json is in fact valid.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)