简体   繁体   English

通过DWR发送和接收JSON对象

[英]Sending and receiving JSON object through DWR

I am using DWR in my project for AJAX calls. 我在我的项目中使用DWR进行AJAX调用。 DWR converts javascript objects to java objects by reading the java class. DWR通过读取java类将javascript对象转换为java对象。 I want to send and receive JSON like structure through DWR. 我想通过DWR发送和接收类似结构的JSON。

Eg: 例如:

JS Object: JS对象:

{
  "name" : "TamilVendhan",
  "age" : "24",
  "hobbies" : [
    "gaming",
    "gaming",
    "gaming"
  ],
  "address" : {
    "doorNo" : "122",
    "city" : "Banglore",
    "state" : "Karnataka",
    "country" : "india"
  }
}

The above js object could be converted to Java as below : 上面的js对象可以转换为Java,如下所示:

Map<String, Object> map = new HashMap<String, Object>();
map.put("name", "TamilVendhan");
map.put("age", "24");
List<String> list = new ArrayList<String>();
list.add("gaming");
list.add("gaming");
list.add("gaming");
map.put("hobbies", list);
Map<String, Object> addr = new HashMap<String, Object>();
addr.put("doorNo",122);
addr.put("city", "banglore");
addr.put("state", "Karnataka");
addr.put("country", "India");
map.put("address", addr);

Is this possible with DWR. 这可能与DWR有关。 If possible, give me some pointers! 如果可能的话,给我一些指示!

Thanks! 谢谢!


Update: 更新:

Converting JS objects into Map<String, Object> is possible in DWR. 在DWR中可以将JS对象转换为Map<String, Object> But its one(1st) level only. 但它只有一(1)级。 If you have any nested objects/array, it will not be converted and ends in conversion error . 如果您有任何嵌套对象/数组,它将不会被转换并以conversion error结束。

See this ticket. 看到这张票。

DWR的最新版本有JSON支持,你需要传递的init-参数有关的DWR Servlet来实现在web.xml的更多信息,可以发现 ,也为DWR有一个很好的书命名为“DWR Java的Ajax应用程序” 。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM