Uploading multiple files using a browser (to a Domino server) has never been very user friendly: the Browse dialog only allows selecting a single file, there is very limited feedback on the progress of the upload(s), and filesize validation before uploading is impossible.

One of the alternatives for uploading files is to use a (open source) Flash-based uploader. They use a (semi-)hidden Flash component that handles file selection and uploads. On Codestore, Jake Howlett wrote an article about doing multiple file uploads to Domino using Flex, but I wanted a solution that didn't involve Flex but only uses (d)HTML, CSS, Javascript and a hidden Flash component: In this demo application. SWFUpload is used to perform the actual uploads.

 

The releases section of this project contains a non-xpage release (built using fors, view, agents) that can be used in Domino 6+ and an XPages version that requires Domino 8.5.2+.

Visit my blog for other interesting articles or if you need to contact me.

Features

  • UI built using HTML, CSS, Javascript, can be customized.
  • Works in all major browsers with Flash 9 (or higher).
  • Progress bar for every upload.
  • Multiple-file selection dialog.

  • Filtered file selection dialog (e.g. allow the user to select images only).

  • Check file sizes and file types before uploading.

  • No configuration changes/ additional installations to the Domino server required (e.g. DominoDisableFileUploadChecks notes.ini parameter, servlets)
  • Javascript callbacks on all methods - no page reloads needed when doing uploads.

  • Queue uploads, add and remove files before starting the uploads.

  • Cancel individual or all uploads when in progress.

  • Remove uploaded files directly from the back-end document (without page reloads).

  • Uses the Dojo Javascript framework for UI, DOM manipulation and I/O (Ajax requests). Can easily be rewritten to use another framework (YUI, jQuery, Mootools, Prototype, ...)

  • Works with HTTP Basic and Session authentication, with or without SSL (but no self-signed certificates).

  • Allows for Gmail-style in-form file uploads.