Peter Courcoux <[EMAIL PROTECTED]> writes:
While this is nice (we discussed this off-list some time ago), and I
really think that this is helpful to Turbine-User, this is IMHO not
really a part of the core code of Turbine.
A problem with the current code base is, that there is so much code in
there, that is not really part of the core but got added "because it's
nice". And if we start changing core code, suddently you have to look
into deprecation of dozens of classes and methods.
I'd really love to start some sort of "turbine-commons", where tools
like this, which are small, defined entities can be put in and
maintained separate from the turbine code base. And with the
commons-configuration class path loader, you can even put a small
configuration fragment in the jar, drop it into the class path and
have this tool available without any configuration.
For the moment, I'd like to put this code into the proposals, but
after the 2.3 release, I'd like to start a turbine-commons repository.
Comments?
Regards
Henning
>--=-9VencbnIsgXVq9861Jzk
>Content-Type: text/plain
>Content-Transfer-Encoding: 7bit
>Hi all,
>I attach zips of diffs/new classes for Commons-fileupload-1.0 to support
>progress reporting and of diffs to turbine 2.3 head to implement these
>in turbine. The commons stuff has been submitted to commons-dev for
>consideration. If successful with commons then perhaps you would
>consider my changes for turbine.
>I have shown myself as author of the UploadTool class, but not added my
>name elsewhere. No doubt you will let me know if i should.
>One issue to consider, if it takes an appreciable amount of time to save
>the fileitems after the request has been parsed, the progress box will
>complete and close before the fileitems are saved and the response is
>returned to the browser. This may leave the user wondering what
>happened. I have considered not removing the Progress Reporter in the
>ParameterParser, after completion of parsing the request, but leaving it
>to the programmer to remove it after his upload processing and saving is
>done. The cache should clear itself after the expiry period and leave
>things clean if the programmer forgets.
>What do you think?
>Regards,
>Peter
>Following is the start of a HowTo.
>Changes to classes
>1. Commons now includes a FileUploadProgressReporter interface and a
>DefaultFileUploadProgressReporter implementation.
>2. A new UploadTool providing methods to create, cache and obtain a
>reference to an object implementing the FileUploadProgressReporter
>interface, and to query that instance for the progress info.
>3. Changes to DefaultParameterParser to instruct it to obtain the
>specified instance of the FileUploadProgressReporter if progress
>reporting is required and pass this to the UploadService.
>
>Setup
>TurbineResources.properties
># add the UploadTool to request scoped pull tools
>tool.request.upload=com.org.apache.turbine.util.upload.UploadTool
># cache timeout after which the object will be expired
># Added for upload progress reporting
># default to 10mins * 60secs * 1000millisecs (10 minutes)
>UploadServiceCacheExpires=600000
># specify the Progress Reporter to use.
>UploadServiceProgressReporter=org.apache.commons.fileupload.DefaultFileUploadProgressReporter
>How it works
>In your upload.vm page which includes your upload form, you first need
>to create and obtain a reference to a specific instance of an object
>implementing the FileUploadProgressReporter interface. This
>is done by calling the getProgressReporterID() method of the UploadTool.
>This method uses the uniqueid service to generate an ID, obtains an
>instance of the FileUploadProgressReporter and caches it in the
>TurbineGlobalCache, using the ID as a key, before returning the ID.
>Use the getKeyParameterName() method of the UploadTool to get the
>parameter name by which the ParameterParser will expect the ID to be
>sent.
>Add this to the <FORM tag as in the example Upload.vm below.
>Note that I believe that this info must be sent before the files, so
>should be included as addQueryData() as shown. It may work as a hidden
>field sent before the files but I haven't tested this.
>Add an onClick handler to the submit button which opens a new window to
>display the UploadProgress.vm screen. (see example)
>Be sure to add the ID to the path so that the UploadProgress screen can
>retrieve the ID. This is done with
>.addPathInfo("key", $key) in the Upload.vm Example
>The UploadProgress.vm screen needs to ensure that the ID key passed to
>it is available in the context. I do this by adding the following to the
>doBuildTemplate() method of UploadProgress.java. I also set a
>LayoutTemplate for the screen.
>String key = data.getParameters().getString("key");
>if (key != null)
>{
> context.put("key", key);
>}
>data.setLayoutTemplate("/ProgressLayout.vm");
>In UploadProgress.vm I use the key parameter to pass to the UploadTool
>so that it can query the correct instance of the ProgressReporter for
>the Progress report. The window is set to reload every 5 seconds and to
>close if the UploadTool finds that the requested instance of the
>ProgressReporter has been removed from the cache. This happens when the
>upload is completed. If the size of the request is 0, then the
>connection has not yet been made and a please wait message can be
>displayed.
>On submission of the form the DefaultParameterParser checks for a
>request parameter name equal to that set in the UploadTool. If it finds
>it and a content-type header starting with 'multipart/form-data' it
>reads the ID from the parameter and obtains the corresponding Progress
>Reporter instance from the global cache. It then passes this instance to
>the UploadService to parse the request.
>On completion of the upload the Progress Reporter is removed from the
>cache to leave things clean.
>Finally, if the upload is interrupted and if for any reason the
>ProgressReporter is orphaned in the cache, the cache service itself will
>clean up on expiry of the timeout.
>Notes :
>If you are using a hidden _session_access_counter to prevent double
>submission of forms then you should be aware that each refresh of the
>UploadProgress.vm screen will increment the users counter and render the
>counter check useless. To compensate for this call the
>decrementSessionAccessCounter() method of UploadTool from your
>UploadProgress.vm screen as shown in the example below.
>You can provide an alternative implementation of a Progress Reporter by
>changing the setting in TurbineResources.properties. This will allow you
>to add such things as graphical displays to the progress report. You
>will usually need to extend or replace the UploadTool to provide
>suitable retrieval methods for the alternative class. Again this can be
>specified in TurbineResources.properties.
>EXAMPLE Upload.vm
>#set ($key = $upload.getProgressReporterID())
>#set ($keyparamname = $upload.getKeyParameterName())
><form method="post" enctype="multipart/form-data"
>action="$link.setPage("Form.vm")
>.setAction("Action")
>.addQueryData($keyparamname, $key)">
><div align="center">
><table border="1">
><tr>
> #fileUpload ("File" "file")
> </tr>
><tr>
> #fileUpload ("File2" "file2")
> </tr>
> </table>
><input type="image" name="eventSubmit_doUpload"
>src="$ui.image($ui.uploadButton)"
>onClick='window.open("$link.setPage("UploadProgress.vm")
>.addPathInfo("key", $key)","status", "height=50,width=600");'/>
></form>
>EXAMPLE UploadProgress.vm
>$upload.decrementSessionAccessCounter()
>#set ( $size = $upload.getRequestSize($key))
>#set ( $file = $upload.getCurrentFile($key))
>#set ( $read = $upload.getRequestBytesRead($key))
>#if ($upload.inProgress($key) == false)
><SCRIPT>
>window.close();
></SCRIPT>
>#end
>#if ($size.intValue() == 0)
>Connecting, please wait ...
>#else
><br />
>Request size : $size
><br />
>Reading File : $file
><br />
>Processed : $read
>#end
><SCRIPT>
>window.setTimeout("window.location.reload()",5000);
></SCRIPT>
>--
>Peter Courcoux <[EMAIL PROTECTED]>
>--=-9VencbnIsgXVq9861Jzk
>Content-Disposition: attachment; filename=fileupload-pr.zip
>Content-Type: application/zip; name=fileupload-pr.zip
>Content-Transfer-Encoding: base64
>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
>SwUGAAAAAAMAAwALAQAA0WMAAAAA
>--=-9VencbnIsgXVq9861Jzk
>Content-Disposition: attachment; filename=turbine-uploadprogress.zip
>Content-Type: application/zip; name=turbine-uploadprogress.zip
>Content-Transfer-Encoding: base64
>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
>AAAA
>--=-9VencbnIsgXVq9861Jzk
>Content-Type: text/plain; charset=us-ascii
>---------------------------------------------------------------------
>To unsubscribe, e-mail: [EMAIL PROTECTED]
>For additional commands, e-mail: [EMAIL PROTECTED]
>--=-9VencbnIsgXVq9861Jzk--
--
Dipl.-Inf. (Univ.) Henning P. Schmiedehausen INTERMETA GmbH
[EMAIL PROTECTED] +49 9131 50 654 0 http://www.intermeta.de/
Java, perl, Solaris, Linux, xSP Consulting, Web Services
freelance consultant -- Jakarta Turbine Development -- hero for hire
--- Quote of the week: "It is pointless to tell people anything when
you know that they won't process the message." --- Jonathan Revusky
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]