无法显示代码名为1的webservices调用的响应

问题描述:

我从我的webservices {root:[{name:abc, surname:xyz}]}得到这个JSON响应,我试图仅使用标签显示响应中的Key:Value。无法显示代码名为1的webservices调用的响应

我使用的附加组件的方法

hi.addComponent(new Label(""+ response.get("/result[0]/ocassion"))); 

但它显示我空值。我已经关注了codenameone网站上提供的Web服务的视频。

我应该如何获得所需的响应才能在UI上显示。 下面是代号一个MyApplication.java代码:

InputStreamReader reader = new InputStreamReader(input); 
JSONParser parser = new JSONParser(); 
response = parser.parse(reader); 
System.out.println(""+ response); 
hi.addComponent(new Label(""+ response.get("/result[0]/ocassion"))); 
hi.getComponentForm().revalidate(); 

变化parse.parseparse.parseJSON。你必须知道检索值的关键,你可以循环你的回应如下:

InputStreamReader reader = new InputStreamReader(input); 
JSONParser parser = new JSONParser(); 
response = parser.parseJSON(reader); 

List listResponses = (List) response.get("root"); 
if (listResponse != null) { 
    for (Object listResponse : listResponses) { 
     Map tempHash = (Map) listResponse; 
     hi.addComponent(new Label("Name: " + tempHash.get("name").toString())); 
     hi.addComponent(new Label("Surname: " + tempHash.get("surname").toString())); 
     System.out.println(tempHash.get("name").toString()); //Print abc 
     System.out.println(tempHash.get("surname").toString()); //Print xyz 
    } 
    hi.getComponentForm().revalidate(); 
} else { 
    System.out.println("null value returned"); //Make sure you reference root and be sure it returns proper json 
} 
+1

嗨。感谢那段代码。它按我想要的方式工作。但现在我正在对标签进行一些更改,并希望使用多个按钮,以便按下按钮时将显示名称和姓氏。你能告诉我怎么做。 –