锁定老帖子 主题:GWT上传文件
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2009-09-02
最后修改:2009-09-02
该内容网上有很多相关搜索,但是都未能解决我的问题。
最后还是自己动手丰衣足食了
首先,建立前台页面,这个建议根据GWT官方API上给出的例子编写。 需要注意的是
form.setAction("/myFormHandler");
最好写成setAction(GWT.getModuleBaseURL + "/myFormHandler")
再就是Servlet的编写了,网上很多利用commons-fileupload库的方法,这里就不多说了
最后,需要注意的是,配置文件web.xml。比如上面的action的配置,假设你的网络应用为aaa,那么需要在web.xml文件中添加
<servlet> <servlet-name>fileUploadServlet</servlet-name> <servlet-class>aaa.server.FileUploadImpl</servlet-class> </servlet>
<servlet-mapping> <servlet-name>fileUploadServlet</servlet-name> <url-pattern>/aaa/myFormHandler</url-pattern> </servlet-mapping>
这样,便可以正常上传文件了。
PS:文件上传之后的处理还真是要注意下,不同的浏览器上传之后的文件名居然不一样,我用chrome测试上传之后,到servlet就只是一个文件名,而不是全路径;而使用IE上传之后,居然是全路径。原来只写了一种,当然可想而知,肯定出错啊。呵呵,学习了,今后还要注意下浏览器兼容的问题。
还有,就是不同操作系统中路径分隔符的问题,原来都是使用
"\\"
这种形式,也知道这样不好,应该使用File.seperator来表示,但是由于一直没有出问题所以在windows上也没有改过。可是,今天做了一次应用的迁移,是从windows上移到linux下的。当然,又出错了。。。然后又改源码,真是郁闷。
还有,我在使用File.pathSeperator的时候,怎么变成 ";"了,搞了半天弄明白了,
File.pathSeperator中的path指的是环境变量PATH,而在windows下PATH的分隔符当然是;了,如果在linux下运行,应该就是 :
声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
浏览 2184 次