急,为何我的文件用jspsmart上传不了?

xindijingying 2004-07-14 12:00:11
我用jspsmart做一个上传图片文件的JSP页面,我是租用ISP商家的虚拟空间。
部分代码如下:
////////////////////////////////////////////////////////////
<jsp:useBean id="myUpload" scope="page" class="com.jspsmart.upload.SmartUpload"/>
...
String strurl=getServletContext().getRealPath("/")+"hg_news\\uploadpics\\";
strTempname=myUpload.getFiles().getFile(i).getFileName();
if(!strTempname.equals(""))
{
myFile.saveAs(strurl+strTempname,myUpload.SAVE_PHYSICAL);
out.print("<br>路径测试:"+strurl+strTempname);//测试代码
iISize=myUpload.getFiles().getFile(i).getSize();
}
/////////////////////////////////////////////////////////////

结果在提交后程序也没有提示出错,iISize值确实也得到了,但是文件却就是没有上传到我的指定目录下!!!
我跟踪了一下路径,(测试代码)结果为:“路径测试:/home/myweb.com/web/www/hg_news\uploadpics\gl18.jpg”

(注:"myweb.com"是我的域名。)

我在本地机器上运行是能够将文件“传”到指定目录下的,但在ISP上的机器上就是不行,这是为什么???

请各位高手指点!!!
...全文
206 32 打赏 收藏 转发到动态 举报
写回复
用AI写文章
32 条回复
切换为时间正序
请发表友善的回复…
发表回复
xindijingying 2004-08-25
  • 打赏
  • 举报
回复
晓得别人怎么跟我说的么?本公司不虚拟空间不支持该组件上传。倒!
再问,没有后文。
sunwei007 2004-07-30
  • 打赏
  • 举报
回复
换个路径试试
xindijingying 2004-07-30
  • 打赏
  • 举报
回复
哎~,还是解决不了这个问题。郁闷。算了,打个电话去问问ISP罢了
HPsoft 2004-07-22
  • 打赏
  • 举报
回复
楼主,不知道你的问题解决了没有?我正好也是这个问题郁闷死了
gong1 2004-07-15
  • 打赏
  • 举报
回复
路径问题。^_^
其实你为什么不自己指定路径?
不要写在程序中。
^_^
xindijingying 2004-07-15
  • 打赏
  • 举报
回复
ransion(西方失败) ( ):
用了你的办法:


HTTP Status 500 -

--------------------------------------------------------------------------------

type Exception report

message

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

exception

javax.servlet.ServletException: File can't be saved (1120).
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:825)
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:758)
org.apache.jsp.hg_005fnews.hg_005fnews_005fupdate_jsp._jspService(hg_005fnews_005fupdate_jsp.java:327)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:298)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:810)


root cause

com.jspsmart.upload.SmartUploadException: File can't be saved (1120).
com.jspsmart.upload.File.saveAs(File.java:108)
org.apache.jsp.hg_005fnews.hg_005fnews_005fupdate_jsp._jspService(hg_005fnews_005fupdate_jsp.java:228)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:298)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:810)


note The full stack trace of the root cause is available in the Apache Tomcat/5.0.24 logs.
==============================================================================

还是出错,是不是服务器不允许我这么做(上传文件)啊?
xindijingying 2004-07-15
  • 打赏
  • 举报
回复
先谢谢大家!!!
我去试试看!!!!
xindijingying 2004-07-15
  • 打赏
  • 举报
