Re: Vadim : RE: XSP Upload example - I do not understand

2002-06-12 Thread Jeroen ter Voorde

Hi,

You can use an action to move the attachment to where you want. Here's how:

http://marc.theaimsgroup.com/?l=xml-cocoon-devm=101878098524370w=2

Jeroen


- Original Message - 
From: Chitharanjan Das [EMAIL PROTECTED]
To: [EMAIL PROTECTED]
Sent: Wednesday, June 12, 2002 12:32 AM
Subject: RE: Vadim : RE: XSP Upload example - I do not understand


 
 Thanks a million
 
 I understand it now...
 
 Let me try to clarify
 
 1. Upload directory is read from init parameter. Hence it is kinda fixed
 .
 2. We do not get the control of uploaded files.
 As soon as the Cocoon gets a request. The request is processed
 for Multipart request processing. Is this how it has to be processed ?
 The only way to change this is to provide my own version of multi-part
 request processing factory. However, the problem is that you can have
 utmost one kind of behaviour.
 3. In my implementation, I need to store the files in different
 directories, depending upon the type of files uploaded. How do you
 suggest I go ant it...
 
 
 Thanks in advance,
 Chiths
 
 
 
 
 
 
 
 
 
 -Original Message-
 From: Vadim Gritsenko [mailto:[EMAIL PROTECTED]] 
 Sent: Tuesday, June 11, 2002 1:18 PM
 To: [EMAIL PROTECTED]
 Subject: RE: Vadim : RE: XSP Upload example - I do not understand
 
  From: Chitharanjan Das [mailto:[EMAIL PROTECTED]]
  
  Hello Vadim...
  
  If you might explain the upload functionality ...
  
  1. Form with multipart data is submitted to upload.xsp
  2. The form parameters have to be processed. I changed the form
 variable
  name from uploaded_file to files and still it works.
  3. If I have to do additional processing like throw error if the file
  exists or the file needs to be stored in a specific pattern say
  $upload_directory/date/user/filename_uniqueId. How can I
 customize
  it.
 
 Look into the source. Start with CocoonServlet:
 
 HttpServletRequest request =
 RequestFactory.getRequestFactory(requestFactoryClass).getServletRequest(
 req,
  
 CocoonServlet.SAVE_UPLOADED_FILES_TO_DISK,
  this.uploadDir,
  CocoonServlet.ALLOW_OVERWRITE,
  CocoonServlet.SILENTLY_RENAME,
  this.maxUploadSize);
 
 
  4. If there are additional form elements, how do I process them.
  5. Where is the upload functionality being invoked.. Its kind a vague
  (for my intellect).
 
 From the servlet, see line(s) above.
 
 Vadim
 
 
  
  Thanks in Advance,
  Chiths
  
  
  -Original Message-
  From: Vadim Gritsenko [mailto:[EMAIL PROTECTED]]
  Sent: Tuesday, June 11, 2002 6:51 AM
  To: [EMAIL PROTECTED]; [EMAIL PROTECTED]
  Subject: RE: XSP Upload example - I do not understand
  
   From: Stefan Riegel [mailto:[EMAIL PROTECTED]]
  
   Hello, everybody,
  
   I do not understand the XSP upload example. Yes, it works fine, but
 I
  would
   like to understand as much as possible. I guess their is some
 magic
  behind
   the scene.
  
   I did some reading of the API Javadoc, but I'am still not
 experienced
  enough
   reading source code. What to do? Should I give up learning Cocoon
 :-(
  
  Try reading Java source code generated from the XSP.
  
  
   The example XSP-Source follows. I added comments about what I don't
   understand.
  
  
   ?xml version=1.0 encoding=ISO-8859-1?
  
   !-- CVS: $Id: upload.xsp,v 1.3 2002/02/09 06:21:57 vgritsenko Exp $
  --
  
  
   !--
   QUESTION: the namespace declarations for request, response and log
 are
   not used and could be omitted? Is this correct?
   --
  
  If not used then can be omitted.
  
  
   xsp:page language=java
 xmlns:xsp=http://apache.org/xsp;
 xmlns:xsp-request=http://apache.org/xsp/request/2.0;
 xmlns:xsp-response=http://apache.org/xsp/response/2.0;
 xmlns:log=http://apache.org/xsp/log/2.0;
  
 xsp:structure
   !--
   QUESTION: Same with the XSPUtil import. Am I right?
   --
  
  Same.
  
  
  
 
 xsp:includeorg.apache.cocoon.components.language.markup.xsp.XSPUtil/x
  sp:i
   nclude
  
  
 
 xsp:includeorg.apache.avalon.framework.context.ContextException/xsp:i
  nclu
   de
 /xsp:structure
  
   !--
   QUESTIONS: I do not understand this part. Who calls conceptualize?
  
  Contextualize. Avalon does.
  See
 
 http://jakarta.apache.org/avalon/framework/reference-the-lifecycle.html
  
  
  Where does context
   (org.apache.cocoon.generation.ServletGenerator.context?)
  come from?
  
  Avalon gives.
 
 http://jakarta.apache.org/avalon/api/org/apache/avalon/framework/context
  /Context.html
  
  
   And the get method of context?
  
  See link above.
  
  
   Their must be some build in
   upload
  functionality, please explain if You are patient enough.
  
  Yes, there is. And it uses maybeupload library, or Multipart request
  parser. See org.apache.cocoon.components.request package.
  
  Vadim
  
  
   --
 xsp:logic

Re: Vadim : RE: XSP Upload example - I do not understand

2002-06-12 Thread Nicola Ken Barozzi


Jeroen ter Voorde wrote:
 Hi,
 
 You can use an action to move the attachment to where you want. Here's how:
 
 http://marc.theaimsgroup.com/?l=xml-cocoon-devm=101878098524370w=2

Or fix the upload mechanism ;-)

