GWT上传文件

该内容网上有很多相关搜索,但是都未能解决我的问题。

 

最后还是自己动手丰衣足食了

 

首先,建立前台页面,这个建议根据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下运行,应该就是 :

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值