0 0

struts2 怎么获取post请求(数据是一个xml文件),并作出响应(100表示成功,101表示失败),谁能写出个小例子来,谢谢!!30

struts2 怎么获取post请求(数据是一个xml文件),并作出响应(100表示成功,101表示失败),谁能写出个小例子来,谢谢!!

问题补充:<param name="contentType">text/plain</param> 
<param name="inputName">inStream</param>

你的这些是什么意思?能不能在详细一下,马上结

问题补充:
xiaolongfeixiang 写道

不好意思,Action的包名,忘了改了。自己修改:

	<package name="test" namespace="/common" extends="struts-default">
		<action name="index" class="你的包名.HelloAction">
			<result name="OK" type="stream">
				<param name="contentType">text/plain</param>
				<param name="inputName">inStream</param>
			</result>
		</action>
	</package>



<param name="contentType">text/plain</param>
<param name="inputName">inStream</param>

你的这些是什么意思?能不能在详细一下,马上结

问题补充:
return new ByteArrayInputStream(result.getBytes("UTF-8"));

我懂了,你要是还能解释一下这句话,就十分感谢啦。。
2010年3月29日 15:42

12个答案 按时间排序 按投票排序

0 0

2010年4月08日 17:16
0 0

private void writerJson(String text) {
ActionContext context = ActionContext.getContext();
if (context == null) {
return;
}
HttpServletResponse response = (HttpServletResponse) ActionContext.getContext().get(
ServletActionContext.HTTP_RESPONSE);
response.setContentType("application/json;charset=UTF-8");
response.setCharacterEncoding("UTF-8");
PrintWriter pw = null;
try {
pw = response.getWriter();
} catch (IOException e) {
throw new RuntimeException(e);
}
pw.write(text);
pw.flush();
}

调用 writerJson(text) 返回 null 即可

2010年4月02日 23:38
0 0

把你的这个输入流存放至数组中并使用get方法以“utf-8”的编码制取得值作为返回值...

2010年4月02日 23:23
0 0

<param name="inputName">inStream</param>

inputName就是你的HelloAction里的getInStream()方法的除去get后的名称,Strust会自动去找这个方法

2010年3月31日 19:09
0 0


将 result字符串,以InputStream的方式,返回:

return new ByteArrayInputStream(result.getBytes("UTF-8"));



2010年3月30日 07:49
0 0


简单一点: 就是 Struts2 的下载功能? 也可用于 Ajax

2010年3月29日 17:45
0 0

<param name="contentType">text/plain</param> 
<param name="inputName">inStream</param>


以 输入流的方式,返回给客户端。(相当于 response.write)

第一行:设置此次HTTP 返回的MIME类型

第二行:此次HTTP的流对象,在Action的name。

配置后,Struts,将Action中的inStream输入流,输出的Response中去,并添加text/plain的MIME信息

2010年3月29日 17:40
0 0

contentType 内容类型,

比如contentType为text/html的话,浏览器就当做html解析。

2010年3月29日 17:36
0 0


不好意思,Action的包名,忘了改了。自己修改:

	<package name="test" namespace="/common" extends="struts-default">
		<action name="index" class="你的包名.HelloAction">
			<result name="OK" type="stream">
				<param name="contentType">text/plain</param>
				<param name="inputName">inStream</param>
			</result>
		</action>
	</package>

2010年3月29日 16:11
0 0


一个HelloAciton,用于接受文件上传,这里简单地用是否为空,来标识是否成功。结果(100还是101)放在result中

public class HelloAction {

	private File xmlFile;

	private InputStream inStream;
	
	private boolean ok =  false;
	
	public InputStream getInStream() throws IOException {

		String result = "101";
		if(ok){
			result = "100";
		}
		return new ByteArrayInputStream(result.getBytes("UTF-8"));
	}
	public String execute(){
		
		// 处理File,这里简单地判断是否为空
		if(xmlFile!=null)
			ok = true;
		
		return "OK";
	}
	
	public File getXmlFile() {
		return xmlFile;
	}
	
	public void setXmlFile(File xmlFile) {
		this.xmlFile = xmlFile;
	}
}


配置文件(以流的方式反馈给客户端):
	<package name="test" namespace="/common" extends="struts-default">
		<action name="index" class="edu.xjtu.action.HelloAction">
			<result name="OK" type="stream">
				<param name="contentType">text/plain</param>
				<param name="inputName">inStream</param>
			</result>
		</action>
	</package>

2010年3月29日 16:08
0 0

用HttpClient来模拟GET POST
http://www.xd-tech.com.cn/blog/article.asp?id=34

2010年3月29日 15:52
0 0

xml文件应该是通过post的请求上传。返回101或100字符串。就这个过程。
若是上面的过程,看看下面上传详细过程。并稍微修改一下返回值。
http://www.blogjava.net/sterning/archive/2007/10/23/155239.html

2010年3月29日 15:51

