You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@beehive.apache.org by Rich Feit <ri...@gmail.com> on 2005/06/20 17:49:01 UTC
[Fwd: Re: Page Flow multipart request handling]
In case anyone's been following this thread and is as confused as I
was... somehow another copy of a several-days-old message from Jeremiah
got re-sent to the list, after other discussion had taken place. So he
didn't miss my previous replies; rather, I failed to recognize that I
was responding to the same message I'd already replied to last week. :S
Rich
-------- Original Message --------
Subject: Re: Page Flow multipart request handling
Date: Sun, 19 Jun 2005 18:33:07 -0600
From: Rich Feit <ri...@gmail.com>
To: Beehive Developers <be...@incubator.apache.org>
CC: mrtidy@gmail.com
References: <55...@mail.gmail.com>
Hi Jeremiah,
I (still) agree with you. :) Sounds like you might have missed my
previous responses -- here's the end of the thread (after the part you
quoted below):
> OK, thanks for the feedback. Sounds like the consensus is that it's
> best to keep options consistent between beehive-netui-config.xml and
> @Jpf.Controller. I'm going to fix the original JIRA issue
> (http://issues.apache.org/jira/browse/BEEHIVE-802 ) by changing our
> code to avoid using DiskMultipartRequestHandler. I've entered an
> enhancement request for the rest of the work:
> http://issues.apache.org/jira/browse/BEEHIVE-818 .
>
> Rich
>
> John Rohrlich wrote:
>
> Turning off multipart in beehive-netui-config and turning it on for a
> specific page flow is a reasonable use case to support. More generally
> I'd say it is good to have the same options in @Jpf.Controller and
> beehive-netui-config.xml. The alternative, turning on multipart in the
> page flow and configuring multipart with struts merge, is less clean and
> certainly less obvious.
>
> john
> -----Original Message-----
> From: Rich Feit [mailto:richfeit@gmail.com] Sent: Tuesday, June 14,
> 2005 9:47 AM
> To: Beehive Developers
> Cc: Jeremiah Johnson
> Subject: Re: Page Flow multipart request handling
>
> I can see the argument for @Jpf.Controller supporting all the options
> (including the multipart handler class), especially for cases when
> multipart handling is disabled by default in
> beehive-netui-config.xml. The two methods for configuration
> (beehive-netui-config.xml and @Jpf.Controller) would then be in sync
> across the board, with @Jpf.Controller overriding the XML settings.
> I'd be inclined to do it.
>
> Any other thoughts on this?
>
> Rich
Rich
Jeremiah Johnson wrote:
>I think that it would be ideal for Jpf.Controller to support the
>multipart class and then any options required by the multipart handler
>implementation. It doesn't seem like that is realistic to hope for
>since it hasn't been done already. Second to full configuration via
>Jpf.Controller, in my mind, would be for beehive-netui-config to
>contain the multipart defaults for the Web app and then override those
>settings via the Struts config; this would leave Jpf.Controller to the
>role of just turning config on or off.
>
>Right now, beehive-netui-config only contains the disabled, memory,
>and disk options. Based on your previous comments, I assumed that you
>were going to change the style in beehive-netui-config to specify the
>multipart class and the full options. If you are going to just keep
>the three options forever, then I agree that you may as well keep the
>same options in Jpf.Controller.
>
>- jeremiah
>
>
>
>>-----Original Message-----
>>From: Rich Feit [mailto:richfeit@gmail.com]
>>Sent: Monday, June 13, 2005 2:58 PM
>>To: Beehive Developers
>>Cc: Jeremiah Johnson
>>Subject: Re: Page Flow multipart request handling
>>
>>Here's how I feel about this after thinking about the issue over the
>>weekend (and after reading your response):
>>
>>There is one major setting in beehive-netui-config.xml for configuring
>>multipart handing, and this setting contains three options:
>> - disabled
>> - memory
>> - disk
>>
>>There's also a major setting per-pageflow, within @Jpf.Controller. I'd
>>originally argued for making this a simple boolean, but given that this
>>*overrides* the value in beehive-netui-config (<multipart-handler>), I
>>feel now that it would be cleaner and more understandable to keep the
>>same exact major options in the two places (and to have the value in
>>@Jpf.Controller continue to override the value in <multipart-handler>).
>>
>>It sounds like we agree on keeping the more detailed configuration
>>settings in beehive-netui-config.xml, so the only thing to hash out is
>>whether to include all the same major options between
>>beehive-netui-config.xml and @Jpf.Controller.
>>
>>Rich
>>
>>
>>Jeremiah Johnson wrote:
>>
>>
>>
>>>It seems to me that overriding the configuration per page flow would be
>>>a mighty rare occurrence, so I agree with your first point.
>>>
>>>I like your second point - to change the multipartHandler to just
>>>enabled / disabled. I initially thought that the change would be
>>>useless, but since I agree that most webapps will have a single
>>>multipart configuration it seems to follow that a page flow would just
>>>turn it on or leave it disabled.
>>>
>>>- jeremiah
>>>
>>>
>>>
>>>
>>>
>>>>Using the default (non-deprecated) MultipartRequestHandler brings to
>>>>light another issue: Struts provides more options for configuring file
>>>>uploads than we expose. They are:
>>>>
>>>> - the maximum file size to process for file uploads (default 250M)
>>>> - the maximum file size to retain in memory; beyond this
>>>>
>>>>
>>>>
>>>>
>>>threshold,
>>>
>>>
>>>
>>>
>>>>a temporary file is written to disk (default 256K)
>>>> - the temporary directory to use for file uploads that pass the
>>>>above threshold
>>>> - input buffer size for file uploads (default 4K)
>>>>
>>>>I've got a few feelings about supporting this:
>>>>
>>>> 1) We should support these options directly, but only at a
>>>>webapp-configuration level, in beehive-netui-config.xml; not
>>>>per-pageflow. I think we should document *how* to set them
>>>>
>>>>
>>>>
>>>>
>>>per-pageflow
>>>
>>>
>>>
>>>
>>>>using our "Struts Merge" facility, but that in most cases they're
>>>>webapp-wide settings that don't warrant another annotation within
>>>>@Jpf.Controller.
>>>>
>>>> 2) We should make the necessary change for BEEHIVE-802, which is
>>>>
>>>>
>>>>
>>>>
>>>to
>>>
>>>
>>>
>>>
>>>>turn a disk/memory/disabled option into a simple boolean, but we
>>>>
>>>>
>>>>
>>>>
>>>should
>>>
>>>
>>>
>>>
>>>>wait until the next point release to add these other configuration
>>>>settings (which can be set per-pageflow using Struts Merge).
>>>>
>>>>Anyone have any thoughts/opinions about this?
>>>>
>>>>Thanks,
>>>>Rich
>>>>
>>>>
>>>>
>>>>
>>>
>>>
>>>
>>>
>>>
>
>
>