-
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个答案 按时间排序 按投票排序
-
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
-
<param name="inputName">inStream</param>
inputName就是你的HelloAction里的getInStream()方法的除去get后的名称,Strust会自动去找这个方法2010年3月31日 19:09
-
将 result字符串,以InputStream的方式,返回:return new ByteArrayInputStream(result.getBytes("UTF-8"));
2010年3月30日 07:49
-
<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
-
不好意思,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
-
一个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
-
用HttpClient来模拟GET POST
http://www.xd-tech.com.cn/blog/article.asp?id=342010年3月29日 15:52
-
xml文件应该是通过post的请求上传。返回101或100字符串。就这个过程。
若是上面的过程,看看下面上传详细过程。并稍微修改一下返回值。
http://www.blogjava.net/sterning/archive/2007/10/23/155239.html2010年3月29日 15:51
相关推荐
Struts2是一个流行的Java web框架,它用于构建和维护可扩展、模块化且易于管理的企业级应用程序。在处理用户请求时,Struts2允许开发者通过Action类来接收和处理参数,包括中文参数。当我们需要通过POST方法提交包含...
Struts2是一个强大的Java web框架,它为开发者提供了丰富的功能,包括处理用户请求、数据绑定、验证、国际化等。在处理文件上传时,Struts2提供了便捷的API和配置方式,使得开发人员能够轻松实现多文件上传的功能。...
在本例中,jQuery会发送一个Ajax请求到Struts2的Action,以获取JSON数据。 **Struts2** 是一个基于MVC(Model-View-Controller)架构的Java Web框架,它简化了Web应用的开发。Struts2提供了一种处理HTTP请求并返回...
Struts2是一个强大的MVC(模型-视图-控制器)框架,广泛应用于Java Web开发中。文件上传和下载是Web应用程序中的常见功能,对于用户交互和数据交换至关重要。本篇文章将详细探讨如何在Struts2框架下实现文件的上传与...
在Struts2配置文件(struts.xml)中,你需要为这个Action定义一个URL映射,确保jQuery可以正确地发送请求到服务器: ```xml <package name="default" namespace="/" extends="struts-default"> ...
使用`@Result`注解或struts.xml配置文件,可以指定一个结果类型为`json`,这样Struts2会将Action的返回对象转换成JSON格式并返回给前端。 **Ajax请求与JSON数据** 前端JavaScript代码使用XMLHttpRequest对象或现代...
Struts2 文件上传是Web开发中的一个重要功能,它允许用户通过网页上传文件到服务器。Struts2 是一个基于MVC(Model-View-Controller)设计模式的Java Web框架,提供了丰富的特性和强大的控制层功能,使得文件上传...
在Struts2中,创建一个名为`Struts2Action.java`的Action类,处理Ajax请求并返回JSON。需要添加Struts2的JSON插件支持,然后定义一个方法,如`execute()`,返回`json`结果类型: ```java @Action(value = ...
在MyEclipse中,你可以创建一个Struts2项目,导入所需的依赖库,然后按照上述步骤配置Action、配置文件和前端页面。在测试过程中,记得设置好服务器的临时目录,以便Struts2可以临时存储上传的文件。 总的来说,这...
2. **配置Struts2的struts.xml**:在项目的配置文件中,你需要为你的Action添加一个条目,指定其访问路径、结果类型等信息。确保已经配置了JSON插件,以便Struts2能够正确地序列化Java对象为JSON格式。 3. **前端...
1. **配置Struts2**:首先确保在`struts.xml`配置文件中添加了AJAX相关的拦截器,如`params`和`defaultStack`,它们允许Struts2接收和处理来自AJAX请求的数据。 2. **创建Action类**:定义一个Struts2 Action类,该...
Struts2会自动处理`multipart/form-data`类型的请求,并将文件内容封装在`ServletActionContext`中,可以通过`ServletActionContext.getRequest().getParts()`来访问上传的文件。例如: ```java public class ...
1. 在Struts2配置文件(struts.xml)中,定义一个Action,指定接收请求的方法。 2. Action类中声明一个类型为`File`的字段,对应上传的文件,以及一个类型为`String`的字段,存储文件名。 3. 使用`@Result`注解指定...
1. 配置Struts2:在struts.xml配置文件中,为Action添加一个JSON结果类型,这样Struts2将会返回JSON响应。 2. 接收JSON数据:在Action类的setter方法中,使用@Param注解接收JSON参数。 3. 处理业务逻辑:在Action中...
例如,当用户触发一个按钮点击事件时,可以使用jQuery发送一个POST请求到Struts2 Action,Action处理请求后返回结果,jQuery再将结果显示在页面上。 Ajax是Asynchronous JavaScript and XML的缩写,虽然现代Ajax...
在IT行业中,XML(eXtensible Markup Language)是一种用于数据交换的标准格式,尤其在Web服务和客户端-服务器通信中广泛应用。本示例探讨的是如何使用HTTPClient库在客户端发送XML报文到服务器端,且报文通过POST...
然后,在Action类中创建一个`java.io.File`或者`org.apache.struts2.dispatcher.multipart.FileItem`类型的字段来接收上传的文件,并使用`@FileUpload`注解标记。最后,处理请求时,框架会自动将上传的文件内容填充...
在Struts2中,处理Action类的结果通常会重定向到一个JSP页面或发送一个简单的文本响应。然而,在现代Web应用中,JSON(JavaScript Object Notation)格式的数据交换变得越来越普遍,因为它能轻松地在服务器和客户端...
而Struts2是一个基于MVC(Model-View-Controller)架构的Java Web框架,它极大地简化了Java应用程序的开发。在本场景中,我们将探讨如何使用AJAX来传递JSON数组,并在Struts2的Action中接收和处理这些数据。 首先,...
3. 创建请求:构造POST请求,设置请求头(如Content-Type、Authorization等)并附加文件数据。 4. 发送请求:通过网络库发送请求,并在完成时处理响应。 然后,我们转向Struts2服务端。Struts2是一个基于MVC(模型-...