Martin,

I guess you mentioned me while it should be Link ;-)

Thanks
Umesh

On Sun, Nov 18, 2012 at 12:12 AM, Martin Gainty <mgai...@hotmail.com> wrote:

>
> for everyone's edification:
> what would be the interfaces that Umesh must implement to write a proper
> Struts2 plugin?Any changes to the interceptor stack?
> Which test criteria should Umesh consider to validate the new FileUpload
> plugin plays well with the (new and improved) interceptor stack? thanks,
> Martin
>
>
>  > Date: Sat, 17 Nov 2012 08:51:05 -0800
> > Subject: Re: processing of multipart request
> > From: mart...@apache.org
> > To: dev@struts.apache.org
> >
> > On Sat, Nov 17, 2012 at 4:14 AM, Fastupload <fastupl...@outlook.com>
> wrote:
> >
> > > Umesh,
> > >
> > > thanks for your reply!  Based on current file upload framework to
> write a
> > > plugin. it only support java.io.File, for example, the Action has to
> use
> > > File object to access multipart data of HTTP request. why not we do
> access
> > > multipart data directly and efficiently, in stead of temporary file?
> > >
> > > so I think we need to refactor current file upload framework in S2 to
> > > support more efficient way. the new file upload framework has the
> ability
> > > that enable user config his prefered file upload component and
> processing
> > > way.
> > >
> >
> > Great. So do that. Provide a patch that refactors S2, such that the
> current
> > Commons FileUpload code is still the default, and such that an
> alternative,
> > like your fastupload plugin (but not restricted to it), can be configured
> > by the user if they want it. In your original post, you said you already
> > have that code, but I could not find it in your svn repo.
> >
> > Please understand that there is no way that the existing code will be
> > *replaced* by a new implementation as the default any time soon. There
> are
> > tens of thousands of applications (S1, S2, and many others) that use
> > Commons FileUpload today, and have done for many, many years, so we know
> > that code is extremely robust. As far as I can tell, nobody else has ever
> > heard of fastupload before, and it certainly does not have the kind of
> > real-world testing that Commons FileUpload has had. If you want to
> provide
> > it as a plugin, people can experiment with it, and deploy it if they
> decide
> > they like it. But we are not going to throw out what has been solid for
> > years and replace it with something that hasn't been tested like Commons
> > FileUpload has.
> >
> > --
> > Martin Cooper
> >
> >
> > this is current form of Action access multipart data
> > > --------------------
> > > public class StrutUploadAction2 extends ActionSupport {
> > >
> > >         private File photo;
> > >
> > >         @Override
> > >         public String execute() throws Exception {
> > >                 // …
> > >                 return super.execute();
> > >         }
> > > }
> > >
> > >
> > > But the efficient way is this or next ..
> > > --------------------------------
> > > public class StrutUploadAction1 extends ActionSupport {
> > >
> > >         private MultiPartFile photo;
> > >
> > >         private String description;
> > >
> > >         @Override
> > >         public String execute() throws Exception {
> > >                 // .. ..
> > >                 return super.execute();
> > >         }
> > > }
> > > for more information please look at
> > > https://sourceforge.net/p/fastupload/wiki/Fastupload%20Home/
> > >
> > > or
> > > -------------------------
> > > public class StrutUploadAction2 extends ActionSupport {
> > >
> > >         private FileItemStream  photo;
> > >
> > >         @Override
> > >         public String execute() throws Exception {
> > >                 / /…
> > >                 return super.execute();
> > >         }
> > >
> > > }
> > > // in ASF commons fileupload,  FileItemStream contains multipart data
> in
> > > memory…  for more information, please look at
> > > http://commons.apache.org/fileupload/streaming.html
> > >
> > >
> > > Best Wishes,
> > > Link Qian
> > >
> > >
> > > On Nov 17, 2012, at 6:18 PM, Umesh Awasthi <umeshawas...@gmail.com>
> wrote:
> > >
> > > > Link,
> > > >
> > > > I believe that what suggested by others is good way to go,
> > > > you can easily create a plugin using fastupload.
> > > >
> > > > one of best feature of S2 is its  flexibility to enhance and provide
> > > added
> > > > features using plugins.
> > > >
> > > > Thanks
> > > > Umesh
> > > >
> > > > On Sat, Nov 17, 2012 at 3:43 PM, Fastupload <fastupl...@outlook.com>
> > > wrote:
> > > >
> > > >> Wes,
> > > >>
> > > >> I have read struts2 file upload framework and plugin guide about
> file
> > > >> upload. It requires the plugin provides a java.IO.File object to
> > > >> interceptors. so in the way, upload component has to use temporary
> file.
> > > >> it's not reasonable to better performance.
> > > >>
> > > >>
> > > >> Here are fast upload API usage and performance
> > > >>
> > > >> https://sourceforge.net/p/fastupload/wiki/Fastupload%20Home/
> > > >>
> > > >> https://sourceforge.net/p/fastupload/wiki/Performance%20Comparison/
> > > >>
> > > >> Link
> > > >>
> > > >>
> > > >>
> > > >> On Nov 16, 2012, at 6:40 PM, Rene Gielen <rgie...@apache.org>
> wrote:
> > > >>
> > > >>> Going to write a plugin should really be the way to go, as Wes and
> > > >>> Martin already pointed out. There is positive experience with
> > > successful
> > > >>> externally maintained Struts 2 plugins such as Struts 2 jQuery e.g.
> > > >>>
> > > >>> We also provide a platform for Struts 2 developers to stay in touch
> > > with
> > > >>> latest plugin developments, internally or externally maintained:
> > > >>> https://cwiki.apache.org/confluence/display/S2PLUGINS/Home
> > > >>>
> > > >>> Regard,
> > > >>> - René
> > > >>>
> > > >>> Am 12.11.12 16:13, schrieb Wes Wannemacher:
> > > >>>> Another approach would be for you to take a look at our plugin
> API and
> > > >>>> build a plugin for integrating your framework into a Struts 2
> web-app.
> > > >>>>
> > > >>>> -Wes
> > > >>>>
> > > >>>> On Mon, Nov 12, 2012 at 7:39 AM, Fastupload <
> fastupl...@outlook.com>
> > > >> wrote:
> > > >>>>
> > > >>>>> To who maybe concern,
> > > >>>>>
> > > >>>>> I just notice struts2 framework parses multipart/form-data
> requesting
> > > >> into
> > > >>>>> a temporary file, and marshal a java.io.File object for struts2
> > > action
> > > >>>>> regarding file input of multipart-form data request. also the
> > > framework
> > > >>>>> parses all files in request and then make a filter rule in
> > > >>>>> FileUploadInterceptor.java. And finally, framework clean
> temporary
> > > >> files
> > > >>>>> after action is invoked.
> > > >>>>>
> > > >>>>> Following the processing, there are three disadvantages:
> > > >>>>> 1, use temporary file makes low performance
> > > >>>>> 2, redundancy operation --  clean up temporary file
> > > >>>>> 3, struts action only supports java.io.File class to represent a
> > > >> uploading
> > > >>>>> file in multipart/form-data request.
> > > >>>>> 4, filter all file after parsing has been done, the action may be
> > > >> prior to
> > > >>>>> interceptors.
> > > >>>>>
> > > >>>>> Could you guys have a look into *fastupload* open source project
> in
> > > >>>>> https://sourceforge.net/projects/fastupload. Right now it is the
> > > >> fastest
> > > >>>>> form-based upload parsing component in java area. it makes a
> > > >> significant
> > > >>>>> performance improvement and advance features, such as,
> > > >>>>> 1, 2.x faster than Apache Commons FileUpload in stream method.
> > > >> certainly,
> > > >>>>> it's 5.x faster than apache commons file upload in disk method.
> > > >>>>> 2, filter boundaries with determining MIME and file name in
> advance.
> > > >>>>>
> > > >>>>>
> > > >>>>>
> > > >>>>> In fastupload-0.4.7 version, it has released some codes that work
> > > with
> > > >>>>> struts2 framework, enable parsing files with it in struts2
> framework.
> > > >> To
> > > >>>>> improve features of struts2 multipart/form-data request, Could
> you
> > > >> consider
> > > >>>>> to integrate *fastupload* source code into struts2 framework.
> > > >> incurring
> > > >>>>> struts2 supports both *fastupload* and ASF commons file upload?
> > > >>>>>
> > > >>>>> best wishes,
> > > >>>>> Link Qian
> > > >>>>>
> > > >>>>>
> > > >>>>>
> > > >>>>>
> > > >>>>>
> > > >>>>>
> > > >>>>>
> ---------------------------------------------------------------------
> > > >>>>> To unsubscribe, e-mail: dev-unsubscr...@struts.apache.org
> > > >>>>> For additional commands, e-mail: dev-h...@struts.apache.org
> > > >>>>>
> > > >>>>>
> > > >>>>
> > > >>>>
> > > >>>
> > > >>> --
> > > >>> René Gielen
> > > >>> http://twitter.com/rgielen
> > > >>>
> > > >>>
> ---------------------------------------------------------------------
> > > >>> To unsubscribe, e-mail: dev-unsubscr...@struts.apache.org
> > > >>> For additional commands, e-mail: dev-h...@struts.apache.org
> > > >>>
> > > >>>
> > > >>
> > > >>
> > > >>
> ---------------------------------------------------------------------
> > > >> To unsubscribe, e-mail: dev-unsubscr...@struts.apache.org
> > > >> For additional commands, e-mail: dev-h...@struts.apache.org
> > > >>
> > > >>
> > > >
> > > >
> > > > --
> > > > With Regards
> > > > Umesh Awasthi
> > > > http://www.travellingrants.com/
> > >
> > >
> > > ---------------------------------------------------------------------
> > > To unsubscribe, e-mail: dev-unsubscr...@struts.apache.org
> > > For additional commands, e-mail: dev-h...@struts.apache.org
> > >
> > >
>




-- 
With Regards
Umesh Awasthi
http://www.travellingrants.com/

Reply via email to