2017-02-18 3 views
0

によって生成されたJSONを解析することができませんでしJavascriptが、私は私のコントローラによって生成されたJSON文字列を解析するには、このJavascriptを/ jQueryのコードを持っている:私の現在の春のプロジェクトでObjectMapperオブジェクト

<script th:if="${list}" th:inline="javascript"> 
/*<![CDATA[*/ 
$(document).ready(function(){ 
    load_content(<url to json string>, <target on html code>); 

    function load_content(list, target) { 
     $.get(list, function(json_string){ 
      var json = jQuery.parseJSON(json_string); 
      $.each(json, function(index, item){ 
       ... 
      }); 
     }); 
    } 
}); 
/*]]>*/ 
</script> 

これを生成し、コントローラのメソッドJSONは次のとおりです。

@RequestMapping("/list.json") 
@ResponseBody 
public String list(@RequestParam(value="orderby", required=false) String orderby, @RequestParam(value="groupby", required=false) String groupby) throws JsonProcessingException { 
    ObjectMapper mapper = new ObjectMapper(); 
    return mapper.writeValueAsString(serv.select(orderby, groupby)); 
} 

私がここで紛失しているものを知っていますか? com.fasterxml.jackson.databind.ObjectMapperの実装にいくつかのバグがありますか?もしそうなら、それを回避する方法は?

UPDATE

JSON文字列:(ブラウザのコンソールに表示されているように)

[{"id":1,"login":"klebermo","senha":"...","nome":"kleber","sobrenome":"mota","email":"[email protected]","cesta":null,"listas":[],"pedidos":[],"credenciais":[{"id":1,"nome":"categoria","autorizacoes":[{"id":1,"nome":"categoria","authority":"categoria"},{"id":2,"nome":"insert_categoria","authority":"insert_categoria"},{"id":3,"nome":"update_categoria","authority":"update_categoria"},{"id":4,"nome":"delete_categoria","authority":"delete_categoria"}],"expirationDate":null},{"id":2,"nome":"produto","autorizacoes":[{"id":5,"nome":"produto","authority":"produto"},{"id":6,"nome":"insert_produto","authority":"insert_produto"},{"id":7,"nome":"update_produto","authority":"update_produto"},{"id":8,"nome":"delete_produto","authority":"delete_produto"}],"expirationDate":null},{"id":3,"nome":"pagina","autorizacoes":[{"id":9,"nome":"pagina","authority":"pagina"},{"id":10,"nome":"insert_pagina","authority":"insert_pagina"},{"id":11,"nome":"update_pagina","authority":"update_pagina"},{"id":12,"nome":"delete_pagina","authority":"delete_pagina"}],"expirationDate":null},{"id":4,"nome":"usuario","autorizacoes":[{"id":13,"nome":"usuario","authority":"usuario"},{"id":14,"nome":"insert_usuario","authority":"insert_usuario"},{"id":15,"nome":"update_usuario","authority":"update_usuario"},{"id":16,"nome":"delete_usuario","authority":"delete_usuario"}],"expirationDate":null},{"id":5,"nome":"admin","autorizacoes":[{"id":17,"nome":"admin","authority":"admin"},{"id":18,"nome":"settings","authority":"settings"}],"expirationDate":null}],"expirationDate":null,"locked":false,"enabled":true,"authorities":[{"id":1,"nome":"categoria","authority":"categoria"},{"id":2,"nome":"insert_categoria","authority":"insert_categoria"},{"id":3,"nome":"update_categoria","authority":"update_categoria"},{"id":4,"nome":"delete_categoria","authority":"delete_categoria"},{"id":5,"nome":"produto","authority":"produto"},{"id":6,"nome":"insert_produto","authority":"insert_produto"},{"id":7,"nome":"update_produto","authority":"update_produto"},{"id":8,"nome":"delete_produto","authority":"delete_produto"},{"id":9,"nome":"pagina","authority":"pagina"},{"id":10,"nome":"insert_pagina","authority":"insert_pagina"},{"id":11,"nome":"update_pagina","authority":"update_pagina"},{"id":12,"nome":"delete_pagina","authority":"delete_pagina"},{"id":13,"nome":"usuario","authority":"usuario"},{"id":14,"nome":"insert_usuario","authority":"insert_usuario"},{"id":15,"nome":"update_usuario","authority":"update_usuario"},{"id":16,"nome":"delete_usuario","authority":"delete_usuario"},{"id":17,"nome":"admin","authority":"admin"},{"id":18,"nome":"settings","authority":"settings"}],"accountNonExpired":true,"accountNonLocked":false,"credentialsNonExpired":true,"username":"klebermo","password":"..."}] 

エラー:

SyntaxError: JSON.parse: unexpected character at line 1 column 2 of the JSON data 
+0

パーサーからJSONの出力と正確なエラーの例を表示できますか? –

+0

@ ponury-kostekは、要求された情報を含めるために質問を更新します。 –

答えて

0

のみ可能答えはあなたのJSONが文字列ではないということです既にオブジェクトと配列されているため、何も解析する必要はありません。

+0

コードに関してどういう意味ですか?これを変更する必要がありますか? 'var json = jQuery.parseJSON(json_string)'?何に? –

+0

var json = json_string; –

関連する問題