File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
The moose likes Struts and the fly likes File Upload + Destination directory. Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Frameworks » Struts
Bookmark "File Upload + Destination directory." Watch "File Upload + Destination directory." New topic

File Upload + Destination directory.

Karthik Muthukumaraswamy

Joined: Oct 30, 2006
Posts: 12
Hello All,
I am developing a web application using the Struts framework. I have a page where I am using html 'file' controls to attach/ upload files.

1) Upload part:
I receive these attached files in the Struts action/ task and use struts upload's FormFile class and it's getInputStream() to read the file contents.

2) Storage:
I use JBOSS as my application server. In my case, the uploaded files are written/stored in a directory (/usr/loca/data in Linux) outside the app server's context. As a part of this process, I store the name of the file in the DB so that I can refer it later.

3) Retrieval:
When these files, for example, .jpg's are requested as a part of a picture gallery I refer the DB and get all the image names associated with the gallery.
(3b) I then move the respective image files from the directory (step 2) to the app server's context.

My question is 3 and 3b a scalable approach. My application will have more and more files (images, pdf's et...) attached in the future. I think the process of moving files as I do in step 3 will be a major efficiency problem in terms of space and size (the .war file i generate after having the files moved inside is HUUUGE).

I am sure I am missing something when it comes to file upload, storage and retrieval. I do not understand the concept of how/ where these files are stored in the first place.

Please let me know if you have any ideas on how it can be implemented/ improved.

Thank you,
Karthik Muthukumaraswamy

Joined: Oct 30, 2006
Posts: 12
This is a correction to my initial post:
In step 3 I DO NOT move the files from the directory in step 2 to a directory inside the application's .war file. Instead, I am copying these image files from directory in step 2 into a new directory that I create inside the EXTRACTED .war file (As I mentioned in my previous post, I am using JBOSS and it extracts the .war file when we deploy it)

Arulanand Dayalan
Ranch Hand

Joined: Aug 10, 2005
Posts: 124
I think it would be better to store the files in Db as blob rather than in a file system. And when the user queries retrive those and show it to the user.

Neerav Narielwala
Ranch Hand

Joined: Dec 08, 2006
Posts: 106
I have this link :

Try it out...

<a href="" target="_blank" rel="nofollow">Java Tutorials</a> | <a href="" target="_blank" rel="nofollow">Java Weblog</a> | <a href="" target="_blank" rel="nofollow">Computing Articles</a>
I agree. Here's the link:
subject: File Upload + Destination directory.
It's not a secret anymore!