`
lerluc
  • 浏览: 17215 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

jQuery param serialization and Struts2 built in type conversion not compatible

阅读更多
页面上jQuery需要把一个复杂类型的javascript数组对象作为参数传到Struts2 action,但是他们的默认格式不匹配导致action无法正确获得参数。

Struts2 action
class SomeAction{
  List<SomeBean> list;
  //getter setter
  //execute()
}
class SomeBean{
  int id;
  //getter setter
}


参数为以下格式(OGNL格式)时,Struts2 action能正确映射
list[0].id=1


但是当jQuery发送ajax call的时候
$.post(url, {list: [{id: 1}]})


参数会被序列化为
list[0][id]=1


要转换成功,要么把jQuery的序列化格式改掉来迎合Struts2,要么给Struts2 action写个converter来迎合jQuery,前者更简单。于是
//buildParams( prefix + "[" + k + "]", v, traditional, add );
buildParams( prefix + "." + k, v, traditional, add );


改jQuery源码并不是个好做法,最好是做个patch把$.param()覆盖掉.
分享到:
评论
1 楼 lykm02 2011-04-20  
Thanks very much. 终于找到解决方案了。谢谢。
不过,converter应该怎么写呢?
可否给个例子?

相关推荐

    Jquery与struts2

    **jQuery与Struts2整合详解** 在Web开发中,jQuery是一个强大的JavaScript库,它极大地简化了JavaScript的使用,使得前端交互更加便捷高效。而Struts2作为一款成熟的MVC框架,广泛应用于Java后端开发,提供了强大的...

    struts2+ajax+jquery

    data: {param1: value1, param2: value2}, // 发送到服务器的数据 success: function(response) { // 当请求成功时,处理返回的数据 console.log(response); }, error: function(jqXHR, textStatus, error...

    Jquery struts2 json 实现ajax

    标题 "Jquery struts2 json 实现ajax" 涉及到的是在Web开发中使用jQuery库与Struts2框架结合处理JSON数据的Ajax技术。这个主题主要关注如何通过前端的jQuery实现异步请求,与后端的Struts2框架进行交互,从而更新...

    JQuery,JSON,Struts2实现Ajax异步请求

    本文将详细讲解如何使用JQuery、JSON和Struts2框架来实现Ajax异步请求。 首先,JQuery是一个轻量级、高性能的JavaScript库,它简化了DOM操作、事件处理以及AJAX交互。在JQuery中,我们可以通过多种方法来发起Ajax...

    Struts2 与Jquery Ajax的json数据交换的典型范例

    Struts2和jQuery是两种广泛应用于Web开发的技术。Struts2是一个基于MVC(Model-View-Controller)架构的Java框架,它简化了构建企业级Web应用的过程。jQuery则是一个强大的JavaScript库,使得DOM操作、事件处理、...

    struts2+jquery实现ajax

    Struts2和jQuery是两种非常流行的开源框架,它们在Web开发中有着广泛的应用。Struts2作为MVC(Model-View-Controller)架构的一部分,主要用于处理控制器层的逻辑,而jQuery则是一个强大的JavaScript库,简化了DOM...

    jQuery与Struts2 在ajax 上的结合

    在Web开发领域,jQuery、Struts2和Ajax的结合是构建高效、动态用户界面的关键技术。这篇文章将深入探讨这三个组件如何协同工作,为现代Web应用提供流畅的用户体验。 首先,jQuery是一个轻量级的JavaScript库,它...

    Struts2 in action中文版

    第1章 Struts 2:现代Web框架 2 1.1 Web应用程序:快速学习 2 1.1.1 构建Web应用程序 2 1.1.2 基础技术简介 3 1.1.3 深入研究 6 1.2 Web应用程序框架 7 1.2.1 什么是框架 7 1.2.2 为什么使用框架 8 1.3 Struts 2框架...

    struts2----json----jquery小案例

    这个小案例是关于如何在Struts2框架下利用JSON和jQuery进行数据交互的实践。 首先,我们需要了解Struts2的Action类。Action类是业务逻辑的载体,它处理用户的请求并返回结果。在这个案例中,可能会有一个名为`...

    struts2+json

    这个资源"struts2+json"显然涉及到在Struts2框架下实现JSON(JavaScript Object Notation)数据交换,这是一种轻量级的数据交换格式,广泛用于前后端交互,特别是AJAX(Asynchronous JavaScript and XML)请求。...

    在Eclipse中配置Struts2项目(html)手把手教会你 +struts2 标签库介绍(html) + STRUTS2学习文档.pdf + Struts2―表单验证validate(html) + struts2和struts的比较 + struts教程(html)

    在Eclipse中配置Struts2...Struts2―表单验证validate(html)对validate的type属性校验类型以及param 做了详细的解释说明。 struts2和struts的比较 让你更清楚的知道struts2和struts的不同之处。 struts教程(html)

    Struts2与JSON

    Struts2是一个强大的MVC(模型-视图-控制器)框架,它在Java Web开发中广泛应用,用于构建可维护性和可扩展性高的企业级应用程序。而JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,它使得客户端和...

    Struts2 加入JSON,JQUERY

    在Struts2中,加入JSON(JavaScript Object Notation)和JQUERY可以极大地增强应用程序的交互性和动态性。JSON是一种轻量级的数据交换格式,而JQUERY是一个强大的JavaScript库,简化了HTML文档遍历、事件处理、动画...

    struts2+jQuery+json 实例

    Struts2、jQuery和JSON是Web开发中的三个关键组件,它们共同构成了高效、动态和交互式的用户界面。这里我们将深入探讨这三个技术,并结合实例来理解它们如何协同工作。 首先,Struts2是一个基于MVC(Model-View-...

    json2+jsonplugin struts2整合ajax时,使用json时需要的jar包

    在Struts2框架中整合Ajax以实现异步数据交互,JSON(JavaScript Object Notation)扮演了关键角色。JSON是一种轻量级的数据交换格式,它允许Web应用与服务器之间高效地传输数据,而无需进行繁琐的HTTP请求。在这个...

    struts2 Https 配置

    Struts2是一个非常流行的Java Web框架,用于构建和维护可扩展、模块化且易于管理的企业级应用程序。在当今网络安全日益重要的环境下,使用HTTPS协议来确保数据传输的安全性变得至关重要。Struts2支持HTTPS配置,可以...

    struts2 ajax jquery 验证用户名,有后台代码

    Struts2、Ajax 和 jQuery 是Web开发中常用的三大技术,它们在实现动态、无刷新的交互式用户体验方面发挥着重要作用。在这个项目中,我们将探讨如何使用这些技术来验证用户名是否已存在于数据库中。 首先,Struts2 ...

    struts2+json_jquery

    Struts2是一个强大的MVC(模型-视图-控制...在"struts2+json+jquery"的页面整合中,首先,我们需要在Struts2的配置文件(struts.xml)中定义Action,这个Action将负责处理客户端的请求并返回JSON数据。例如: ```xml ...

    Struts2之struts2文件下载详解案例struts012

    Struts2是一个强大的Java web应用程序框架,它提供了一种组织和构建MVC(模型-视图-控制器)架构的方式。在Struts2中处理文件下载是常见的需求,比如用户请求下载服务器上的文件,如PDF、图片或其他类型的文档。本...

    struts2图片上传并预览

    Struts2是一个强大的Java web应用程序框架,用于构建和部署可维护、高性能的MVC(Model-View-Controller)架构的应用程序。在Web开发中,图片上传和预览是常见的功能需求,尤其对于用户交互丰富的应用来说。Struts2...

Global site tag (gtag.js) - Google Analytics