That explains alot.  Thanks for reporting back.

Geoff

> -----Original Message-----
> From: Collin VanDyck [mailto:[EMAIL PROTECTED]]
> Sent: Tuesday, January 21, 2003 5:14 PM
> To: [EMAIL PROTECTED]
> Subject: Re: Parsing multipart form data
>
>
> Geoff
>
> Ok, everything is working now.  Strangely, I had in addition to my
> cocoon-2.0.4.jar, a rogue cocoon-2.0.2 which I believe was
> getting deployed
> first or with priority by my container.  Argh.  Thanks for your help!
> Everything is working perfectly now.
>
> Collin
>
>
> ----- Original Message -----
> From: "Geoff Howard" <[EMAIL PROTECTED]>
> To: <[EMAIL PROTECTED]>
> Sent: Monday, January 20, 2003 7:27 PM
> Subject: RE: Parsing multipart form data
>
>
> > >
> > > Hi Geoff,
> > >
> > > When I cast directly to FilePartArray I get a
> ClassCastException, which
> I
> > > thought was due to Cocoon not receiving the init-param correctly.  Is
> that
> > > normal?
> > >
> > > Collin
> >
> > That sounds right.  Change it back to FilePartArray of course.  So, back
> to
> > web.xml/cocoon version for the culprit?
> > - Since you have three web.xml files (one per webapp), make sure you're
> > changing the same one you're testing on (or all three).
> > - Make sure you restart after modifying web.xml.
> > - Confirm what version of cocoon you're using - how did you get 2.0.4?
> What
> > is the date of the main cocoon jar?
> >
> > Geoff
> >
> > >
> > >
> > > ----- Original Message -----
> > > From: "Geoff Howard" <[EMAIL PROTECTED]>
> > > To: <[EMAIL PROTECTED]>
> > > Sent: Monday, January 20, 2003 5:37 PM
> > > Subject: RE: Parsing multipart form data
> > >
> > >
> > > > There you go - you've cast to FilePartFile - cast to FilePart
> > > (or directly
> > > > to FilePartArray) and you're set.  We need another example
> at the Wiki
> > > > (assuming that's where you got the concept from?) showing
> FilePartArray.
> > > >
> > > > Should have thought of that first,
> > > > Geoff
> > > >
> > > > > -----Original Message-----
> > > > > From: Collin VanDyck [mailto:[EMAIL PROTECTED]]
> > > > > Sent: Monday, January 20, 2003 5:22 PM
> > > > > To: [EMAIL PROTECTED]
> > > > > Subject: Re: Parsing multipart form data
> > > > >
> > > > >
> > > > > Hi Geoff.
> > > > >
> > > > > Here's really the only thing I'm doing with it right now.
> > > > >
> > > > > FilePartFile fpf = (FilePartFile)request.get("file_content");
> > > > > log.info("received file of name: " + fpf.getFileName());
> > > > >
> > > > > thanks,--
> > > > > Collin
> > > > >
> > > > >
> > > > >
> > > > >
> > > > >
> > > > >
> > > > > ----- Original Message -----
> > > > > From: "Geoff Howard" <[EMAIL PROTECTED]>
> > > > > To: <[EMAIL PROTECTED]>
> > > > > Sent: Monday, January 20, 2003 5:32 PM
> > > > > Subject: RE: Parsing multipart form data
> > > > >
> > > > >
> > > > > > ah, that brings to mind another idea - send a snippet of your
> > > > > action that
> > > > > > deals with getting the FilePart...
> > > > > >
> > > > > > Geoff
> > > > > >
> > > > > > > -----Original Message-----
> > > > > > > From: Collin VanDyck [mailto:[EMAIL PROTECTED]]
> > > > > > > Sent: Monday, January 20, 2003 5:02 PM
> > > > > > > To: [EMAIL PROTECTED]
> > > > > > > Subject: Re: Parsing multipart form data
> > > > > > >
> > > > > > >
> > > > > > > Here is my web.xml file. (It's long, so an apology in
> advance).
> I
> > > > > > > hope this
> > > > > > > helps, and I really do appreciate everyone's help in
> this list.
> > > > > > >
> > > > > > > I commented out overwrite-uploads and set the autosave-uploads
> to
> > > > > > > false, but
> > > > > > > I still get a FilePartFile instead of a FilePartArray.
> > > > > > >
> > > > > > > thanks,
> > > > > > > Collin
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > <?xml version="1.0" encoding="UTF-8"?>
> > > > > > > <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web
> > > > > Application
> > > > > > > 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd";>
> > > > > > > <web-app>
> > > > > > > <display-name>ContentXML web app</display-name>
> > > > > > > <description>Provides the administration interface to the
> > > ContentXML
> > > > > > > System</description>
> > > > > > > <servlet>
> > > > > > > <servlet-name>Cocoon2</servlet-name>
> > > > > > > <display-name>Cocoon2</display-name>
> > > > > > > <description>The main Cocoon2 servlet</description>
> > > > > > > <!--
> > > > > > > In cases you're facing class loader problems you can
> alternatively
> > > > > > > use the following servlet-class instead of the normal one
> > > > > > >
> <servlet-class>org.apache.cocoon.servlet.ParanoidCocoonServlet</se
> > > > > > > rvlet-clas
> > > > > > > s>
> > > > > > > -->
> > > > > > >
> > > <servlet-class>org.apache.cocoon.servlet.CocoonServlet</servlet-class>
> > > > > > > <!--
> > > > > > > This parameter points to the main configuration file
> for Cocoon.
> > > > > > > Note that the path is specified in absolute notation but
> > > it will be
> > > > > > > resolved relative to the servlets webapp context path
> > > > > > > -->
> > > > > > > <init-param>
> > > > > > > <param-name>configurations</param-name>
> > > > > > > <param-value>/WEB-INF/cocoon.xconf</param-value>
> > > > > > > </init-param>
> > > > > > > <!--
> > > > > > > This parameter tells cocoon to set the thread's context
> > > classloader
> > > to
> > > > > > > its own classloader. If you experience strange classloader
> issues,
> > > > > > > try setting this parameter to "true" or using
> > > ParanoidCocoonServlet.
> > > > > > > -->
> > > > > > > <init-param>
> > > > > > > <param-name>init-classloader</param-name>
> > > > > > > <param-value>false</param-value>
> > > > > > > </init-param>
> > > > > > > <!--
> > > > > > > This parameter indicates the configuration file of the LogKit
> > > > > management
> > > > > > > -->
> > > > > > > <init-param>
> > > > > > > <param-name>logkit-config</param-name>
> > > > > > > <param-value>/WEB-INF/logkit.xconf</param-value>
> > > > > > > </init-param>
> > > > > > > <!--
> > > > > > > This parameter indicates the category id of the
> logger from the
> > > LogKit
> > > > > > > configuration used by the CocoonServlet.
> > > > > > > -->
> > > > > > > <init-param>
> > > > > > > <param-name>servlet-logger</param-name>
> > > > > > > <param-value>access</param-value>
> > > > > > > </init-param>
> > > > > > > <!--
> > > > > > > This parameter indicates the category id of the
> logger from the
> > > LogKit
> > > > > > > management configuration for the Cocoon engine.
> > > > > > > This logger is used for all components described in the
> > > cocoon.xconf
> > > > > > > and sitemap.xmap file not having specified a logger with the
> > > > > > > logger="..." attribute in the component configuration file.
> > > > > > > -->
> > > > > > > <init-param>
> > > > > > > <param-name>cocoon-logger</param-name>
> > > > > > > <param-value>core</param-value>
> > > > > > > </init-param>
> > > > > > > <!--
> > > > > > > This parameter indicates the log level to use throughout
> > > > > startup of the
> > > > > > > system.
> > > > > > > As soon as the logkit.xconf the setting of the logkit.xconf
> > > > > > > configuration is
> > > > > > > used instead! Only for startup and if the logkit.xconf is not
> > > > > > > readable/available
> > > > > > > this log level is of importance.
> > > > > > > Available levels are:
> > > > > > > DEBUG: prints all level of log messages.
> > > > > > > INFO: prints all level of log messages except DEBUG ones.
> > > > > > > WARN: prints all level of log messages except DEBUG and INFO
> ones.
> > > > > > > ERROR: prints all level of log messages except DEBUG,
> > > INFO and WARN
> > > > > ones.
> > > > > > > FATAL_ERROR: prints only log messages of this level
> > > > > > > -->
> > > > > > > <init-param>
> > > > > > > <param-name>log-level</param-name>
> > > > > > > <param-value>INFO</param-value>
> > > > > > > </init-param>
> > > > > > > <!--
> > > > > > > Allow reinstantiating (reloading) of the cocoon instance.
> > > If this is
> > > > > > > set to "yes" or "true", a new cocoon instance can be created
> using
> > > > > > > the request parameter "cocoon-reload".
> > > > > > > -->
> > > > > > > <init-param>
> > > > > > > <param-name>allow-reload</param-name>
> > > > > > > <param-value>yes</param-value>
> > > > > > > </init-param>
> > > > > > > <!--
> > > > > > > This parameter is used to list classes that should be loaded
> > > > > > > at initialization time of the servlet.
> > > > > > > Usually this classes are JDBC Drivers used
> > > > > > > -->
> > > > > > > <init-param>
> > > > > > > <param-name>load-class</param-name>
> > > > > > > <param-value>
> > > > > > > <!-- For IBM WebSphere:
> > > > > > > com.ibm.servlet.classloader.Handler -->
> > > > > > > <!-- For Database Driver: -->
> > > > > > > org.hsqldb.jdbcDriver
> > > > > > > <!-- For parent ComponentManager sample:
> > > > > > > org.apache.cocoon.samples.parentcm.Configurator
> > > > > > > -->
> > > > > > > </param-value>
> > > > > > > </init-param>
> > > > > > > <!--
> > > > > > > This parameter allows to specify where Cocoon should put
> > > > > uploaded files.
> > > > > > > The path specified can be either absolute or relative to
> > > the context
> > > > > > > path of the servlet. On windows platform, absolute directory
> > > > > must start
> > > > > > > with volume: C:\Path\To\Upload\Directory
> > > > > > > The default directory is "upload-dir" in the work-directory
> > > > > > > <init-param>
> > > > > > > <param-name>upload-directory</param-name>
> > > > > > > <param-value>WEB-INF/work/upload-dir</param-value>
> > > > > > > </init-param>
> > > > > > > -->
> > > > > > > <!--
> > > > > > > Causes all files in multipart requests to be saved to
> upload-dir.
> > > > > > > Default is true. Unsupported values will be interpreted as
> false.
> > > > > > > -->
> > > > > > > <init-param>
> > > > > > > <param-name>autosave-uploads</param-name>
> > > > > > > <param-value>false</param-value>
> > > > > > > </init-param>
> > > > > > > <!--
> > > > > > > Specify handling of name conflicts when saving uploaded files
> > > > > > > to disk. Acceptable values are deny, allow, rename (default).
> > > > > > > Files are renamed x_filename where x is an integer value
> > > incremented
> > > > > > > to make the new filename unique.
> > > > > > > <init-param>
> > > > > > > <param-name>overwrite-uploads</param-name>
> > > > > > > <param-value>allow</param-value>
> > > > > > > </init-param>
> > > > > > > -->
> > > > > > > <!--
> > > > > > > Specify maximum allowed size of the upload. Defaults to 10 Mb.
> > > > > > > <init-param>
> > > > > > > <param-name>upload-max-size</param-name>
> > > > > > > <param-value>10000000</param-value>
> > > > > > > </init-param>
> > > > > > > -->
> > > > > > > <!--
> > > > > > > This parameter allows to specify where Cocoon should
> > > create its page
> > > > > > > and other objects cache. The path specified can be either
> absolute
> > > or
> > > > > > > relative to the context path of the servlet. On windows
> platform,
> > > > > > > absolute directory must start with volume:
> > > C:\Path\To\Cache\Directory
> > > > > > > The default directory is "cache-dir" in the work-directory
> > > > > > > <init-param>
> > > > > > > <param-name>cache-directory</param-name>
> > > > > > > <param-value>WEB-INF/work/cache-dir</param-value>
> > > > > > > </init-param>
> > > > > > > -->
> > > > > > > <!--
> > > > > > > This parameter allows to specify where Cocoon should put it's
> > > > > > > working files. The path specified is either absolute
> or relative
> > > > > > > to the context path of the Cocoon servlet. On windows
> platform,
> > > > > > > absolute directory must start with volume:
> > > C:\Path\To\Work\Directory
> > > > > > > The default directory is "cocoon-files" directory in
> the servlet
> > > > > > > context's temp directory (context property
> > > > > javax.servlet.context.tempdir).
> > > > > > > <init-param>
> > > > > > > <param-name>work-directory</param-name>
> > > > > > > <param-value>WEB-INF/work</param-value>
> > > > > > > </init-param>
> > > > > > > -->
> > > > > > > <!--
> > > > > > > This parameter allows to specify additional
> directories or jars
> > > > > > > which Cocoon should put into it's own classpath.
> > > > > > > Note that you must separate them using the platforms
> > > path.separator
> > > > > > > (":" for *nix and ";" for Windows systems). Also note
> > > that absolute
> > > > > > > pathes are take as such but relative pathes are rooted at the
> > > context
> > > > > > > root of the Cocoon servlet.
> > > > > > > <init-param>
> > > > > > > <param-name>extra-classpath</param-name>
> > > > > > >
> <param-value>WEB-INF/extra-classes1:/[YOU-ABSOLUTE-PATH-TO]/own.ja
> > > > > > > r</param-v
> > > > > > > alue>
> > > > > > > </init-param>
> > > > > > > -->
> > > > > > > <!--
> > > > > > > This parameter allows you to select the parent component
> manager.
> > > > > > > The class will be instantiated via the constructor
> that takes a
> > > single
> > > > > > > String as a parameter. That String will be equal to the text
> after
> > > the
> > > > > > > '/'.
> > > > > > > Cocoon honors the Loggable and Initializable interfaces for
> > > > > this class,
> > > > > > > if it implements them.
> > > > > > > If you uncomment the following lines the parent CM is set to
> > > > > the Parent
> > > > > CM
> > > > > > > sample, which will look up
> > > > > > > a configuration via JNDI at
> > > > > > > org/apache/cocoon/samples/parentcm/ParentCMConfiguration
> > > > > > > and use it.
> > > > > > > <init-param>
> > > > > > > <param-name>parent-component-manager</param-name>
> > > > > > >
> <param-value>org.apache.cocoon.samples.parentcm.ParentComponentMan
> > > > > > > ager/org/a
> > > > > > >
> pache/cocoon/samples/parentcm/ParentCMConfiguration</param-value>
> > > > > > > </init-param>
> > > > > > > -->
> > > > > > > <!--
> > > > > > > This parameter allows you to select the request factory.
> Possible
> > > > > > > choices are as follows:
> > > > > > > -
> org.apache.cocoon.components.request.MultipartRequestFactoryImpl
> > > > > > > This is the default factory.
> > > > > > > -
> > > org.apache.cocoon.components.request.MaybeUploadRequestFactoryImpl
> > > > > > > You can opt in for this factory if maybeupload.jar is
> > > > > > > present.
> > > > > > > -
> org.apache.cocoon.components.request.SimpleRequestFactoryImpl
> > > > > > > This factory does not allow uploads.
> > > > > > > -->
> > > > > > > <init-param>
> > > > > > > <param-name>request-factory</param-name>
> > > > > > >
> <param-value>org.apache.cocoon.components.request.MultipartRequest
> > > > > > > FactoryImp
> > > > > > > l</param-value>
> > > > > > > </init-param>
> > > > > > > <!--
> > > > > > > If you set this parameter to 'true' or 'yes', Cocoon will add
> > > > > processing
> > > > > > > time to the end of each response. Value 'hide' adds
> > > processing time
> > > as
> > > > > an
> > > > > > > HTML
> > > > > > > comment. By default, processing time is not added
> > > > > (corresponds to value
> > > > > > > 'no').
> > > > > > > -->
> > > > > > > <init-param>
> > > > > > > <param-name>show-time</param-name>
> > > > > > > <param-value>hide</param-value>
> > > > > > > </init-param>
> > > > > > > <!--
> > > > > > > If true or not set, this class will try to catch and
> handle all
> > > Cocoon
> > > > > > > exceptions.
> > > > > > > If false, it will rethrow them to the servlet container.
> > > > > > > -->
> > > > > > > <init-param>
> > > > > > > <param-name>manage-exceptions</param-name>
> > > > > > > <param-value>true</param-value>
> > > > > > > </init-param>
> > > > > > > <!--
> > > > > > > This parameter allows you to startup Cocoon2 immediately after
> > > startup
> > > > > > > of your servlet engine.
> > > > > > > -->
> > > > > > > <load-on-startup>1</load-on-startup>
> > > > > > > </servlet>
> > > > > > > <!--
> > > > > > > Cocoon handles all the URL space assigned to the webapp using
> its
> > > > > sitemap.
> > > > > > > It is recommended to leave it unchanged. Under some
> > > > > circumstances though
> > > > > > > (like integration with proprietary webapps or servlets) you
> might
> > > have
> > > > > > > to change this parameter.
> > > > > > > -->
> > > > > > > <servlet-mapping>
> > > > > > > <servlet-name>Cocoon2</servlet-name>
> > > > > > > <url-pattern>/</url-pattern>
> > > > > > > </servlet-mapping>
> > > > > > > <!--
> > > > > > > Some servlet engines (Tomcat) have defaults which are not
> > > overriden
> > > > > > > by '/' mapping, but must be overriden explicitly.
> > > > > > > -->
> > > > > > > <servlet-mapping>
> > > > > > > <servlet-name>Cocoon2</servlet-name>
> > > > > > > <url-pattern>*.jsp</url-pattern>
> > > > > > > </servlet-mapping>
> > > > > > > <!--
> > > > > > > Some servlet engines (WebLogic) have defaults which are not
> > > overriden
> > > > > > > by '/' mapping, but must be overriden explicitly.
> > > > > > > -->
> > > > > > > <servlet-mapping>
> > > > > > > <servlet-name>Cocoon2</servlet-name>
> > > > > > > <url-pattern>*.html</url-pattern>
> > > > > > > </servlet-mapping>
> > > > > > > <mime-mapping>
> > > > > > > <extension>css</extension>
> > > > > > > <mime-type>text/css</mime-type>
> > > > > > > </mime-mapping>
> > > > > > > </web-app>
> > > > > > >
> > > > > > >
> > > > > >
> > > >
> ---------------------------------------------------------------------
> > > > > > > Please check that your question  has not already been answered
> in
> > > the
> > > > > > > FAQ before posting.
> > > <http://xml.apache.org/cocoon/faq/index.html>
> > > > > > >
> > > > > > > To unsubscribe, e-mail:
> > > <[EMAIL PROTECTED]>
> > > > > > > For additional commands, e-mail:
> > > <[EMAIL PROTECTED]>
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > ---------------------------------------------------------------------
> > > > > > Please check that your question  has not already been
> > > answered in the
> > > > > > FAQ before posting.
> > <http://xml.apache.org/cocoon/faq/index.html>
> > > > >
> > > > > To unsubscribe, e-mail:
> <[EMAIL PROTECTED]>
> > > > > For additional commands, e-mail:
> <[EMAIL PROTECTED]>
> > > > >
> > > >
> > > >
> > > >
> ---------------------------------------------------------------------
> > > > Please check that your question  has not already been
> answered in the
> > > > FAQ before posting.
<http://xml.apache.org/cocoon/faq/index.html>
> > >
> > > To unsubscribe, e-mail:     <[EMAIL PROTECTED]>
> > > For additional commands, e-mail:   <[EMAIL PROTECTED]>
> > >
> > >
> > >
> >
> >
> > ---------------------------------------------------------------------
> > Please check that your question  has not already been answered in the
> > FAQ before posting.     <http://xml.apache.org/cocoon/faq/index.html>
> >
> > To unsubscribe, e-mail:     <[EMAIL PROTECTED]>
> > For additional commands, e-mail:   <[EMAIL PROTECTED]>
> >
>
>
> ---------------------------------------------------------------------
> Please check that your question  has not already been answered in the
> FAQ before posting.     <http://xml.apache.org/cocoon/faq/index.html>
>
> To unsubscribe, e-mail:     <[EMAIL PROTECTED]>
> For additional commands, e-mail:   <[EMAIL PROTECTED]>
>
>
>
>
> ---------------------------------------------------------------------
> Please check that your question  has not already been answered in the
> FAQ before posting.     <http://xml.apache.org/cocoon/faq/index.html>
>
> To unsubscribe, e-mail:     <[EMAIL PROTECTED]>
> For additional commands, e-mail:   <[EMAIL PROTECTED]>
>


---------------------------------------------------------------------
Please check that your question  has not already been answered in the
FAQ before posting.     <http://xml.apache.org/cocoon/faq/index.html>

To unsubscribe, e-mail:     <[EMAIL PROTECTED]>
For additional commands, e-mail:   <[EMAIL PROTECTED]>




---------------------------------------------------------------------
Please check that your question  has not already been answered in the
FAQ before posting.     <http://xml.apache.org/cocoon/faq/index.html>

To unsubscribe, e-mail:     <[EMAIL PROTECTED]>
For additional commands, e-mail:   <[EMAIL PROTECTED]>

Reply via email to