我的 json 字符串是:

[{"name":"51","value":"0"},{"name":"52","value":"0"},{"name":"53","value":"5"},{"name":"54","value":"1"},{"name":"106","value":"0"},{"name":"107","value":"0"},{"name":"108","value":"3"}] 

我正在尝试做:

Gson gson = new Gson(); 
    class Wrapper{ 
        String name; 
        String value;        
    } 
Wrapper[] arr = gson.fromJson(request.getParameter("data"), Wrapper[].class); 

然后:

for (Wrapper arr1 : arr) { 
        if(Long.parseLong(arr1.value)!=0){ 
            listeProduits.add(ServiceMetier.getProduitById(Long.parseLong(arr1.name))); 
            listeQuantites.add(Long.parseLong(arr1.value)); 
        } 
    } 

但我总是得到:

May 08, 2017 11:32:06 AM org.apache.catalina.core.StandardWrapperValve  
invoke 
SEVERE: Servlet.service() for servlet [ActionServlet] in context with path  
[/Gustatif_Web] threw exception 
java.lang.NullPointerException 

空指针位于 arr1 上。 我的 json 解析出了什么问题?

编辑: 一个问题是方法内有 Wrapper 类,另一个问题是对另一个项目的更深层依赖。

请您参考如下方法:

我已经尝试过了;你的代码有一个小错误;必须新建一个java类——Wrapper,不要是这个Method的内部类。


评论关闭
IT源码网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!