Hi Jeroen, Thanks for the pointers. The problem I was having was indeed down to the bug in 2.0.2 - unfortunately my archive searches did not show the bugzilla listing, just the usual postings. By the time I got your message I had already found the problem in the MPWrapper and written an action very similar to yours, although I had not written a handler for FilePart yet.
Thanks for the help. Jeremy -----Original Message----- From: Jeroen ter Voorde [mailto:[EMAIL PROTECTED]] Sent: 14 April 2002 11:49 To: [EMAIL PROTECTED]; [EMAIL PROTECTED] Subject: Re: More control over iploading files << File: UploadAction.java >> << File: ATT00232.txt >> Hi, You should be able to get the FilePart object representing the uploaded file using request.get("upload_field"). If the file was stored into the upload dir (which is enabled by default) you can cast the FilePart to a FilePartFile from which you can get the java.io.File using getFile(). All other information on the file you can get from the the headers (FilePart.getHeaders()). I've attached a sample action to move the file to another directory as described above. To enable it add this to the top sitemap (above the xsp/* pipeline): <map:match pattern="xsp/upload"> <map:act type="file-upload"> <map:parameter name="upload-dir" value="myuploaddir" /> <map:generate src="docs/samples/xsp/upload.xsp" type="serverpages" /> <map:transform src="stylesheets/dynamic-page2html.xsl" /> <map:serialize /> </map:act> </map:match> Note that the upload dir is created rin the webapps/cocoon dir instead of work/cocoon/cocoon-files. I've tested this code against the current CVS (cocoon 2.1-dev branch). It will probably not work with 2.0.2 since that release contained a bug (http://nagoya.apache.org/bugzilla/show_bug.cgi?id=7510) Greets, Jeroen On Saturday 13 April 2002 02:41 am, you wrote: > Hi all, > > I've been mucking around with some file upload stuff and noticed a change > in behaviour since Joren's replacement for maybeupload was done back in > Feb. Before the change it was possible to still get hold of the reference > to the uploaded file from the request object in an action thus enabling you > to rewrite the file anywhere e.g. into a db BLOB. This is now not easily > possible since the request does not contain the right stuff any more. I > note from the archives that when the code was submitted the suggestion was > that control could be passed to an action to determine how and where to > write the file but the final code is driven by the web.xml parameters. > > I would really like to have the ability to chose as often as each request > where the uploaded file is to be put and will have a more detailed look at > the code over the weekend to see what might need doing. To me it seems > there are a number of possible choices: > > 1. a small patch to the MultipartRequest stuff that leaves the required > info in the request and then an action to do an upload to a place specified > via a param > 2. an alternative MultipartRequest handler > 3. a complex action that works if SimpleRequestHandler is used and not > Multipart - i.e. shift the work along (urgh?) > 4. something else maybe > > Just interested on soliciting some thoughts on this whilst I tip tappity > away! > > Cheers > > Jeremy > > > > > _________________________________________________________ > Do You Yahoo!? > Get your free @yahoo.com address at http://mail.yahoo.com _________________________________________________________ Do You Yahoo!? Get your free @yahoo.com address at http://mail.yahoo.com --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]