首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2EE开发 >

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

2013-10-12 
求教struts2的文件下载问题?在网上看了好多关于struts2的文件下载代码,自己试了一下,现在出现类型转换问题

求教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方法里吧

热点排行