2007-06-23
(F1)Tapestry Upload:Tapestry Upload Component
关键字: Tapestry5本人翻译目的是用来学习Tapestry5的,共享出来希望大家批评指正。计划持续翻译。
chinajavawolf Tapestry 上传组件
用法
Upload组件支持默认值的绑定(基于id)和验证。
组件模板
- <t:form>
- <t:errors/>
- <input t:type="upload" t:id="file" validate="required"/>
- <br/>
- <input type="submit" value="Upload"/>
- </t:form>
这里,因为value参数没有被绑定,这个组件使用它的容器的文件属性(因为组件的id是”file”)。如果你想要上传一个不同的属性,可以绑定value参数或改变组件的id.
页面类
- public class UploadExample
- {
- private UploadedFile _file;
- public UploadedFile getFile()
- {
- return _file;
- }
- public void setFile(UploadedFile file)
- {
- _file = file;
- }
- public void onSuccess()
- {
- File copied = new File("/my/file/location/" + _file.getFileName());
- _file.write(copied);
- }
- }
潜在的问题
这个通用的文件上传库使用CommonsIO文件清除器服务在他们不再需要的时候移除临时文件。这个服务创建了一个线程来完成这个工作。如果commons-io库被共享在多个应用中(例如增加服务器CLASSPATH)。它可能为一个应用过早的对另一个应用终止这个线程并引发错误。(见Resource Cleanup工作组进行更多的讨论)
技术上文件清除服务不是Tapestry Upload必需的(在请求结尾处删除临时文件)。然而目前不可能去废除它(改进请求已经作为FILEUPLOAD-133提出)。
评论
jackytang520
2007-09-10
File copied = new File("/my/file/location/" + _file.getFileName());
_file.write(copied);
T5上传文件这么简单了?
_file.write(copied);
T5上传文件这么简单了?
- 浏览: 62300 次
- 性别:

- 来自: 哈尔滨

- 详细资料
搜索本博客
我的相册
3
共 3 张
共 3 张
最近加入圈子
最新评论
-
(2)Tapestry5学习小结:中 ...
我都是这样做的 public void contributeValidatio ...
-- by walkerstar -
(A18)Tapestry Core :Co ...
我是真的,那么的那么的希望能多贴出一些,代码说出来。既然能翻译干吗不再多总结一下 ...
-- by hongyuzhe -
(A6)Tapestry Core:Form I ...
问个问题呀,我写的时候为什么private UserAuthenticator ...
-- by changshuangyi -
(3)Tapestry5学习小结:显 ...
怪不得我想看5.0的源代码看不了,原来是没有真正的开放出来呢。
-- by zhenjw -
(3)Tapestry5学习小结:显 ...
大哥,小弟刚来,好像这个栏目就成你的专栏了,哈哈 敬佩敬佩
-- by zhenjw






评论排行榜