Having to pass upload stuff conf to Cocoon directly is an ugly hack, 
that nobody ever took time to change.

If you are willing...

-- 
Nicola Ken Barozzi   [EMAIL PROTECTED]
 - verba volant, scripta manent -
(discussions get forgotten, just code remains)
-


-
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]




RE: Vadim : RE: XSP Upload example - I do not understand

2002-06-11 Thread Vadim Gritsenko

 From: Chitharanjan Das [mailto:[EMAIL PROTECTED]]
 
 Hello Vadim...
 
 If you might explain the upload functionality ...
 
 1. Form with multipart data is submitted to upload.xsp
 2. The form parameters have to be processed. I changed the form
variable
 name from uploaded_file to files and still it works.
 3. If I have to do additional processing like throw error if the file
 exists or the file needs to be stored in a specific pattern say
 $upload_directory/date/user/filename_uniqueId. How can I
customize
 it.

Look into the source. Start with CocoonServlet:

HttpServletRequest request =
RequestFactory.getRequestFactory(requestFactoryClass).getServletRequest(
req,
 
CocoonServlet.SAVE_UPLOADED_FILES_TO_DISK,
 this.uploadDir,
 CocoonServlet.ALLOW_OVERWRITE,
 CocoonServlet.SILENTLY_RENAME,
 this.maxUploadSize);


 4. If there are additional form elements, how do I process them.
 5. Where is the upload functionality being invoked.. Its kind a vague
 (for my intellect).

From the servlet, see line(s) above.

Vadim


 
 Thanks in Advance,
 Chiths
 
 
 -Original Message-
 From: Vadim Gritsenko [mailto:[EMAIL PROTECTED]]
 Sent: Tuesday, June 11, 2002 6:51 AM
 To: [EMAIL PROTECTED]; [EMAIL PROTECTED]
 Subject: RE: XSP Upload example - I do not understand
 
  From: Stefan Riegel [mailto:[EMAIL PROTECTED]]
 
  Hello, everybody,
 
  I do not understand the XSP upload example. Yes, it works fine, but
I
 would
  like to understand as much as possible. I guess their is some
magic
 behind
  the scene.
 
  I did some reading of the API Javadoc, but I'am still not
experienced
 enough
  reading source code. What to do? Should I give up learning Cocoon
