`
xumos
  • 浏览: 9499 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Struts2.1.8整合json、jquery

阅读更多
struts2-core-2.1.8.1.jar与jsonplugin-0.34.jar 配合使用会出现异常,以前的项目中jsonplugin-0.34.jar 配合 struts2-core-2.1.6.jar 使用不会出现异常。

解决方法:
去掉jsonplugin-0.34.jar;
使用struts2-json-plugin-2.1.8,json-lib-2.3-jdk15,ezmorph-1.0.6,jakarta commons-lang 2.4,jakarta commons-beanutils 1.7.0,jakarta commons-collections 3.2,jakarta commons-logging 1.1.1

注:不少人使用时会提示net.sf.ezmorph.xxx找不到,是缺ezmorph.jar;
     使用JSONArray jsonObject = JSONArray.fromObject(xxx);等时,还需要引入json-lib-2.3-jdk15.jar

示例:
1、struts.xml配置
a、直接继承json-default包
<package name="default-package" abstract="true" extends="json-default">
<!-- 中间定义其他元素 -->
</package>

b、添加以下元素到struts.xml文件中(其实下面的xml代码也就是struts2-json-plugin-2.1.8包中struts-plugin.xml的内容
这里只是把它提出来放到struts.xml文件中,避免继承包)
<result-types>
  <result-type name="json" class="org.apache.struts2.json.JSONResult"/>
</result-types>
<interceptors>
<interceptor name="json" class="org.apache.struts2.json.JSONInterceptor"/>
</interceptors>
2、action配置
注意下面的result类型type 以及参数root,田type指定结果类型为json,而参数root用来指明将action中的哪个参数作为json串返回给客户端
<package name="tableInfoOperAction" extends="json-default">
	    <action name="showColumns" class="com.***.action.TableInfoOperAction" method="showColumns">
	    	<result name="success" type="json">
	    		<param name="root">columnStr</param>
	    	</result>
	    </action>
   </package>

3、Action代码
public String showColumns() throws Exception{
		try{
			if(tableName!=null&&!"".equals(tableName)){
				colList=dbDataOperation.getColumnsByTableName(tableName);
			}
			JSONArray jsonArr=JSONArray.fromObject(colList);
			columnStr=jsonArr.toString();
		}catch(Exception e){
			e.printStackTrace();
			logger.warn(e.getMessage());
		}
		return SUCCESS;
	}

4、JS代码
<script type="text/javascript">
	    	function showColumns(){
	    		alert($("#tabId").val());
	    		$.ajax({
	    			url:"***/showColumns.do?tableName="+$("#tabId").val(),
	    			type:"GET",
	    			cache:false,
	    			dataType:"json",
	    			error:function(XMLHttpRequest, textStatus, errorThrown) {
						alert("出错啦!:" + XMLHttpRequest.status + "-" + textStatus);
					},
					success:function(json){
						alert(json);
						alert("okay");
					}
	    		});
	    	}
	    </script>
分享到:
评论

相关推荐

    struts2.1.8+json+jquery

    总结来说,"struts2.1.8+json+jquery"的组合展示了如何在Java Web开发中利用Struts2处理业务逻辑和HTTP请求,通过JSON高效地传输数据,以及利用JQuery在前端实现动态页面效果。这种技术栈可以提高开发效率,简化前后...

    struts2.1.8+json+jquery1.3实现ajax

    在这个项目中,`struts2.1.8+json+jquery1.3实现ajax`,开发者可能做以下步骤: 1. 配置Struts2:首先,需要在Struts2的配置文件(struts.xml)中配置Action,指定返回JSON类型的结果。这通常通过在Action类的方法上...

    struts2.1.8 jquery json jax

    Struts2.1.8是Apache Struts框架的一个版本,它是一个基于MVC(Model-View-Controller)设计模式的Java Web开发框架。这个版本在Web应用开发中被广泛使用,因为它提供了强大的动作调度、结果处理和插件扩展机制。在...

    JQuery1.4.2+Struts2.1.8+JSON0.34+Spring2.5.6+Hibernate3.5+XFire1.2.6整合实例

    JQuery1.4.2+Struts2.1.8+JSON0.34+Spring2.5.6+Hibernate3.5+XFire1.2.6整合实例(已上传) 1、JSON0.34使用的是struts2附带的struts2-json-plugin-2.1.8.1.jar 2、db是mysql,名字为test,用户名root,密码空 3、...

    struts2.1.8 json

    在Struts2.1.8版本中,对JSON(JavaScript Object Notation)的支持已经相当成熟,允许开发者实现服务器与客户端之间的数据交换,特别是在AJAX(Asynchronous JavaScript and XML)交互中。 JSON是一种轻量级的数据...

    json-lib-2.1.jar和struts2-json-plugin-2.1.8.1.jar

    这个插件允许开发者在Struts 2中轻松地创建能够返回JSON的Action,使得前端(通常使用JavaScript库如jQuery)可以获取到JSON数据并进行进一步处理。 现在我们来详细讨论这两个库在实际应用中的作用: 1. **json-...

    Struts2.1.8 AJAX 读取XML,GSON,jQuery JSON

    在本案例中,Struts2.1.8与AJAX结合,用于从服务器获取数据并动态更新视图,同时涉及了XML、GSON和jQuery JSON三种数据交换格式。 XML(Extensible Markup Language)是一种标记语言,常用于数据交换,特别是在前后...

    jquery与struts2整合

    【jQuery与Struts2整合详解】 在Web开发中,jQuery是一个强大的JavaScript库,它简化了JavaScript的DOM操作、事件处理和Ajax交互。Struts2是一个流行的Java Web框架,用于构建MVC(Model-View-Controller)架构的...

    struts2-json-plugin-2.1.8.zip_Java 8_json-plugin-2.1.8

    5. **前端交互**:在前端使用JavaScript(例如jQuery)发起Ajax请求,获取并处理由Struts2 JSON插件返回的JSON数据。 通过Struts2 JSON Plugin 2.1.8,开发者可以轻松地在Struts2应用中集成JSON功能,提高应用的...

    Json+Struts2+JQuery及JQuery相关插件的例子,json架包...

    4. "struts2-junit-plugin-2.1.8.jar" 是Struts2的JUnit测试插件,用于进行单元测试,虽然不直接与JSON处理有关,但在开发过程中是必不可少的工具。 5. "json.txt" 文件可能包含示例或测试的JSON数据,可以用于测试...

    与struts2配套的JSON架包

    在前端,可以通过JavaScript或者jQuery等库,使用AJAX请求Struts2的JSON Action,并处理返回的JSON数据。例如,使用jQuery的`$.ajax()`方法: ```javascript $.ajax({ url: 'myAction.json', type: 'POST', ...

    Struts2 + jQuery 实现ajax.txt

    - `struts2-json-plugin-2.1.8.jar` - `struts2-junit-plugin-2.1.8.jar` 此外,需要注意移除可能存在的旧版本插件,如`jsonplugin-0.34.jar`。 #### 总结 通过上述步骤,我们可以利用Struts2、Hibernate、Spring...

    struts 2 自选包

    8. **Ajax支持**:Struts 2可以轻松地与jQuery或其他JavaScript库结合,实现部分页面更新,提高用户体验。 9. **插件系统**:Struts 2拥有丰富的插件集,如JSON插件、Freemarker插件等,可以扩展框架功能,满足不同...

    SSH等jar包

    │ struts2-json-plugin-2.1.8.jar │ struts2-spring-plugin-2.1.8.jar │ xwork-core-2.1.6.jar │ ├─struts │ commons-fileupload-1.2.1.jar │ freemarker-2.3.15.jar │ jstl.jar │ ognl-2.7.3.jar │ ...

Global site tag (gtag.js) - Google Analytics