dims        01/04/02 06:53:11

  Modified:    src/org/apache/cocoon Tag: xml-cocoon2 Constants.java
               src/org/apache/cocoon/components/language/markup/xsp Tag:
                        xml-cocoon2 XSPGenerator.java
               src/org/apache/cocoon/generation Tag: xml-cocoon2
                        ServletGenerator.java
               src/org/apache/cocoon/servlet Tag: xml-cocoon2
                        CocoonServlet.java
               webapp/docs/samples/xsp Tag: xml-cocoon2 upload.xsp
  Log:
  Added a new optional parameter to specify the upload directory.
  
  Here's the sample entry in web.xml
  <param-name>upload-directory</param-name>
    <param-value>upload-dir</param-value>
    </init-param>
  <init-param>
  
  Revision  Changes    Path
  No                   revision
  
  
  No                   revision
  
  
  1.1.2.18  +2 -1      xml-cocoon/src/org/apache/cocoon/Attic/Constants.java
  
  Index: Constants.java
  ===================================================================
  RCS file: /home/cvs/xml-cocoon/src/org/apache/cocoon/Attic/Constants.java,v
  retrieving revision 1.1.2.17
  retrieving revision 1.1.2.18
  diff -u -r1.1.2.17 -r1.1.2.18
  --- Constants.java    2001/02/21 14:56:01     1.1.2.17
  +++ Constants.java    2001/04/02 13:53:06     1.1.2.18
  @@ -10,7 +10,7 @@
   
   /**
    * @author <a href="mailto:[EMAIL PROTECTED]">Stefano Mazzocchi</a>
  - * @version CVS $Revision: 1.1.2.17 $ $Date: 2001/02/21 14:56:01 $
  + * @version CVS $Revision: 1.1.2.18 $ $Date: 2001/04/02 13:53:06 $
    */
   
   public interface Constants {
  @@ -60,6 +60,7 @@
       String CONTEXT_ROOT_PATH       = "root-path";
       String CONTEXT_CLASS_LOADER    = "class-loader";
       String CONTEXT_WORK_DIR        = "work-directory";
  +    String CONTEXT_UPLOAD_DIR      = "upload-directory";
       String CONTEXT_CLASSPATH       = "classpath";
       String CONTEXT_CONFIG_URL      = "config-url";
       String CONTEXT_LOG_DIR         = "log-directory";
  
  
  
  No                   revision
  
  
  No                   revision
  
  
  1.1.2.17  +8 -2      
xml-cocoon/src/org/apache/cocoon/components/language/markup/xsp/Attic/XSPGenerator.java
  
  Index: XSPGenerator.java
  ===================================================================
  RCS file: 
/home/cvs/xml-cocoon/src/org/apache/cocoon/components/language/markup/xsp/Attic/XSPGenerator.java,v
  retrieving revision 1.1.2.16
  retrieving revision 1.1.2.17
  diff -u -r1.1.2.16 -r1.1.2.17
  --- XSPGenerator.java 2001/03/21 18:51:04     1.1.2.16
  +++ XSPGenerator.java 2001/04/02 13:53:08     1.1.2.17
  @@ -14,6 +14,8 @@
   import org.apache.cocoon.components.language.generator.CompiledComponent;
   
   import org.apache.avalon.Poolable;
  +import org.apache.avalon.Contextualizable;
  +import org.apache.avalon.Context;
   
   import org.apache.cocoon.generation.AbstractServerPage;
   
  @@ -21,9 +23,13 @@
    * Base class for XSP-generated <code>ServerPagesGenerator</code> classes
    *
    * @author <a href="mailto:[EMAIL PROTECTED]">Ricardo Rocha</a>
  - * @version CVS $Revision: 1.1.2.16 $ $Date: 2001/03/21 18:51:04 $
  + * @version CVS $Revision: 1.1.2.17 $ $Date: 2001/04/02 13:53:08 $
    */
  -public abstract class XSPGenerator extends AbstractServerPage implements 
CompiledComponent {
  +public abstract class XSPGenerator extends AbstractServerPage implements 
CompiledComponent, Contextualizable {
  +
  +  /** Contextualize this class */
  +  public void contextualize(Context context) {
  +  }
   
     /**
      * Set the current <code>ComponentManager</code> instance used by this
  
  
  
  No                   revision
  
  
  No                   revision
  
  
  1.1.2.14  +4 -4      
xml-cocoon/src/org/apache/cocoon/generation/Attic/ServletGenerator.java
  
  Index: ServletGenerator.java
  ===================================================================
  RCS file: 
/home/cvs/xml-cocoon/src/org/apache/cocoon/generation/Attic/ServletGenerator.java,v
  retrieving revision 1.1.2.13
  retrieving revision 1.1.2.14
  diff -u -r1.1.2.13 -r1.1.2.14
  --- ServletGenerator.java     2001/03/30 17:14:33     1.1.2.13
  +++ ServletGenerator.java     2001/04/02 13:53:09     1.1.2.14
  @@ -17,7 +17,7 @@
   import org.apache.cocoon.ProcessingException;
   import org.apache.cocoon.environment.Request;
   import org.apache.cocoon.environment.Response;
  -import org.apache.cocoon.environment.http.HttpContext;
  +import org.apache.cocoon.environment.Context;
   
   import org.xml.sax.EntityResolver;
   import org.xml.sax.SAXException;
  @@ -25,14 +25,14 @@
   /**
    *
    * @author <a href="mailto:[EMAIL PROTECTED]">Giacomo Pati</a>
  - * @version CVS $Revision: 1.1.2.13 $ $Date: 2001/03/30 17:14:33 $
  + * @version CVS $Revision: 1.1.2.14 $ $Date: 2001/04/02 13:53:09 $
    */
   public abstract class ServletGenerator extends ComposerGenerator
   implements Composer {
   
       protected Request request=null;
       protected Response response=null;
  -    protected HttpContext context=null;
  +    protected Context context=null;
   
       public void setup(EntityResolver resolver, Map objectModel, String src, 
Parameters par)
           throws ProcessingException, SAXException, IOException {
  @@ -40,6 +40,6 @@
         super.setup(resolver, objectModel, src, par);
         this.request = (Request) objectModel.get(Constants.REQUEST_OBJECT);
         this.response = (Response) objectModel.get(Constants.RESPONSE_OBJECT);
  -      this.context = (HttpContext) objectModel.get(Constants.CONTEXT_OBJECT);
  +      this.context = (Context) objectModel.get(Constants.CONTEXT_OBJECT);
       }
   }
  
  
  
  No                   revision
  
  
  No                   revision
  
  
  1.1.4.73  +9 -2      
xml-cocoon/src/org/apache/cocoon/servlet/Attic/CocoonServlet.java
  
  Index: CocoonServlet.java
  ===================================================================
  RCS file: 
/home/cvs/xml-cocoon/src/org/apache/cocoon/servlet/Attic/CocoonServlet.java,v
  retrieving revision 1.1.4.72
  retrieving revision 1.1.4.73
  diff -u -r1.1.4.72 -r1.1.4.73
  --- CocoonServlet.java        2001/03/23 16:15:21     1.1.4.72
  +++ CocoonServlet.java        2001/04/02 13:53:10     1.1.4.73
  @@ -62,7 +62,7 @@
    * @author <a href="mailto:[EMAIL PROTECTED]">Stefano Mazzocchi</a>
    * @author <a href="mailto:[EMAIL PROTECTED]">Nicola Ken Barozzi</a> Aisa
    * @author <a href="mailto:[EMAIL PROTECTED]">Berin Loritsch</a>
  - * @version CVS $Revision: 1.1.4.72 $ $Date: 2001/03/23 16:15:21 $
  + * @version CVS $Revision: 1.1.4.73 $ $Date: 2001/04/02 13:53:10 $
    */
   
   public class CocoonServlet extends HttpServlet {
  @@ -114,7 +114,14 @@
   
           File workDir = (File) 
context.getAttribute("javax.servlet.context.tempdir");
           this.appContext.put(Constants.CONTEXT_WORK_DIR, workDir);
  -        this.uploadDir = IOUtils.createFile(workDir, "image-dir" + 
File.separator);
  +
  +             String uploadDirParam = 
conf.getInitParameter("upload-directory");
  +        if ((uploadDirParam != null) && (uploadDirParam.trim().equals("") == 
false)) {
  +                     this.uploadDir = IOUtils.createFile( new 
File(context.getRealPath("/")) , uploadDirParam);
  +             } else  {
  +                     this.uploadDir = IOUtils.createFile(workDir, 
"image-dir" + File.separator);
  +             }
  +        this.appContext.put(Constants.CONTEXT_UPLOAD_DIR, this.uploadDir);
           this.uploadDir.mkdirs();
   
           this.appContext.put(Constants.CONTEXT_CONFIG_URL,
  
  
  
  No                   revision
  
  
  No                   revision
  
  
  1.1.2.3   +9 -3      xml-cocoon/webapp/docs/samples/xsp/Attic/upload.xsp
  
  Index: upload.xsp
  ===================================================================
  RCS file: /home/cvs/xml-cocoon/webapp/docs/samples/xsp/Attic/upload.xsp,v
  retrieving revision 1.1.2.2
  retrieving revision 1.1.2.3
  diff -u -r1.1.2.2 -r1.1.2.3
  --- upload.xsp        2001/03/23 19:38:20     1.1.2.2
  +++ upload.xsp        2001/04/02 13:53:11     1.1.2.3
  @@ -11,20 +11,26 @@
      
<xsp:include>org.apache.cocoon.components.language.markup.xsp.XSPUtil</xsp:include>
     </xsp:structure>
   
  +  <xsp:logic>
  +  File uploadDir = null;
  +  /** Contextualize this class */
  +  public void contextualize(Context context) {
  +    uploadDir = (File) context.get(Constants.CONTEXT_UPLOAD_DIR);
  +  }
  +  </xsp:logic>
  +
     <page>
      <title>This form allows you upload files</title>
      <content>
        <para>
          <form method="post" enctype="multipart/form-data" action="upload">
            File:  <input type="file" name="uploaded_file" size="50" />
  -      <p><input type="submit" value="Upload File" /></p>
  +     <p><input type="submit" value="Upload File" /></p>
          </form>
        </para>
        <para>
        <ul>
          <xsp:logic>
  -         File workDir = (File) XSPUtil.getContextAttribute(objectModel, 
"javax.servlet.context.tempdir");
  -         File uploadDir = IOUtils.createFile(workDir, "image-dir" + 
File.separator);
            String[] filelist = uploadDir.list();
            for (int i = 0; i &lt; filelist.length; i++) {
              <li>
  
  
  

----------------------------------------------------------------------
In case of troubles, e-mail:     [EMAIL PROTECTED]
To unsubscribe, e-mail:          [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to