:-(
 
 Try reading Java source code generated from the XSP.
 
 
  The example XSP-Source follows. I added comments about what I don't
  understand.
 
 
  ?xml version=1.0 encoding=ISO-8859-1?
 
  !-- CVS: $Id: upload.xsp,v 1.3 2002/02/09 06:21:57 vgritsenko Exp $
 --
 
 
  !--
  QUESTION: the namespace declarations for request, response and log
are
  not used and could be omitted? Is this correct?
  --
 
 If not used then can be omitted.
 
 
  xsp:page language=java
xmlns:xsp=http://apache.org/xsp;
xmlns:xsp-request=http://apache.org/xsp/request/2.0;
xmlns:xsp-response=http://apache.org/xsp/response/2.0;
xmlns:log=http://apache.org/xsp/log/2.0;
 
xsp:structure
  !--
  QUESTION: Same with the XSPUtil import. Am I right?
  --
 
 Same.
 
 
 

xsp:includeorg.apache.cocoon.components.language.markup.xsp.XSPUtil/x
 sp:i
  nclude
 
 

xsp:includeorg.apache.avalon.framework.context.ContextException/xsp:i
 nclu
  de
/xsp:structure
 
  !--
  QUESTIONS: I do not understand this part. Who calls conceptualize?
 
 Contextualize. Avalon does.
 See

http://jakarta.apache.org/avalon/framework/reference-the-lifecycle.html
 
 
 Where does context
  (org.apache.cocoon.generation.ServletGenerator.context?)
 come from?
 
 Avalon gives.

http://jakarta.apache.org/avalon/api/org/apache/avalon/framework/context
 /Context.html
 
 
  And the get method of context?
 
 See link above.
 
 
  Their must be some build in
  upload
 functionality, please explain if You are patient enough.
 
 Yes, there is. And it uses maybeupload library, or Multipart request
 parser. See org.apache.cocoon.components.request package.
 
 Vadim
 
 
  --
xsp:logic
File uploadDir = null;
/** Contextualize this class */
public void contextualize(Context context) throws ContextException
{
  uploadDir = (File) context.get(Constants.CONTEXT_UPLOAD_DIR);
}
/xsp:logic
 
page
 titleThis form allows you upload files/title
 content
   para
 form method=post enctype=multipart/form-data
  action=upload.xsp
   File:  input type=file name=uploaded_file size=50 /
   pinput type=submit value=Upload File //p
 /form
   /para
   para
   ul
 xsp:logic
  getLogger().debug(Dir= + uploadDir);
   String[] filelist = uploadDir.list();
   ![CDATA[
   getLogger().debug(List= + filelist.length);
   for (int i = 0; i  filelist.length; i++) {
  getLogger().debug(File [ + i + ]= + filelist[i]);
   ]]
 li
   xsp:exprfilelist[i]/xsp:expr
 /li
   ![CDATA[
   }
   ]]
 /xsp:logic
   /ul
   /para
   paraBrought to you by Cocoon at xsp:exprnew
  Date()/xsp:expr./para
 
 /content
/page
  /xsp:page
 
 
  Thank You.
 
  Regards
  Stefan
  --
 
  Stefan Riegel
 
 
 -
 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, 

RE: Vadim : RE: XSP Upload example - I do not understand

2002-06-11 Thread Chitharanjan Das


Thanks a million

I understand it now...

Let me try to clarify

1. Upload directory is read from init parameter. Hence it is kinda fixed
.
2. We do not get the control of uploaded files.
As soon as the Cocoon gets a request. The request is processed
for Multipart request processing. Is this how it has to be processed ?
The only way to change this is to provide my own version of multi-part
request processing factory. However, the problem is that you can have
utmost one kind of behaviour.
3. In my implementation, I need to store the files in different
directories, depending upon the type of files uploaded. How do you
suggest I go ant it...


Thanks in advance,
Chiths









-Original Message-
From: Vadim Gritsenko [mailto:[EMAIL PROTECTED]] 
Sent: Tuesday, June 11, 2002 1:18 PM
To: [EMAIL PROTECTED]
Subject: RE: Vadim : RE: XSP Upload example - I do not understand

 From: Chitharanjan Das [mailto:[EMAIL PROTECTED]]
 
 Hello Vadim...
 
 If you might explain the upload functionality ...
 
 1. Form with multipart data is submitted to upload.xsp
 2. The form parameters have to be processed. I changed the form
variable
 name from uploaded_file to files and still it works.
 3. If I have to do additional processing like throw error if the file
 exists or the file needs to be stored in a specific pattern say
 $upload_directory/date/user/filename_uniqueId. How can I
customize
 it.

Look into the source. Start with CocoonServlet:

HttpServletRequest request =
RequestFactory.getRequestFactory(requestFactoryClass).getServletRequest(
req,
 
CocoonServlet.SAVE_UPLOADED_FILES_TO_DISK,
 this.uploadDir,
 CocoonServlet.ALLOW_OVERWRITE,
 CocoonServlet.SILENTLY_RENAME,
 this.maxUploadSize);


 4. If there are additional form elements, how do I process them.
 5. Where is the upload functionality being invoked.. Its kind a vague
 (for my intellect).

From the servlet, see line(s) above.

Vadim


 
 Thanks in Advance,
 Chiths
 
 
 -Original Message-
 From: Vadim Gritsenko [mailto:[EMAIL PROTECTED]]
 Sent: Tuesday, June 11, 2002 6:51 AM
 To: [EMAIL PROTECTED]; [EMAIL PROTECTED]
 Subject: RE: XSP Upload example - I do not understand
 
  From: Stefan Riegel [mailto:[EMAIL PROTECTED]]
 
  Hello, everybody,
 
  I do not understand the XSP upload example. Yes, it works fine, but
I
 would
  like to understand as much as possible. I guess their is some
magic
 behind
  the scene.
 
  I did some reading of the API Javadoc, but I'am still not
experienced
 enough
  reading source code. What to do? Should I give up learning Cocoon
:-(
 
 Try reading Java source code generated from the XSP.
 
 
  The example XSP-Source follows. I added comments about what I don't
  understand.
 
 
  ?xml version=1.0 encoding=ISO-8859-1?
 
  !-- CVS: $Id: upload.xsp,v 1.3 2002/02/09 06:21:57 vgritsenko Exp $
 --
 
 
  !--
  QUESTION: the namespace declarations for request, response and log
are
  not used and could be omitted? Is this correct?
  --
 
 If not used then can be omitted.
 
 
  xsp:page language=java
xmlns:xsp=http://apache.org/xsp;
xmlns:xsp-request=http://apache.org/xsp/request/2.0;
xmlns:xsp-response=http://apache.org/xsp/response/2.0;
xmlns:log=http://apache.org/xsp/log/2.0;
 
xsp:structure
  !--
  QUESTION: Same with the XSPUtil import. Am I right?
  --
 
 Same.
 
 
 

xsp:includeorg.apache.cocoon.components.language.markup.xsp.XSPUtil/x
 sp:i
  nclude
 
 

xsp:includeorg.apache.avalon.framework.context.ContextException/xsp:i
 nclu
  de
/xsp:structure
 
  !--
  QUESTIONS: I do not understand this part. Who calls conceptualize?
 
 Contextualize. Avalon does.
 See

http://jakarta.apache.org/avalon/framework/reference-the-lifecycle.html
 
 
 Where does context
  (org.apache.cocoon.generation.ServletGenerator.context?)
 come from?
 
 Avalon gives.

http://jakarta.apache.org/avalon/api/org/apache/avalon/framework/context
 /Context.html
 
 
  And the get method of context?
 
 See link above.
 
 
  Their must be some build in
  upload
 functionality, please explain if You are patient enough.
 
 Yes, there is. And it uses maybeupload library, or Multipart request
 parser. See org.apache.cocoon.components.request package.
 
 Vadim
 
 
  --
xsp:logic
File uploadDir = null;
/** Contextualize this class */
public void contextualize(Context context) throws ContextException
{
  uploadDir = (File) context.get(Constants.CONTEXT_UPLOAD_DIR);
}
/xsp:logic
 
page
 titleThis form allows you upload files/title
 content
   para
 form method=post enctype=multipart/form-data
  action=upload.xsp
   File:  input type=file name=uploaded_file size=50 /
   pinput type=submit value=Upload File //p
 /form
   /para
   para

RE: Vadim : RE: XSP Upload example - I do not understand

2002-06-11 Thread Vadim Gritsenko

 From: Chitharanjan Das [mailto:[EMAIL PROTECTED]]
 
 
 Thanks a million
 
 I understand it now...
 
 Let me try to clarify
 
 1. Upload directory is read from init parameter. Hence it is kinda
fixed
 .
 2. We do not get the control of uploaded files.
   As soon as the Cocoon gets a request. The request is processed
 for Multipart request processing. Is this how it has to be processed ?
 The only way to change this is to provide my own version of multi-part
 request processing factory. However, the problem is that you can have
 utmost one kind of behaviour.
 3. In my implementation, I need to store the files in different
 directories, depending upon the type of files uploaded. How do you
 suggest I go ant it...

File.renameTo() should work like move, isn't it?


Vadim


 Thanks in advance,
 Chiths
 
 
 
 
 
 
 
 
 
 -Original Message-
 From: Vadim Gritsenko [mailto:[EMAIL PROTECTED]]
 Sent: Tuesday, June 11, 2002 1:18 PM
 To: [EMAIL PROTECTED]
 Subject: RE: Vadim : RE: XSP Upload example - I do not understand
 
  From: Chitharanjan Das [mailto:[EMAIL PROTECTED]]
 
  Hello Vadim...
 
  If you might explain the upload functionality ...
 
  1. Form with multipart data is submitted to upload.xsp
  2. The form parameters have to be processed. I changed the form
  variable
  name from uploaded_file to files and still it works.
  3. If I have to do additional processing like throw error if the
file
  exists or the file needs to be stored in a specific pattern say
  $upload_directory/date/user/filename_uniqueId. How can I
  customize
  it.
 
 Look into the source. Start with CocoonServlet:
 
 HttpServletRequest request =

RequestFactory.getRequestFactory(requestFactoryClass).getServletRequest(
 req,
 
 CocoonServlet.SAVE_UPLOADED_FILES_TO_DISK,
  this.uploadDir,

CocoonServlet.ALLOW_OVERWRITE,

CocoonServlet.SILENTLY_RENAME,
  this.maxUploadSize);
 
 
  4. If there are additional form elements, how do I process them.
  5. Where is the upload functionality being invoked.. Its kind a
vague
  (for my intellect).
 
 From the servlet, see line(s) above.
 
 Vadim


...


-
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]