File Upload Migration to RichFaces 4

Overview

This document will describe the migration of fileUpload component.

 

information from 3.3.x:

 

references:

http://docs.jboss.org/richfaces/latest_3_3_X/en/devguide/html/rich_fileUpload.html

 

tld:

http://docs.jboss.org/richfaces/latest_3_3_X/en/tlddoc/rich/fileUpload.html

 

svn

 

 

Related requests and jiras:

list of jira's

 

Removed features
  • Upload Data - duplicates the uploadListener functionality.

 

Base functionality - to be implemented in M5
  • Modes
    • html
  • upload
    • optional restriction for the same named files upload
    • limitation of size per file (for application)
    • in memory/disk files storing
    • limitation for files per extension/type
    • support for multiple files upload
    • context parameters for directory specifying as for 3.3
    • already possible to add messages from listener and it will be shown in ajaxRendered zone.
      • render and execute in long term
    • Markup redefinition
      • All cusomization whichg was available through attributes
        • buttons  labels
        • entries/errors/status labels
    • Entries list
      • Clear functionality for single file
      • Clear all
    • Upload progress
      • using plugged by default progressBar
      • PB could be customized through definition in named facet
    • Disabled state for component
    • Visual presets
      • 3.3.x look and feel (except long term)
    • Client side events
      • before upload - every file
      • upload of all files finished

     

    Long Term

    • Modes
      • flash
    • Upload
      • customization of count of files available for upload ??
      • Auto clearing the list
      • Immediate upload
      • size limitation per component (seems not really possible with current impl. need to review.)
      • execute&render attributes + review other ajax ones which possible to add.
      • possibility to return state of single upload in listener.
    • Markup redefinition
        • Labels definition through resource bundles
        • Customization which was available using macrosubstitutions
          • header controls and labels set
          • entry controls and labels set
        • "Stop" functionality for upload
        • Servlets 3 native upload capabilities support
        • Visual preset
          • based on simple  <input type="file"/> elements
        • Client API
        • Client side events
          • upload of single file finished
          • add file
          • remove file
          • stop
          • cancel
          • clear
          • transfer error
          • size error
          • type rejected
        Questionable
        • Validation
          • If we can't support normal FAces validation (as fileUpload not actually input but works through UploadEvent) - we need to have possibility to add messages from listener and abort further processing.
          • still want to try to support required.