最近在学习Primefaces(当然也是项目中需要用的)。在使用其fileUpload遇到了不小的困难,现总结一下供大家及我自己今后参考使用。

1、首先是使用环境配置:正常的Primefaces开发环境就不多说了,网上多的很。说下专门用于fileUpload的几点。

a. 进行web.xml配置:除了创建Primefaces时系统自动提供的东西外,需要在工程的WEF-INF/web.xml里加入以下几行内容:

    <filter>
<filter-name>PrimeFaces FileUpload Filter</filter-name>
<filter-class>org.primefaces.webapp.filter.FileUploadFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>PrimeFaces FileUpload Filter</filter-name>
<servlet-name>Faces Servlet</servlet-name>
</filter-mapping>
<context-param>
<param-name>primefaces.THEME</param-name>
<param-value>marstor</param-value>
</context-param>

这个原文复制过去就行了,我一朋友在用的时候把

<servlet-name>Faces Servlet</servlet-name>  

里Faces Servlet两个单词首字母小写了,结果上传无法使用害我用了整半天时间检查。

b. 必要的jar包准备  commons-fileupload-1.2.1.jarcommons-io-2.0.1.jar (直接点进去可下载)。这两个文件根据配置不同有的需要放在WEF-INF/lib下一份,有的需要放在{tomctHome}/lib里一份(个人建议一个里面放一份,省得事多)。

c.做完上面的东西后重启一下tomcat。

d.编写fileUpload的代码,注意 mode 要advanced模式的(simple模式的也不好看,也不好调)。

<p:fileUpload fileUploadListener="#{upload.fileUpload}" id="upLoad2"
auto="true" label="导入" update="RegisterInfo" mode="advanced"
style="text-align: center; width: 800px; height: 40px; " />

e.后台正常编写就是了。。里面加个sout,看是不是能把东西打印出来。

2、在做Primefaces时发现另一个东西,就是primefaces的组件可以通过调整实际页面的css来调整其显示效果。也就是我们可以选择部分显示组件而非全部显示组件。还以这个fileUpload组件为示例。正常的 auto="true"模式的组件显示效果如图:
而我做出来效果如图:看,后面的那个灰的bar,和下面的白框都不见了。实际上我在这个页面的css里加入了如下内容:

.ui-fileupload .start {
display: none;
}
.ui-fileupload .cancel {
display: none;
}
.ui-fileupload .progress {
display: none;
} .fileupload-content{
display: none;
} .fileupload-buttonbar{
visibility: hidden;
} .ui-corner-buttom{
display: none;
} .fileinput-button{
visibility: visible;
}

说白了无论什么组件,实际执行到页面里就是一堆html代码。我们用火狐开发者分析这个组件的所以元素,可以看到这个组件的所以组成,然后用css把不想看到的东西屏蔽掉就OK了。

Primefaces的fileUpload组件使用的更多相关文章

  1. .JavaWeb文件上传和FileUpload组件使用

    .JavaWeb文件上传 1.自定义上传 文件上传时的表单设计要符合文件提交的方式: 1.提交方式:post 2.表单中有文件上传的表单项:<input type="file" ...

  2. 文件上传使用FileUpload组件进行代码实现

    使用FileUpload组件进行代码实现 实现步骤 1. 获取解析器工厂: DiskFileItemFactory 2. 获取解析器对象: ServletFileUpload 3. 解析request ...

  3. 实现文件上传功能(FileUpload组件)

    文件上传: 项目中经常用到文件上传. 自己实现文件上传,使用文件上传组件fileupload组件 1.指定表单类型为文件上传, enctype=”multipart/form-data” 2.提交方式 ...

  4. 使用 fileupload 组件完成文件的上传应用

    1. 使用 fileupload 组件完成文件的上传应用 commons-dbutils-1.3.jarcommons-fileupload-1.2.1.jar 1). 需求: > 在 uplo ...

  5. JSP文件上传--FileUpload组件

    如果使用上传操作,并且没有使用框架之类,最好使用Smartupload,因为FileUpdate太难使用. 下载组件: fileupload包:http://commons.apache.org/pr ...

  6. 使用fileupload组件

    1. 进行文件上传时, 表单需要做的准备: 1). 请求方式为 POST: <form action="uploadServlet" method="post&qu ...

  7. 模拟文件上传(三):使用apache fileupload组件进行文件批量上传

    其中涉及到的jar包 jsp显示层: <%@ page language="java" import="java.util.*" pageEncoding ...

  8. 模拟文件上传(二):使用apache fileupload组件进行文件上传

    其中涉及到的jar包: jsp显示层: <%@ page language="java" import="java.util.*" pageEncodin ...

  9. FileUpload组件

    package com.itheima.servlet; import java.io.File; import java.io.FileOutputStream; import java.io.IO ...

随机推荐

  1. c++ ,protected 和 private修饰的构造函数

    c++ protected 和 private修饰的构造函数: 1.在类的外部创建对象时,不能调用protected或private修饰的构造函数. 2.当子类中的构造函数调用父类的private构造 ...

  2. java.lang.NoClassDefFoundError: org.ksoap2.transport.HttpTransportSE异常处理

    原因就是没有打包进去  因为引用进去 编译时没出出现问题 解决如下

  3. OpenBlas编译方法(体验msys下使用MingW)

    OpenBlas是一个优化的Blas库,基于GotoBlas21.13 BSD版,安装步骤如下: Windows下安装: 1. 在SourgeForge下载最新的OpenBlas库:http://so ...

  4. python _thread模块使用

    python关于线程管理的有2个类,_thread(在2.x的版本中叫thread)和threading. # encoding: UTF-8 import thread import time   ...

  5. A shallow summary of oracle log miner

    Sometimes, we should recover one or more rows data which is deleted carelessly by users, but it is n ...

  6. guozhongCrawler的是一个无须配置、便于二次开发

    guozhongCrawler的是一个无须配置.便于二次开发的爬虫开源框架,它提供简单灵活的API,只需少量代码即可实现一个爬虫.模块化设计完全 面向业务提供接口,功能覆盖整个爬虫的生命周期(链接提取 ...

  7. [leetcode] Reverse Linked List 分类: leetcode 算法 2015-07-09 18:44 2人阅读 评论(0) 收藏

    反转链表:比较简单的问题,可以遍历也可以递归. # Definition for singly-linked list. class ListNode: def __init__(self, x): ...

  8. 如何将一个Jsp网站打包发布(发布为War文件)

    链接地址:http://blog.csdn.net/luohuijun619/article/details/4867131 版权声明:本文为博主原创文章,未经博主允许不得转载. 网站做完后,并不是直 ...

  9. [转载] iOS开发分辨率那点事

    1 iOS设备的分辨率 iOS设备,目前最主要的有3种(Apple TV等不在此讨论),按分辨率分为两类 iPhone/iPod Touch 普屏分辨率    320像素 x 480像素 Retina ...

  10. 百度网盘自动上传脚本-bpcs_uploader

    安装jsonpear install pecl/json 一.bpcs_uploader下载和使用: 1.下载地址:http://oott123.github.com/bpcs_uploader/ 2 ...