struts2下载DOC时出错提示:java.lang.ClassCastException: java.io.ByteArrayInputStream

如题:项目用S2SH框时,在ACTION里读取DOC文件,struts.xml配置文件代码如下:
 <package name="test" extends="struts-default" namespace="/test">
<default-action-ref name="download"/>
<action name="getDocFile" class="downloadAction" method="getDownLoadFile">
<param name="filePath">/res/test.doc</param>
<result name="success" type="stream">
<param name="contentType">application/octet-stream;charset=ISO8859-1</param>
<param name="ipnutName">downLoadFile</param>
<param name="contentDisposition">attachment;filename="test.doc"</param>
<param name="bufferSize">4096</param>
</result>
</action>

</package>

ACTION的代码如下:


@Controller("downloadAction")
@Scope("prototype")
public class DownLoadAction implements Action {

private InputStream inputStream;
private String filePath;

public InputStream getDownLoadFile(){
System.out.println(filePath);

return ServletActionContext.getServletContext().getResourceAsStream(filePath);
}

public InputStream getInputStream() {
return inputStream;
}

public void setInputStream(InputStream inputStream) {
this.inputStream = inputStream;
}

public String getFilePath() {
return filePath;
}

public void setFilePath(String filePath) {
this.filePath = filePath;
}



当在页面点击下载时会出现如下提示:

description The server encountered an internal error () that prevented it from fulfilling this request.

exception

java.lang.ClassCastException: java.io.ByteArrayInputStream
com.opensymphony.xwork2.DefaultActionInvocation.invokeAction(DefaultActionInvocation.java:451)
com.opensymphony.xwork2.DefaultActionInvocation.invokeActionOnly(DefaultActionInvocation.java:280)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:243)
com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:165)
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:252)
org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor
…………………………


我自己也郁闷一天了,这个功能就是做不出来,而下载为txt文件时就没有问题,请帮忙解决一下,急啊!!!!!


=================================================================================

谢谢各位,问题已经解决了,换了其他的方法来解决项目需要了:)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值