Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is com.alibaba.fastjson.JSONException: illegal identifier :  ] with root cause

com.alibaba.fastjson.JSONException: illegal identifier :  
	at com.alibaba.fastjson.parser.JSONLexerBase.scanSymbolUnQuoted(JSONLexerBase.java:847) ~[fastjson-1.2.7.jar:na]
	at com.alibaba.fastjson.parser.DefaultJSONParser.parseObject(DefaultJSONParser.java:267) ~[fastjson-1.2.7.jar:na]
	at com.alibaba.fastjson.parser.DefaultJSONParser.parse(DefaultJSONParser.java:1236) ~[fastjson-1.2.7.jar:na]
	at com.alibaba.fastjson.parser.DefaultJSONParser.parse(DefaultJSONParser.java:1205) ~[fastjson-1.2.7.jar:na]
	at com.alibaba.fastjson.JSON.parse(JSON.java:109) ~[fastjson-1.2.7.jar:na]
	at com.alibaba.fastjson.JSON.parse(JSON.java:100) ~[fastjson-1.2.7.jar:na]
	at com.alibaba.fastjson.JSON.parseObject(JSON.java:171) ~[fastjson-1.2.7.jar:na]

我的问题是postman测试时的格式中包含大量空格

{
      "data":{
                "user":{
                    "username"  : "XXX",
                    "studentId" : 11,
                    "studentDept" : "yyy"
                },
                "usergrade":{
                    "degree" : 87,
                    "grades": [
                            {"categoryId": 1, "grade": 4},
                            {"categoryId": 2, "grade": 4},
                            {"categoryId": 3," grade": 6},
                            {"categoryId": 4," grade": 8},
                            {"categoryId": 5," grade": 10}
                    ]
                }
            }
}

修改格式后问题解决

{"data":{"user":{"username":"xxx","studentId":11,"studentDept":"yyy"},"usergrade":{"degree":87,"grades":[{"categoryId":1,"grade":4},{"categoryId":2,"grade":4},{"categoryId":3,"grade":6},{"categoryId":4,"grade":8},{"categoryId":5,"grade":10}]}}}

有更深层次的原因,这只是表面现象,待处理。

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