struts2文件下载时的错误 5
异常信息:java.lang.IllegalArgumentException:Cannotfindajava.io.InputStreamwiththename[inp...
异常信息:java.lang.IllegalArgumentException: Can not find a java.io.InputStream with the name [inputStream] in the invocation stack. Check the <param name="inputName"> tag specified for this action.
struts.xml:
<action name="download" class="upload.DownLoadAction">
<param name="inputPath">\Criteria.txt</param>
<result name="success" type="stream"></result>
<param name="contentType">text/txt</param>
<param name="inputName">targetFile</param>
<param name="contentDisposition">attachment;filename="${inputPath}"</param>
<param name="bufferSize">4096</param>
</action>
DownLoadAction.action
private String inputPath;
public String getInputPath() {
return inputPath;
}
public void setInputPath(String inputPath) {
this.inputPath = inputPath;
}
public InputStream getTargetFile()
{
return ServletActionContext.getServletContext ().getResourceAsStream(inputPath);
}
@Override
public String execute() throws Exception {
return SUCCESS;
}
麻烦各位帮我看看,谢谢啦!
感谢回答者: 116.208.113.* 2010-5-19 21:26 ,
但是我想请问一下input = new FileInputStream (document.getUrl());这行代码中document是从哪儿来的?这是在Action中,不是在页面,麻烦各位知道的请帮忙解答一下,谢谢! 展开
struts.xml:
<action name="download" class="upload.DownLoadAction">
<param name="inputPath">\Criteria.txt</param>
<result name="success" type="stream"></result>
<param name="contentType">text/txt</param>
<param name="inputName">targetFile</param>
<param name="contentDisposition">attachment;filename="${inputPath}"</param>
<param name="bufferSize">4096</param>
</action>
DownLoadAction.action
private String inputPath;
public String getInputPath() {
return inputPath;
}
public void setInputPath(String inputPath) {
this.inputPath = inputPath;
}
public InputStream getTargetFile()
{
return ServletActionContext.getServletContext ().getResourceAsStream(inputPath);
}
@Override
public String execute() throws Exception {
return SUCCESS;
}
麻烦各位帮我看看,谢谢啦!
感谢回答者: 116.208.113.* 2010-5-19 21:26 ,
但是我想请问一下input = new FileInputStream (document.getUrl());这行代码中document是从哪儿来的?这是在Action中,不是在页面,麻烦各位知道的请帮忙解答一下,谢谢! 展开
展开全部
public InputStream getTargetFile()
{
return ServletActionContext.getServletContext ().getResourceAsStream(inputPath);
}
这个地方返回的文件流为NULL,DeBug一下,看看是不是路径不对
{
return ServletActionContext.getServletContext ().getResourceAsStream(inputPath);
}
这个地方返回的文件流为NULL,DeBug一下,看看是不是路径不对
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2010-05-19
展开全部
public InputStream getTargetFile()
{
return ServletActionContext.getServletContext ().getResourceAsStream(inputPath);
}
你把他改为
public InputStream getTargetFile() {
FileInputStream input = null;
try {
input = new FileInputStream (document.getUrl());
}catch(Exception e) {
e.printStackTrace();
}
return input;
}
在struts。xml中去掉
<param name="inputName">inputStream </param> 就可以了
{
return ServletActionContext.getServletContext ().getResourceAsStream(inputPath);
}
你把他改为
public InputStream getTargetFile() {
FileInputStream input = null;
try {
input = new FileInputStream (document.getUrl());
}catch(Exception e) {
e.printStackTrace();
}
return input;
}
在struts。xml中去掉
<param name="inputName">inputStream </param> 就可以了
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
参数错误,控制台打印下 inputPath,看看是不是你要的结果,另外, 到API里查下,这个.getResourceAsStream方法的参数是什么!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
一般就是路径问题了!
我也遇到这个问题,刚刚上CSDN看的,不知道行不行?
我也遇到这个问题,刚刚上CSDN看的,不知道行不行?
参考资料: http://blog.csdn.net/zwp441288971/article/details/7526096
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询