`

(新)Jquery ajax请求Struts2 action 返回xml数据

阅读更多

1.js代码

 

//案件来源
function loadCaseSources(position_id){
	var  action="/caseSource/getAllCaseSource.action";
	var  data="";
	var  error_message="加载案件来源数据失败!";
	getCaseSourcesSelect(action,data,position_id,error_message);
}

function getCaseSourcesSelect(action,data,position_id,error_message)
{
	$.ajax({
	  url:action, 
	  data:data,
      type: 'POST', 
      dataType: 'xml',                            
      error: function(){     
       alert(error_message); 
      }, 
      success:function(circumstancesXML)
      {
      	 $(circumstancesXML).find("option").each(function(){
			   var dm=$(this).children("option_value").text();  
			   var mc=$(this).children("option_name").text();
			   $("#"+position_id).append("<option value="+dm+">"+mc+"</option>");
		  });
		  $("#"+position_id).css("text-align","center");
      }
	});
}

 

 struts配置

	<!--案件来源-->
	<package name="caseSource" extends="default" namespace="/caseSource">			
		<action name="getAllCaseSource" class="gov.tax.wfwz.business.action.commons.CaseSourceAction" method="getAllCaseSource">
			<result name="xml">/module/common/caseSource.jsp</result>
		</action>
	</package>
 

 

2.Action 代码

 

/**
 * 案件来源
 * @author lixueli
 * @date 2010-11-24
 */
public class CaseSourceAction extends BaseAction {

	private CaseSourceService caseSourceService;

	public void setCaseSourceService(CaseSourceService caseSourceService) {
		this.caseSourceService = caseSourceService;
	}

	public String getAllCaseSource() throws BusinessException, Exception {
		try {
			List<CaseSource> caseSources = caseSourceService.getAllCaseSource();
			request.setAttribute("caseSources", caseSources);
			return "xml";
		} catch (Exception e) {
			ErrorReData.excecute(request, e);
			throw e;
		}
	}

}

 

 3.jsp 代码

 

<?xml version='1.0' encoding='gbk'?>
<%@ page language="java" contentType="text/xml; charset=GBK" pageEncoding="GBK"%>
<%@ taglib prefix="s" uri="/struts-tags" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%
	response.setHeader("Cache-Control", "no-cache");
	response.setHeader("Pragma", "no-cache");
	response.setDateHeader("Expires", 0);
%>
	<circumstances>
	<c:forEach items="${caseSources}" var="caseSource">
		<option>
			<option_name><c:out value="${caseSource.wfajly_mc}"/></option_name>
			<option_value><c:out value="${caseSource.wfajly_dm}"/></option_value>
		</option>
	</c:forEach>
	</circumstances>
 

 

分享到:
评论
1 楼 kjj 2011-11-06  
这个配置稍显繁琐,需要在jsp中固定xml结构
可用xml转换的库,比如xtream,等等,在action里用stream result 直接输出,免去一个jsp的工作!!!

相关推荐

    jQuery ajax请求struts action实现异步刷新

    这个样例是用JQuery ajax和struts来做的一个小样例,在这个样例中采用两种方式将java Util中的list转换成支json的格式,第一种是用json-lib.jar这个jar包来转换,第二种是采用goole的gson-2.1.jar来转换,大家可以...

    Struts2+Jquery实现ajax并返回json类型数据

    主要实现步骤如下: 1、JSP页面使用脚本代码执行ajax请求 2、Action中查询出需要返回的数据,并转换为json类型模式数据 3、配置struts.xml文件 4、页面脚本接受并处理数据!

    Struts2+Spring+Hibernate+Ehcache+AJAX+JQuery+Oracle 框架集成用户登录注册Demo工程

    3.Ajax无刷新异步调用Struts2,返回Json数据,以用户注册为例。 4.在服务端分页查询功能,优点:实时性:跳页才查询。数据量小:只加载当前页的记录进行显示。 5.单数据源配置(兼容Tomcat和Weblogic)。 6.Hibernate...

    最新Struts2+jq+ajax+json 学会总要4步‵‵超级简单,里面包含实例

    最新Struts2.3.8 + jquery + ajax + json 学会struts+jq+ajax+json只要4步‵‵经过作者的总结超级简单 1. 导入struts2 及json包 asm-3.3.jar asm-commons-3.3.jar asm-tree-3.3.jar commons-fileupload-1.2.2.jar...

    Struts2入门教程。包括jquery集成等。入门必看

    4.2 struts2框架实现数据校验.....................................................................................................................34 第 5章 国际化实现......................................

    dangdang和smartstruts2.rar

    Struts2、JDBC+连接池(dbcp)、jQuery+Ajax、javamail、log4j、junit、MySQL 系统架构: 表现层:jQuery+Ajax、Struts2标签+OGNL 控制层:Struts2控制器,Action组件 业务层:JavaBean组件、javamail 数据访问层...

    java命名规范 开发规范

    2. Action类相应方法使用封装好的HttpClient相关工具类,准备好HTTP请求的相关参数header参数和body参数并以xml的方式提交HTTP请求; 3. 解析该HTTP请求返回值(XML或JSON); 4. 响应结果; 5. 测试; 备注: 开发...

    当当网全套源码(附带邮箱验证功能)

    Struts2,JDBC(连接池),jQuery,Ajax 2)设计思想 MVC和分层设计思想 a.显示层:JSP组件(jQuery,Ajax) b.控制层:Struts2控制器组件、Action组件 c.业务层:Bean组件 d.数据访问层:DAO组件(JDBC) 4.数据库...

    达内java培训目录

    Struts2 Struts2核心控制流程、Ognl、Action、Interceptor、Result、FreeMarker、Struts2标记库、Struts2扩展、Struts2应用技巧(输入验证、消息国际化、文件上传和下载、防止重复提交等)。 熟练掌握Struts2核心...

    当当网电商系统全套源码亲测通过(附带邮箱验证功能)

    struts2,JDBC(连接池),jQuery,Ajax 2)设计思想 MVC和分层设计思想 .... 4.数据库设计 1)dangdang数据库导入 2)数据表功能 a.d_user(用户信息表) 存储了用户信息,涉及登录和注册功能) ..... 5. 搭建工程...

    网上商城需求报告

    Struts2、JDBC+连接池(dbcp)、jQuery+Ajax、javamail、log4j、junit、MySQL 系统架构: 表现层:jQuery+Ajax、Struts2标签+OGNL 控制层:Struts2控制器,Action组件 业务层:JavaBean组件、javamail 数据访问层...

    在JavaScript的jQuery库中操作AJAX的方法讲解

    Java软件开发中,后台中我们可以通过各种框架,像SSH等进行对代码的封装,方便我们对Java代码的编写,例如,Struts,SpringMVC对从前台到action的流程进行封装控制,使我们只需要进行一些简单配置就可以实现;...

    Java学习笔记-个人整理的

    \contentsline {chapter}{Contents}{2}{section*.1} {1}Java基础}{17}{chapter.1} {1.1}基本语法}{17}{section.1.1} {1.2}数字表达方式}{17}{section.1.2} {1.3}补码}{19}{section.1.3} {1.3.1}总结}{23}{...

    java面试题

    72.5. Struts 2框架的大致处理流程如下: 68 72.6. Struts体系结构中的组件 69 72.7. struts如何实现国际化 70 72.8. struts2.0的常用标签 71 72.9. action是单实例还是多实例,为什么? 73 72.10. Struts的validate...

    spring_MVC源码

    弃用了struts,用spring mvc框架做了几个项目,感觉都不错,而且使用了注解方式,可以省掉一大堆配置文件。本文主要介绍使用注解方式配置的spring mvc,之前写的spring3.0 mvc和rest小例子没有介绍到数据层的内容,...

Global site tag (gtag.js) - Google Analytics