primefaces4.0提供了强大的文件上传功能,可以轻松的实现文件上传下载。
primefaces上传文件只需要在web.xml中增加配置就可以了。具体配置如下:
<filter> <filter-name>PrimeFaces FileUpload Filter</filter-name> <filter-class>org.primefaces.webapp.filter.FileUploadFilter</filter-class> <init-param> <param-name>uploadDirectory</param-name> <param-value></param-value> </init-param> </filter> <filter-mapping> <filter-name>PrimeFaces FileUpload Filter</filter-name> <servlet-name>Faces Servlet</servlet-name> </filter-mapping>
其中<init-param>中的参数随便写。
虽然文件上传很方便,但在用的过程中就遇到了一个问题:中文文件上传文件名乱码。找了很多资料,有人说写转换器,但最终也是最简单的办法 就是写过滤器,用来设置请求、响应的编码。
@Override public void doFilter(ServletRequest arg0, ServletResponse arg1, FilterChain arg2) throws IOException, ServletException { arg0.setCharacterEncoding("UTF-8"); arg1.setCharacterEncoding("UTF-8"); arg2.doFilter(arg0, arg1); }
<filter> <filter-name>Character Encoding Filter</filter-name> <filter-class>com.lgm.common.web.CharacterEncodingFilter</filter-class> </filter> <filter-mapping> <filter-name>Character Encoding Filter</filter-name> <servlet-name>Faces Servlet</servlet-name> </filter-mapping>
完成上述操作后,会发现表单提交中文正常,但上传文件的文件名还是有乱码。顿时就无语了。后来找到原因自己都一阵无语,在web.xml中,如果有多个过滤器 还是有顺序问题的。
<!-- 字符编码过滤 --> <filter> <filter-name>Character Encoding Filter</filter-name> <filter-class>com.lgm.common.web.CharacterEncodingFilter</filter-class> </filter> <filter-mapping> <filter-name>Character Encoding Filter</filter-name> <servlet-name>Faces Servlet</servlet-name> </filter-mapping> <!-- primefaces文件上传配置 --> <filter> <filter-name>PrimeFaces FileUpload Filter</filter-name> <filter-class>org.primefaces.webapp.filter.FileUploadFilter</filter-class> <init-param> <param-name>uploadDirectory</param-name> <param-value></param-value> </init-param> </filter> <filter-mapping> <filter-name>PrimeFaces FileUpload Filter</filter-name> <servlet-name>Faces Servlet</servlet-name> </filter-mapping>
这样配置之后,中文乱码问题就解决了。
相关推荐
在pom.xml文件中添加PrimeFaces的依赖即可: ```xml <groupId>org.primefaces <artifactId>primefaces 最新版本号 ``` ##### 3.2 依赖 PrimeFaces依赖于JSF,因此确保项目中已经包含了JSF的相关依赖。此外,...
1. **PrimeFaces组件**:PrimeFaces提供了多种组件,如数据表(DataTable)、图表(Chart)、日期选择器(Calendar)、文件上传(FileUpload)、树形结构(Tree)、对话框(Dialog)等。在示例代码中,你可以看到...
这个JAR文件是PrimeFaces 3.5的核心库,包含了所有预定义的组件、行为和渲染器。开发者在项目中引入这个JAR,就能在JSF页面上使用PrimeFaces的组件。这些组件通过XML标记(如`<p:commandButton>`)在JSF视图层声明...
**PrimeFaces.zip** 是一个包含SpringBoot与PrimeFaces整合示例的压缩文件。SpringBoot是一个流行的Java框架,用于简化Spring应用程序的开发,而PrimeFaces是一个功能丰富的JavaScript库,专为JavaServer Faces (JSF...
本篇文章将深入探讨如何使用PrimeFaces的`<p:fileUpload>`组件在JSF应用中实现实时、便捷的文件上传。 首先,让我们了解`<p:fileUpload>`的基本用法。在JSF页面中,你可以通过以下方式引入这个组件: ```html ...
JSF应用通常需要配置web.xml文件以及faces-config.xml文件,引入PrimeFaces资源并进行一些必要的设置。 为了快速上手,PrimeFaces提供了一个简单的“HelloWorld”示例,帮助开发者搭建起基本的开发环境,包括必要的...
- 文件上传:使用PrimeFaces的FileUpload组件,处理文件上传过程,包括文件大小和类型的限制。 - 文件列表:展示用户文件和目录,可能需要使用PrimeFaces的Datatable组件来创建可排序和过滤的列表。 - 文件操作:...
PrimeFaces的核心在于其丰富的组件集,这些组件包括但不限于数据网格、图表、日历、文件上传/下载、对话框、滑块、树形结构等。这些组件不仅具有丰富的功能,还支持触摸设备,因此能够适应各种屏幕尺寸。例如,`p:...
1. **组件丰富**:PrimeFaces 提供了上百个预先封装好的UI组件,如数据表(DataTable)、图表(Chart)、日历(Calendar)、文件上传(FileUpload)等,这些组件都经过精心设计,易于使用且高度可定制。 2. **响应...
10. 调试技巧以及在PrimeFaces开发过程中可能遇到的常见问题的解决方案。 这本书的目标读者主要是希望利用PrimeFaces提升JSF Web应用开发效率的开发人员,特别是那些希望使用PrimeFaces提供的丰富组件和功能来构建...
什么是PrimeFaces? PrimeFaces是一套开源的JSF组件套装,共有100多个支持AJAX的JSF组件。另外一个TouchFaces模块提供了用于移动web应用开发的UI工具。PrimeFaces的主要目标是为JSF创建终级组件集。 Prime技术 ...
BlockUI用于阻止用户与页面其他部分进行交互,直到某个任务完成,例如上传文件或处理数据。 ##### 3.7 Button Button组件是一个标准按钮,可以触发动作或事件。 ##### 3.8 Cache Cache组件用于缓存数据,以减少...
- FileUpload:文件上传组件,提供用户友好的方式上传文件到服务器。 - Growl:用于显示信息提示,支持自定义样式和动画效果。 除了上述组件,PrimeFaces还提供了其他丰富的组件和功能,包括布局组件、菜单组件、...
在解压文件“ova2-primefaces-cookbook-edb7312”后,我们可以发现一系列与 Primefaces 相关的源代码文件。这些文件通常包括了示例项目、组件实现、样式表和 JavaScript 文件等,它们为我们提供了一个实践性的学习...
安装 PrimeFaces 非常简单,主要步骤包括将 PrimeFaces 的 JAR 文件添加到项目的类路径中。对于 Maven 项目,可以通过在 `pom.xml` 文件中添加相应的依赖来完成这一过程。例如: ```xml <groupId>org.primefaces ...
primefaces-5.0.jar
综合以上信息,我们可以看出这是一个关于使用MetaWidget与PrimeFaces集成开发JSF应用的项目,同时包含了一套用于单元测试的已知问题注释集。对于想要学习JSF、MetaWidget或PrimeFaces的开发者来说,这是一个非常有...
PrimeFaces是一个用于提高JSF Web应用程序开发效率的开源类库。 UI Components:PrimeFaces UI模块提供了拥有Rich Web用户体 验的各种JSF组件。PrimeFaces使用Yahoo UI库做为默认的客户端框架。PrimeFaces提供的...
9. FileUpload:允许用户上传文件到服务器。 10. Growl:这是一个用于显示通知消息的组件,类似于桌面应用程序中的弹出通知。 11. InputText、InputTextarea:这些是基础表单组件,提供了文本输入和文本区域输入...