2013-05-09 156 views
2

我正在做一项任务,我似乎无法从我的导师或TA获得答复。作业的目标是使用Google App Engine部署一个应用程序,该应用程序获取图像的URL,将其转换为字节流,将其存储在DataStore中,然后将其调回以在另一页上查看。Java,Google App Engine和JSONArray/JSONObject

我已经能够存储图像,但检索它是另一回事。我们应该使用JSON数组和对象将包含相关数据的字符串传递给调用函数,但Eclipse告诉我GAE不支持JSON。这里的错误消息:

org.json.simple.JSONArray不是由谷歌App Engine的Java运行时环境支持

此外,Eclipse控制台告诉

JSONArray不能解析为某种类型

的JSONObject不能被解析为一个类型

什么是真正古怪这是教师自己在他的演示应用程序使用JSON。我希望我能得到他关于这个问题的回应,但他很狡猾,而且一直缺席。

无论如何,这是我得到的。请让我知道是否有什么我做错了。 为了记录,我没有要求任何人为我修复代码或给我工作代码 - 我只是想了解一下我的问题。

<%@ page import="java.util.*" %> 
<%@ page import="javax.jdo.*" %> 
<%@ page import="org.json.simple.*" %> 

<% 
    PersistenceManager pm = PMF.getPMF().getPersistenceManager(); 
    try { 
     List<University> items = University.loadAll(pm); 
     JSONArray array = new JSONArray(); 
     for (University item : items) { 
      JSONObject object = new JSONObject(); 
      object.put("uname", item.getNameOfUniversity()); 
      object.put("photoURL", item.getURLOfImage()); 
      array.add(object); 
     } 
     out.write(array.toString()); 
    } finally { 
     pm.close(); 
    } 
%> 
+0

是否在您的eclipse项目的构建路径中添加了** json.jar **。 – 2013-05-09 06:00:28

+0

也尝试使用** org.json **库而不是** org.json.simple **,因为它更加灵活,并且在GAE下可以100%正常工作。 – 2013-05-09 06:01:47

+0

@AnkurJain是的,JSON库在我的构建路径。 – idigyourpast 2013-05-10 03:42:25

回答

0

您需要add the missing jar file to your project

此外,为了更容易JSON创建解析,你应该看看JSON映射器库:GSONJackson

+0

我在那里有罐子,所以它不会丢失。我认为这个问题与GAE不兼容。然而,真正奇怪的是,我班的其他人都在使用相同的库,并且对他们来说工作正常。 – idigyourpast 2013-05-10 03:41:01