相关推荐

    struts2 使用action属性接收中文参数(post提交)

    Struts2是一个流行的Java web框架,它用于构建和维护可扩展、模块化且易于管理的企业级应用程序。在处理用户请求时,Struts2允许开发者通过Action类来接收和处理参数,包括中文参数。当我们需要通过POST方法提交包含...

    struts2实现的多个文件上传

    Struts2是一个强大的Java web框架,它为开发者提供了丰富的功能,包括处理用户请求、数据绑定、验证、国际化等。在处理文件上传时,Struts2提供了便捷的API和配置方式,使得开发人员能够轻松实现多文件上传的功能。...

    JQuery发起ajax请求Struts2,并操作JSON数据的例子

    在本例中,jQuery会发送一个Ajax请求到Struts2的Action,以获取JSON数据。 **Struts2** 是一个基于MVC(Model-View-Controller)架构的Java Web框架,它简化了Web应用的开发。Struts2提供了一种处理HTTP请求并返回...

    struts2实现文件上传下载

    Struts2是一个强大的MVC(模型-视图-控制器)框架,广泛应用于Java Web开发中。文件上传和下载是Web应用程序中的常见功能,对于用户交互和数据交换至关重要。本篇文章将详细探讨如何在Struts2框架下实现文件的上传与...

    struts2ajax项目

    在Struts2配置文件(struts.xml)中,你需要为这个Action定义一个URL映射,确保jQuery可以正确地发送请求到服务器: ```xml &lt;package name="default" namespace="/" extends="struts-default"&gt; ...

    使用struts2 和ajax进行传递json数据

    使用`@Result`注解或struts.xml配置文件,可以指定一个结果类型为`json`,这样Struts2会将Action的返回对象转换成JSON格式并返回给前端。 **Ajax请求与JSON数据** 前端JavaScript代码使用XMLHttpRequest对象或现代...

    struts2 文件上传

    Struts2 文件上传是Web开发中的一个重要功能,它允许用户通过网页上传文件到服务器。Struts2 是一个基于MVC(Model-View-Controller)设计模式的Java Web框架,提供了丰富的特性和强大的控制层功能,使得文件上传...

    JQuery发送Ajax请求Struts2,并返回JSON的例子

    在Struts2中,创建一个名为`Struts2Action.java`的Action类,处理Ajax请求并返回JSON。需要添加Struts2的JSON插件支持,然后定义一个方法,如`execute()`,返回`json`结果类型: ```java @Action(value = ...

    json struts2 ajax文件上传 input type=file,选择相同文件也提交 附带类库

    在MyEclipse中,你可以创建一个Struts2项目,导入所需的依赖库,然后按照上述步骤配置Action、配置文件和前端页面。在测试过程中,记得设置好服务器的临时目录,以便Struts2可以临时存储上传的文件。 总的来说,这...

    struts2+jquery执行ajax并返回json类型数据(源码)

    2. **配置Struts2的struts.xml**:在项目的配置文件中,你需要为你的Action添加一个条目,指定其访问路径、结果类型等信息。确保已经配置了JSON插件,以便Struts2能够正确地序列化Java对象为JSON格式。 3. **前端...

    ajax请求传值Struts2+jsp

    1. **配置Struts2**:首先确保在`struts.xml`配置文件中添加了AJAX相关的拦截器,如`params`和`defaultStack`,它们允许Struts2接收和处理来自AJAX请求的数据。 2. **创建Action类**:定义一个Struts2 Action类,该...

    Struts2文件的上传和下载

    Struts2会自动处理`multipart/form-data`类型的请求,并将文件内容封装在`ServletActionContext`中,可以通过`ServletActionContext.getRequest().getParts()`来访问上传的文件。例如: ```java public class ...

    android客户端上传文件,struts2服务端接收

    1. 在Struts2配置文件(struts.xml)中,定义一个Action,指定接收请求的方法。 2. Action类中声明一个类型为`File`的字段,对应上传的文件,以及一个类型为`String`的字段,存储文件名。 3. 使用`@Result`注解指定...

    AJAX 想Struts2后台传送Json数据并向前台返回Json格式的数据

    1. 配置Struts2:在struts.xml配置文件中,为Action添加一个JSON结果类型,这样Struts2将会返回JSON响应。 2. 接收JSON数据:在Action类的setter方法中,使用@Param注解接收JSON参数。 3. 处理业务逻辑:在Action中...

    Struts2+jquery

    例如,当用户触发一个按钮点击事件时,可以使用jQuery发送一个POST请求到Struts2 Action,Action处理请求后返回结果,jQuery再将结果显示在页面上。 Ajax是Asynchronous JavaScript and XML的缩写,虽然现代Ajax...

    httpclient 客户端发送xml报文到服务器端采用post方式(加密)传递

    在IT行业中,XML(eXtensible Markup Language)是一种用于数据交换的标准格式,尤其在Web服务和客户端-服务器通信中广泛应用。本示例探讨的是如何使用HTTPClient库在客户端发送XML报文到服务器端,且报文通过POST...

    Struts2文件上传下载和表单重复提交问题

    然后,在Action类中创建一个`java.io.File`或者`org.apache.struts2.dispatcher.multipart.FileItem`类型的字段来接收上传的文件,并使用`@FileUpload`注解标记。最后,处理请求时,框架会自动将上传的文件内容填充...

    struts2返回json数据的方法一 使用json-default

    在Struts2中,处理Action类的结果通常会重定向到一个JSP页面或发送一个简单的文本响应。然而,在现代Web应用中,JSON(JavaScript Object Notation)格式的数据交换变得越来越普遍,因为它能轻松地在服务器和客户端...

    AJAX和struts2传递JSON数组

    而Struts2是一个基于MVC(Model-View-Controller)架构的Java Web框架,它极大地简化了Java应用程序的开发。在本场景中,我们将探讨如何使用AJAX来传递JSON数组,并在Struts2的Action中接收和处理这些数据。 首先,...

    android客户端上传文件源码,struts2服务端接收源码 .zip

    3. 创建请求:构造POST请求,设置请求头(如Content-Type、Authorization等)并附加文件数据。 4. 发送请求:通过网络库发送请求,并在完成时处理响应。 然后,我们转向Struts2服务端。Struts2是一个基于MVC(模型-...

Global site tag (gtag.js) - Google Analytics