读书人

求教struts2的文件下载有关问题

发布时间: 2013-10-12 11:54:02 作者: rapoo

求教struts2的文件下载问题?
在网上看了好多关于struts2的文件下载代码,自己试了一下,现在出现类型转换问题求教哪位高手帮解决一下。谢谢
我用的框架是SSI框架

代码如下:
DownloadAction.java


package com.test.action;

import java.io.InputStream;

import com.opensymphony.xwork2.ActionSupport;

public class DownloadAction extends ActionSupport {
public InputStream getTargetFile() throws Exception {
return new java.io.FileInputStream("F:\\222.doc");
}

public String execute() throws Exception {
return SUCCESS;
}
}




struts.xml


<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.1//EN"
"http://struts.apache.org/dtds/struts-2.1.dtd">

<struts>
<!--
<constant name="struts.enable.DynamicMethodInvocation" value="true" />
-->
<constant name="struts.custom.i18n.resources" value="messages"/>
<constant name="struts.i18n.encoding" value="GBK"/>
<constant name="struts.objectFactory" value="spring"></constant>

<package name="struct2" namespace="/" extends="struts-default">
<action name="download" class="downloadAction" method="getTargetFile">
<result name="success" type="stream">
<!--<param name="contentType">application/excel</param>-->
<param name="contentType">text/plain</param>
<param name="inputName">targetFile</param>
<param name="contentDisposition">attachment;filename="222.txt"</param>
<param name="bufferSize">4096</param>
</result>
</action>
</package>

<!-- Add packages here -->

</struts>




异常信息:java.io.FileInputStream cannot be cast to java.lang.String







[解决办法]
<param name="inputName">${targetFile}</param>

[解决办法]
文件输出流应该在execute方法里吧

读书人网 >J2EE开发

热点推荐