Imaginatively named, the Confluence File Uploader... uploads multiple files to a selected space/page.
| Confluence 2.3 and later ships with the Confluence WebDAV Plugin, which allows you to mount attachments as a network drive. This may be useful to people who previously used the File Uploader. |

After playing with Multiple Attachments Upload Client, we decided to re-write it.
Run it from the comfort of your own browser using WebStart, or download the attached zip and run locally. (This may only work with Confluence 2.6 or 2.5 and earlier. To run with Conf 2.7, 2.8+ see below).
| New version uploaded - 5/5/2008
Now works with Confluence 2.7, 2.8+ - The WebStart client has not yet been fixed to work with Confluence 2.7, 2.8+ To run it download and simply run this jar Somewhere around Confluence 2.6 or 2.7 this stopped working. So the upload mechanism was replaced with the Confluence Remote Java Wrapper. It now works like a charm and should continue to do so given that the xml-rpc interface continues to be as stable as it has. |
confluence-file-uploader-src.zip
| New version uploaded - 11/11/2005 Bug Fixes - Works around permission bug in 1.4.x, removed extra "/" in url Please make sure you have no javaw.exe processes running , and clear the webstart cache if using the webstart version. |
| New version uploaded - 29/06/2005 Bug Fixes - Works with 1.4 Features - Drag and Drop files to upload Please make sure you have no javaw.exe processes running , and clear the webstart cache if using the webstart version. |
Features:
- Wizard based interface.
- Drag n Drop files to upload
- Supports multiple servers/logins.
- Lets you select a target space/page from a list obtained from the server.
- Remembers all your server/login details - and your last used.
- Remembers your last selected space/page (per login).
- Remembers your last upload source directory.
- Shows upload progress (for multiple files).
- Available using WebStart.
- Optionally opens target page in browser on completion.
- works with confluence 1.3, 1.4 and 2.1
Upcoming Features: - Proxy support.
View Demo
Here is a short film we made of the Confluence File Uploader in action. Since this is using the free account, only 1000 lucky people per month can view it.
Soon, we will have a full ViewletBuilder license and we will be able to host it somewhere else...


