Seam <s:fileUpload>标签的用法

来源:互联网 发布:如果一战德国胜利 知乎 编辑:程序博客网 时间:2024/05/21 22:38

渲染一个文件上载控件。这个控件必须通过在form中使用 multipart/form-data 的编码类型,例如:

<h:form enctype="multipart/form-data">

对于多部分请求,也必须在 web.xml 中配置Seam Multipart Servlet过滤器:

<filter><filter-name>Seam Filter</filter-name><filter-class>org.jboss.seam.servlet.SeamFilter</filter-class></filter><filter-mapping><filter-name>Seam Filter</filter-name><url-pattern>/*</url-pattern></filter-mapping>

配置

下列多部分请求的配置选项可以在 components.xml 中进行配置:

  • createTempFiles — 如果这个选择设置为true,上载好的文件就流向一个临时文件,而不是流向内存。

  • maxRequestSize — 允许上载文件的最大字节数。

下面是一个例子:

<component class="org.jboss.seam.web.MultipartFilter"><property name="createTempFiles">true</property><property name="maxRequestSize">1000000</property></component>

属性

  • data — 这个值绑定接收二进制文件数据。 接收域应该声明为一个 byte[] 或者 InputStream (必要)。

  • contentType — 这个值绑定接收文件的内容类型(可选)。

  • fileName — 这个值绑定接收的文件名(可选)。

  • fileSize — 这个值绑定接收的文件大小(可选)。

  • accept — 可以接受的一个以逗号分隔的内容类型列表,可能浏览器不支持。 例如 "images/png,images/jpg""images/"

  • style — 控件的样式,即CSS之类的

  • styleClass — 控件的样式类

用法

<s:fileUpload id="picture" data="#{register.picture}"accept="image/png"contentType="#{register.pictureContentType}" />
原创粉丝点击