我有一个相当大的有效负载通过java休息服务作为json返回(大约3,000个相当轻量级的对象记录)。 Jax-RS和JaxB正在为我排序json方面,所以我怀疑这是json被返回的错误。
当我直接调用rest资源并在notepad ++中查看有效负载时,json文件本身看起来很好,并且在底层SQL表中没有诸如回车等的胭脂字符。
SyntaxError: Unexpected token
at Object.parse (native)
at ub (http://localhost:8080/misf-web/lib/angular/angular.min.js:13:122)
at e.defaults.transformResponse (http://localhost:8080/misf-web/lib/angular/angular.min.js:98:83)
at http://localhost:8080/misf-web/lib/angular/angular.min.js:97:347
at Array.forEach (native)
at n (http://localhost:8080/misf-web/lib/angular/angular.min.js:6:470)
at Yb (http://localhost:8080/misf-web/lib/angular/angular.min.js:97:329)
at c (http://localhost:8080/misf-web/lib/angular/angular.min.js:99:14)
at i (http://localhost:8080/misf-web/lib/angular/angular.min.js:79:437)
at http://localhost:8080/misf-web/lib/angular/angular.min.js:80:485 angular.min.js:63
我开始玩这些数据了。删除在特定字段中以A开头的所有内容,然后B ....以查看是否可以将其缩小到特定的记录集。
我必须删除以S开头的所有内容,并且角边开始工作。
所以我重新加载了数据。删除以S ....开头的所有内容并再次尝试,但失败了。所以我怀疑它与返回的Json无关,而是有效负载的大小。
我很欣赏我可以使用服务器端分页,但我更关心的是为什么这不起作用?我希望实际上在应用程序启动时将3,000个对象完全加载到应用程序中 - 但它无法工作......因为没有明显的理由我可以看到。
此致
- 更新:建议使用JSONLINT。
出现此错误:
Parse error on line 23:
... "projectNm": "(Delete) A
-----------------------^
Expecting 'STRING', 'NUMBER', 'NULL', 'TRUE', 'FALSE', '{', '['
我不明白为什么,因为看起来不错:
{
"approvedPriority": "UNKNOWN",
"disease": "UNKNOWN",
"diseaseArea": "UNKNOWN",
"dpomBpomPhase": "UNKNOWN",
"imed": "UNKNOWN",
"jtastRanking": "UNKNOWN",
"moleculeOrTypeOfProduct": "UNKNOWN",
"planningStatus": "06-TO BE DELETED",
"programCategoryDesc": "UNKNOWN",
"projectCode": "UNKNOWN",
"projectNm": "(Delete) Analytical Productivity (Delete)",
"projectSk": 562,
"projectType": "UNKNOWN",
"therapyArea": "UNKNOWN"
},
更新2:
好的,数据库值看起来很好。然而,当我将json结果中的值复制到文本编辑器中时,JaxB通过线路返回它的过程引入了流氓字符....所以我有一个记录“My - Name”,当我复制时值得注入记事本++它说“我的!!名字”,引入了一些奇怪的字符来代替“ - ”。连字符的其他值已经过了。数据库结束时的记录很好......这里发生了什么?为什么泽西岛决定破坏一些产出?
更新3:
循环查看其中一个违规项目中的字符。数据库中看起来像“ - ”的东西,当粘贴到Excel并检查过Ascii字符时,会出现ASCii代码150,这是一个不可打印的字符?
我