Comments (61)
Jun 28, 2005
Brendan Pattrson says:
Hey this is fantastic. Nice work. Thanks for doing this and sharing it. The on...Hey this is fantastic. Nice work. Thanks for doing this and sharing it.
The only thing I can see that is left to do is drag and drop
Apr 25, 2008
Brendan Patterson says:
Hey Zohar, I love this application you wrote - when it works!! It's broken I...Hey Zohar,
I love this application you wrote - when it works!!
It's broken I think for the last few versions of Confluence 2.7, 2.8.
I'm actually interested enough to fix it if you'll let me see the source code. It looks like everything works great except the final upload step. For that I would just replace your mechanism with my Confluence Remote Wrapper
I developed that code for the UWC and split it out. It works great and the XML-RPC Confluence interface has been stable for the last three years.
I could add some functionality to the UWC to do some basic bulk file upload easily, but I don't want to reinvent the wheel. Yours already does everything nicely, but just needs the very last step updated.
thanks,
Brendan
Apr 28, 2008
Brendan Patterson says:
Never mind. I found the source zip attached. I hope it's the latest. Zohar is i...Never mind. I found the source zip attached. I hope it's the latest.
Zohar is it OK if I add it to the Atlassian subversion repository?
Either way I'll take a shot at updating it to work with Confluence in the next few days.
thanks,
Brendan
Jun 28, 2005
Aggelos T. Paraskevopoulos says:
We are having trouble uploading the files, we get an HTTP: Error 500, during the...We are having trouble uploading the files, we get an HTTP: Error 500, during the final step. Any ideas?
Jun 28, 2005
zohar melamed says:
What version is your confluence server ?What version is your confluence server ?
Jun 28, 2005
zohar melamed says:
I suspect the upload url has changed in 1.4.x - will upload a fix tomorrow.I suspect the upload url has changed in 1.4.x - will upload a fix tomorrow.
Jun 28, 2005
Nick Minutello says:
Are you running it from Webstart? If so, turn the console logging on, and send u...Are you running it from Webstart?
If so, turn the console logging on, and send us the log... nick dot minutello at bnpparibas dot com
Confluence 1.4.x gives me a 404 - but not a 500...
Can you upload attachments via web ui?
At the very least, the error reporting needs to improve...
Jun 30, 2005
Aggelos T. Paraskevopoulos says:
Nick, everything works smoothly now with the latest version, after we've cleare...Nick,
everything works smoothly now with the latest version, after we've cleared the cache
We are running 1.4.1 Build:#212.
Thanks
Jun 28, 2005
Karen Conneely says:
Hi Zohar and Nick, We are still using version 1.3.6 does this version still sup...Hi Zohar and Nick,
We are still using version 1.3.6 does this version still support 1.3.6?
Jun 28, 2005
zohar melamed says:
yes - in fact at the moment ( to be fixed shortly) it wont work with 1.4.xyes - in fact at the moment ( to be fixed shortly) it wont work with 1.4.x
Jun 28, 2005
Karen Conneely says:
Thanks Zohar, I have collected a copy to play with.Thanks Zohar,
I have collected a copy to play with.
Jul 18, 2005
Troy McKinnon says:
We had an issue with uploaded. I modified UploadToServerStep.java line 111 as in...We had an issue with uploaded. I modified UploadToServerStep.java line 111 as in the following:
... final PostMethod filePost = new PostMethod(serverDetail.getServer() + // "/" + ///-- Removed extra '/' which causes 'confluence//pages' which breaks upload (model.getServerVersion().intValue() == V1_3?V13_UPLOAD_URL_PREFIX :V14_UPLOAD_URL_PREFIX) + targetPage.getId());Nov 11, 2005
Nick Minutello says:
Cheers, Fixed. New release up tonightCheers, Fixed.
New release up tonight
Jul 20, 2005
hugo says:
Minor improvement suggestion: If one of the files exceeds the maximum attachment...Minor improvement suggestion: If one of the files exceeds the maximum attachment size, the upload process terminates with an error. Showing a warning at end of the uploading would be nicer.
Nov 02, 2005
John M. Black says:
Even better ... can it quickly review the requested file sizes, and warn you bef...Even better ... can it quickly review the requested file sizes, and warn you before it begins?
Nov 11, 2005
Nick Minutello says:
Nice suggestion. Not sure the attachment size limit is available via the remote ...Nice suggestion.
Not sure the attachment size limit is available via the remote interface...
Nov 11, 2005
Nick Minutello says:
Ok, we can certainly add better error reporting there...Ok, we can certainly add better error reporting there...
Aug 18, 2005
Michael Yoder says:
This is a superb piece of work. Well done.This is a superb piece of work. Well done.
Sep 11, 2005
Troy McKinnon says:
When I upload using the tool the files are not editable. To reproduce: 1) uploa...When I upload using the tool the files are not editable.
To reproduce: 1) upload file
2) edit attachement
3) Add comment to attachement
4) Null pointer exception:
java.lang.NullPointerException
at com.atlassian.confluence.pages.actions.MoveAttachmentAction.execute(MoveAttachmentAction.java:111)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:168)
Version: 1.4.2 Build:#214
Haven't found any way to get around this besides manually reuploading file.
Nov 11, 2005
Nick Minutello says:
Not sure I understand the problem... You would always have to re-upload the atta...Not sure I understand the problem...
You would always have to re-upload the attachment if it was edited locally...
Nov 11, 2005
Nick Minutello says:
Actually, I know now what you mean - but its a confluence issue - raise a suppor...Actually, I know now what you mean - but its a confluence issue - raise a support request with Atlassian.
-Nick
Nov 11, 2005
Bob Swift says:
This was already raised as an issue and fixed in 1.4.3. See CONF-3503This was already raised as an issue and fixed in 1.4.3. See CONF-3503
Sep 21, 2005
Lauri Siljamäki says:
Nice work! Now all we need is a download tool as well. Or a synchroniser to...Nice work!
Now all we need is a download tool as well. Or a synchroniser tool, so that editing files stored in Confluence would be easy...
Nov 12, 2005
bing ran says:
would be nice if the tool can be embedded in the attachmentes tab and be used fo...would be nice if the tool can be embedded in the attachmentes tab and be used for uploading files for the "current" page
Nov 12, 2005
bing ran says:
Also it would be nice to integrate it with TimTam... 冉Also it would be nice to integrate it with TimTam...
冉
Nov 14, 2005
Sulka Haro says:
How do I make this work with Confluence behind HTTPS? Currently establishing the...How do I make this work with Confluence behind HTTPS? Currently establishing the connection just fails silently.
Nov 15, 2005
Jacob Reider says:
Version 2 (11/15/05) won't run .. error when "checking for latest version" .. "u...Version 2 (11/15/05) won't run .. error when "checking for latest version" .. "unable to load resource: http://tcg.bfo.echonet/ProjectWebStires/confluencefuleupload/confluencefileupload.jnlp"
- JMR
Apr 19, 2006
Yoshia Makino says:
If this is being run in the standalone version, you would need to change the cod...If this is being run in the standalone version, you would need to change the codebase property in the .jnlp file to http://jroller.com/resources/z/zohar
Jan 20, 2006
Derek MacKie says:
any idea when this will be updated for Confluence 2.X. Now when I try to log on ...any idea when this will be updated for Confluence 2.X. Now when I try to log on to the server using the tool it fails to login.
Jun 05, 2006
Manfredo Pansa says:
at writing time, i'm getting the same error con Conf 2.2.1a, just purchased. I h...at writing time, i'm getting the same error con Conf 2.2.1a, just purchased. I hope anybody makes macro working for latest release. We need to upload 1.5GB audio file for our voice services...
Jun 05, 2006
Matt Ryall (Atlassian) says:
Judging by the source code, it looks like this application is heavily tied to a ...Judging by the source code, it looks like this application is heavily tied to a particular version of Confluence because it uses the URLs of the web interface.
If you don't have any luck using it with 2.2, I'd suggest looking into the Confluence Remote API. There is an addAttachment() method, and you can use it in any language that has a SOAP or XML-RPC library (Java, Perl, Python, Ruby, C#, etc).
This application is mainly to help with uploading multiple attachments, so if it's just one file, you can also use Confluence itself. If you have trouble uploading attachments because of their size, please let us know. You should be able to upload any attachment as long as you have enough disk space on the server.
Feb 09, 2006
ballico_stretch says:
How to config to run locally thru two layers of firewall?How to config to run locally thru two layers of firewall?
Feb 09, 2006
ballico_stretch says:
Doesn't find my secure server, https:// where 1.4.4 resides.Doesn't find my secure server, https:// where 1.4.4 resides.
Feb 09, 2006
ballico_stretch says:
ok. I got as far as the certificate NOT matching on the server we are using for ...ok. I got as far as the certificate NOT matching on the server we are using for 1.4.4. That'll take "some time" says the client I'm shoppn' for. I'll be outta 'ere by then
Kool app. Thanks anyways.
Mar 27, 2006
Rob Kearey says:
Great stuff! A couple of features that would be very handy would be the abil...Great stuff! A couple of features that would be very handy would be the ability to specify a directory (and it's subdirectories) and have it attach all files therein. Also, the ability to add page links for the attachments would be very cool. I have a few gig of conent I'd like to confluize
Jun 05, 2006
Ivan Benko says:
Failed to log-on to server I've tried to upload a file and it worked fine when ...Failed to log-on to server
I've tried to upload a file and it worked fine when use the "admin" as a user. (running server locally on default http://localhost:8080.)
admin@<server location> with password "admin".
Yet it did not work when used my user name?
Sep 02, 2006
Daniel Garratt says:
Thanks for providing this very useful tool. A useful small addition to the tool ...Thanks for providing this very useful tool. A useful small addition to the tool IMHO would be to allow you to contine to select attachments to upload. ie basically a button at the end of the process which allows you to go back to step 1.
Sep 19, 2006
Ken Jongsma says:
I maybe missing something, but I can't seem to get this to work with 2.2.4. It f...I maybe missing something, but I can't seem to get this to work with 2.2.4. It fails on the authentication step even before the file uploads. Any suggestions? If not, any chance this could be updated to run with the later versions of Confluence
Oct 10, 2006
MartinM says:
When I try to run it locally or remotely I come across an error with one of the ...When I try to run it locally or remotely I come across an error with one of the jar's:
(Local)
Unsigned application requesting unrestricted access to system
Unsigned resource: file:/C:/ConfluenceBulkUploader/xmlrpc-1.2-b1.jar
(Remote)
Missing signed entry in resource: http://confluence.atlassian.com/download/attachments/123210/xmlrpc-1.2-b1.jar
Any help apreciated greatly
Oct 18, 2006
Evan Kaplan says:
I get a cert error when trying to upload to confluence. We are running usi...I get a cert error when trying to upload to confluence. We are running using the https convention. I have also accept all cert warnings when connecting to confluence.

Oct 24, 2006
Menso Heus says:
Hi, It doesn't want to run via WebStart and it doesn't want to run locally, g...Hi,
It doesn't want to run via WebStart and it doesn't want to run locally, giving me this error in the details screen:
Any suggestions?
Dec 19, 2006
Jean-Baptiste Catté says:
No problem for me using Java 5 update 10.No problem for me using Java 5 update 10.
Dec 19, 2006
Jean-Baptiste Catté says:
I had this error: Trying to upload a file named : Funktiona...I had this error:

Trying to upload a file named : Funktionalität MARCO integrated 2005_01_01.pdf
Dec 19, 2006
Jean-Baptiste Catté says:
Confluence also seems to have problems with unicode filenames... New try: !...Confluence also seems to have problems with unicode filenames...
New try: !error_uploading_file_with_ä_character.png!
Dec 19, 2006
Jean-Baptiste Catté says:
Feb 15, 2007
Patty Case says:
When I try to run via WebStart I get: An error occurred while launching/running...When I try to run via WebStart I get:
An error occurred while launching/running the application.
Title: Confluence File Upload
Vendor: Mr Melamed and Mr Minutello
Category: Download Error
Missing signed entry in resource: http://confluence.atlassian.com/download/attachments/123210/xmlrpc-1.2-b1.jar\\
Feb 15, 2007
Patty Case says:
Never mind the previous comment. I reinstalled Java, and everything's ok.Never mind the previous comment. I reinstalled Java, and everything's ok.
Apr 25, 2008
servane chou says:
I have tried using this tool on my instance of Confluence, v 2.7.3 and I get HTT...I have tried using this tool on my instance of Confluence, v 2.7.3 and I get HTTP Error 500.
Is it possible to get the code to look into it?
Also, does it allow HTML file uploads?
Apr 25, 2008
Bob Swift says:
Confluence Command Line Interface may help you. Specifically loadFiles action.Confluence Command Line Interface may help you. Specifically loadFiles action.
Apr 28, 2008
Brendan Patterson says:
I'm getting HTTP Error 500 too and wrote a note at the top of this thread. Thi...I'm getting HTTP Error 500 too and wrote a note at the top of this thread.
This will upload any file type, but it won't convert your HTML to a wiki page. However you can surround html with {html} tags or something like this to have your original HTML rendered. However when you edit it it will still be raw HTML. Just FYI.
May 05, 2008
Brendan Patterson says:
I just uploaded a fixed version of this which works with Confluence 2.7, 2.8+ an...I just uploaded a fixed version of this which works with Confluence 2.7, 2.8+ and probably every other version of Confluence 2+. You can read my note at the top. For the moment though you have to use ant to build and run it.
Mar 24, 2009
Sabera Patel says:
hi, the bulk uplaoder was working fine and now it's stopped working. We are run...hi,
the bulk uplaoder was working fine and now it's stopped working. We are running confl 2.10 and java version 1.6. IS the bulk upload working for these versions?
May 26, 2008
Julie Leung says:
Very nice work. Thank you for sharing this -- it is going to save ...Very nice work. Thank you for sharing this -- it is going to save me a bundle of time!
Jun 18, 2008
Fredrik Matheson says:
I've been testing the file uploader for a while. It's certainly better than the ...I've been testing the file uploader for a while. It's certainly better than the attachment method available in Confluence today, but compared to how files are uploaded via a web interface to a WordPress blog or to Flickr, etc. this involves too many steps.
The main problem is that of seamlessness. I have to do the java webstart thing, identify the files I want ... and then re-locate the page I was working on inside Confluence, etc.
Suggested improvements on the existing tool:
I respect the efforts of the developers, and vehemently agree that we need better uploading. The tool described on this page is a good start but in my view it needs to be improved if "normal" users are to adopt it.
Jul 15, 2008
jackie says:
One problem when I use the File Uploader... It does not support files with titl...One problem when I use the File Uploader...
It does not support files with titles in Chinese.... it says "invalid character data corresponding to XML", is there any way to upload Chinese-titled files in batches? Thanks!!
Jul 31, 2008
Brendan Patterson says:
Sorry I'm not familiar with Chinese internationalization issues. It might be an ...Sorry I'm not familiar with Chinese internationalization issues. It might be an encoding issue. The code is open source.
I guess my recommendation would be to contact a partner with experience in Chinese and plugin devel. Perhaps one here: http://confluence.atlassian.com/display/APW/Partner+Directory+-+Asia+Pacific
Jul 31, 2008
Felix says:
Hi, we use the fileuploader without problems in our company, but it does not wor...Hi, we use the fileuploader without problems in our company, but it does not work with the outgoing confluence link (https://...). How can I fix it, so that our customers can use this tool as well? Or should I use another tool for this and if so which one would you appreciate? Thanks.
Bye Felix
Jul 31, 2008
Brendan Patterson says:
This might take a bit of work. The code is open source so if you want to take ...This might take a bit of work.
The code is open source so if you want to take a shot at updating the underlying communication library to support https (which I wrote) you can find it here http://confluence.atlassian.com/display/CONFEXT/Confluence+Remote+Java+Wrapper
Or contact me via email for a quote - brendan.patterson @ gmail . com
thanks!
Aug 01, 2008
Felix says:
Oh this is pity. Do you know another tool which solves this problem?? Or can you...Oh this is pity. Do you know another tool which solves this problem?? Or can you give me a guidance how to change the plugin, because I am not familiar with this stuff.
Thanks.
Felix
Apr 07, 2009
Tony Johnson says:
One thing to be aware of when using this tool, it saves your configuration, incl...One thing to be aware of when using this tool, it saves your configuration, including your username/password in a file called ~/confluence-fileupload.preferences. If your home directory is readable by others this could be a security problem.
Sep 02
Will L says:
I'm having problems using this tool, on Confluence 3.0. Any help would be ...I'm having problems using this tool, on Confluence 3.0. Any help would be greatly appreciated! I keep getting the following exception being dumped to my command line prompt:
java.io.IOException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
at org.apache.xmlrpc.XmlRpcClient$Worker.execute(XmlRpcClient.java:444)
at org.apache.xmlrpc.XmlRpcClient.execute(XmlRpcClient.java:163)
at com.zohar.confluence.steps.SelectServerStep.applyState(SelectServerStep.java:44)
at org.pietschy.wizard.NextAction.doAction(Unknown Source)
at org.pietschy.wizard.WizardAction.actionPerformed(Unknown Source)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2028)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2351)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
at java.awt.Component.processMouseEvent(Component.java:6301)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3265)
at java.awt.Component.processEvent(Component.java:6066)
at java.awt.Container.processEvent(Container.java:2085)
at java.awt.Component.dispatchEventImpl(Component.java:4667)
at java.awt.Container.dispatchEventImpl(Container.java:2143)
at java.awt.Component.dispatchEvent(Component.java:4497)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4600)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4264)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4194)
at java.awt.Container.dispatchEventImpl(Container.java:2129)
at java.awt.Window.dispatchEventImpl(Window.java:2475)
at java.awt.Component.dispatchEvent(Component.java:4497)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:635)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:296)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:211)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:196)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:188)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
org.pietschy.wizard.InvalidStateException: Failed to logon to server
at com.zohar.confluence.steps.SelectServerStep.applyState(SelectServerStep.java:64)
at org.pietschy.wizard.NextAction.doAction(Unknown Source)
at org.pietschy.wizard.WizardAction.actionPerformed(Unknown Source)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2028)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2351)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
at java.awt.Component.processMouseEvent(Component.java:6301)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3265)
at java.awt.Component.processEvent(Component.java:6066)
at java.awt.Container.processEvent(Container.java:2085)
at java.awt.Component.dispatchEventImpl(Component.java:4667)
at java.awt.Container.dispatchEventImpl(Container.java:2143)
at java.awt.Component.dispatchEvent(Component.java:4497)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4600)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4264)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4194)
at java.awt.Container.dispatchEventImpl(Container.java:2129)
at java.awt.Window.dispatchEventImpl(Window.java:2475)
at java.awt.Component.dispatchEvent(Component.java:4497)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:635)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:296)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:211)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:196)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:188)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
Caused by: java.io.IOException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
at org.apache.xmlrpc.XmlRpcClient$Worker.execute(XmlRpcClient.java:444)
at org.apache.xmlrpc.XmlRpcClient.execute(XmlRpcClient.java:163)
at com.zohar.confluence.steps.SelectServerStep.applyState(SelectServerStep.java:44)
... 27 more