回复
这么多热心人!!!:)
谢谢大家!
不管问题能否解决,我都会给大家分的,另外,如果解决了,我想还应该另外开个帖子专门给分给其中几位!!
谢谢大家了!
早就学JSP了,可惜一直没有机会好好用,弄的一年多了还是菜鸟一个:(
ransion 2004-07-15
  • 打赏
  • 举报
回复
搂主看看jspsmart例子2,可以使用虚拟路径
类似myFile.saveAs("/upload/" + myFile.getFileName(), mySmartUpload.SAVE_VIRTUAL);
blueice2002 2004-07-15
  • 打赏
  • 举报
回复
路径问题吧
leshui 2004-07-15
  • 打赏
  • 举报
回复
Strign trace=getServletContext().getRealPath("/")+"\\data\\xwxx\\gddt\\"+mDateTimeFlowSort+".doc";
ransion 2004-07-15
  • 打赏
  • 举报
回复
gong1(轻松编程)说的很详细了
问题就是在路径上,你写的路径是你没有权限访问的
leshui 2004-07-15
  • 打赏
  • 举报
回复
http://dev.csdn.net/develop/article/18/18987.shtm
gong1 2004-07-15
  • 打赏
  • 举报
回复
String strurl=getServletContext().getRealPath("/")+"hg_news/ploadpics/";
gong1 2004-07-15
  • 打赏
  • 举报
回复
String strurl=getServletContext().getRealPath("/")+"hg_news//ploadpics//";
^_^。
gong1 2004-07-15
  • 打赏
  • 举报
回复
执教不敢。
给你一点建议吧。
上传页面upload.html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>文件上传</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>

<body>
<p> </p>
<p align="center">上传文件选择</p>
<FORM METHOD="POST" ACTION="jsp/do_upload.jsp"
ENCTYPE="multipart/form-data">
<input type="hidden" name="TEST" value="good">
<table width="75%" border="1" align="center">
<tr>
<td><div align="center">1、
<input type="FILE" name="FILE1" size="30">
</div></td>
</tr>
<tr>
<td><div align="center">2、
<input type="FILE" name="FILE2" size="30">
</div></td>
</tr>
<tr>
<td><div align="center">3、
<input type="FILE" name="FILE3" size="30">
</div></td>
</tr>
<tr>
<td><div align="center">4、
<input type="FILE" name="FILE4" size="30">
</div></td>
</tr>
<tr>
<td><div align="center">
<input type="submit" name="Submit" value="上传它!">
</div></td>
</tr>
</table>
</FORM>
</body>
</html>


上传处理页面do_upload.jsp

<%@ page contentType="text/html; charset=gb2312" language="java"
import="java.util.*,com.jspsmart.upload.*" errorPage="" %>
<html>
<head>
<title>文件上传处理页面</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>

<body>
<%
// 新建一个SmartUpload对象
SmartUpload su = new SmartUpload();
// 上传初始化
su.initialize(pageContext);
// 设定上传限制
// 1.限制每个上传文件的最大长度。
// su.setMaxFileSize(10000);
// 2.限制总上传数据的长度。
// su.setTotalMaxFileSize(20000);
// 3.设定允许上传的文件(通过扩展名限制),仅允许doc,txt文件。
// su.setAllowedFilesList("doc,txt");
// 4.设定禁止上传的文件(通过扩展名限制),禁止上传带有exe,bat,
jsp,htm,html扩展名的文件和没有扩展名的文件。
// su.setDeniedFilesList("exe,bat,jsp,htm,html,,");
// 上传文件
su.upload();
// 将上传文件全部保存到指定目录
int count = su.save("/upload");
out.println(count+"个文件上传成功!<br>");

// 利用Request对象获取参数之值
out.println("TEST="+su.getRequest().getParameter("TEST")
+"<BR><BR>");

// 逐一提取上传文件信息,同时可保存文件。
for (int i=0;i<su.getFiles().getCount();i++)
{
com.jspsmart.upload.File file = su.getFiles().getFile(i);

// 若文件不存在则继续
if (file.isMissing()) continue;

// 显示当前文件信息
out.println("<TABLE BORDER=1>");
out.println("<TR><TD>表单项名(FieldName)</TD><TD>"
+ file.getFieldName() + "</TD></TR>");
out.println("<TR><TD>文件长度(Size)</TD><TD>" +
file.getSize() + "</TD></TR>");
out.println("<TR><TD>文件名(FileName)</TD><TD>"
+ file.getFileName() + "</TD></TR>");
out.println("<TR><TD>文件扩展名(FileExt)</TD><TD>"
+ file.getFileExt() + "</TD></TR>");
out.println("<TR><TD>文件全名(FilePathName)</TD><TD>"
+ file.getFilePathName() + "</TD></TR>");
out.println("</TABLE><BR>");

// 将文件另存
// file.saveAs("/upload/" + myFile.getFileName());
// 另存到以WEB应用程序的根目录为文件根目录的目录下
// file.saveAs("/upload/" + myFile.getFileName(),
su.SAVE_VIRTUAL);
// 另存到操作系统的根目录为文件根目录的目录下
// file.saveAs("c:\\temp\\" + myFile.getFileName(),
su.SAVE_PHYSICAL);

}
%>
</body>
</html>


这里面得方法是较全得。你看看吧。
你的是路径问题。^_^
祝你好运。^_^
xindijingying 2004-07-15
  • 打赏
  • 举报
回复
gong1(轻松编程) ( ):
能否详细指教?
谢谢!!!
xindijingying 2004-07-14
  • 打赏
  • 举报
回复
HELP ME!
xindijingying 2004-07-14
  • 打赏
  • 举报
回复
自己顶!
xindijingying 2004-07-14
  • 打赏
  • 举报
回复
还是不行啊, fuzhe(令狐虫) ( ) :(

诸位,你们没有做实际的网站的么?请赐教吧,我都哭了...
加载更多回复(12)

81,090

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