hi,

i did the changes you purposed (changing the sitemap and/or returning
null)but it had no effect. the upload class still get's called, but i also
still get the same exception.

the thing i want to have is: i upload the file and then cocoon sends me to
some other site -- static or dynamic i don't mind.

best regards!

peter

ps: still bad quoting. sorry.

-------------------------------------------------------

Original Message:
-----------------
From: Jorg Heymans [EMAIL PROTECTED]
Date: Tue, 30 Sep 2003 12:46:27 +0200
To: [EMAIL PROTECTED]
Subject: Re: different upload-dirs for different applications


did you try to move the generator and reader within the action itself ? 
your sitemap syntax seems a bit strange

    <map:act type="upload-files"/>
    <map:generate type="request">
    <map:read src="new-samples/success.html" mime-type="text/html"/>
    </map:generate>

should be

    <map:act type="upload-files">
            <map:generate type="request">
            <map:read src="new-samples/success.html" mime-type="text/html"/>
    </map:act>

when your returning a map at the end of your action then the rest of the 
pipeline inside the map will get executed, return null if this is not 
desired.

Hope this helps
Jorg

[EMAIL PROTECTED] wrote:

>first -- pleast excuse my bad quoting. mail2web does not support better. :(
>
>i'm still getting crazy trying to upload files into different directorys. i
>did the solution as offered in the answer below. i inserted the example
>into the standard cocoon configuration (retrieved from cocoon.war).
>
>perhaps 1st the code.
>
>--[sitemap.xmap begin]----
>
><map:actions>
>   <map:action logger="sitemap.action.request" name="upload-files"
>src="de.my.cocoon.UploadSplitter"/>
>..
></map:action>
>
><map:pipeline>
>  <map:match pattern="upload">
>    <map:generate src="new-samples/fileUp.xhtml"/>
>    <map:serialize type="xhtml"/>
>  </map:match>
>
>  <map:match pattern="uploadFileFromUser">
>    <map:act type="upload-files"/>
>    <map:generate type="request">
>    <map:read src="new-samples/success.html" mime-type="text/html"/>
>    </map:generate>
>  </map:match>
>
>  <map:match pattern="**/uploadFileFromUser">
>    <map:act type="upload-files"/>
>    <map:generate type="request">
>    <map:read src="new-samples/success.html" mime-type="text/html"/>
>    </map:generate>
>  </map:match>
>...
></map:pipeline>
>-----[end of sitemap.xmap]--------------------------------------
>
>i also changed the needed entrys in web.xml.
>
>the "class de.my.cocoon.uploadSplitter" is quite the same than the example
>given on wiki (and below). it works, it produces anoter file every time i
>upload something. (i do not save the uploaded file yet.)
>
>problem is: i still get this error after uploading the file:
>
>"Resource not found
>No pipeline matched request: uploadFileFromUser
>
>org.apache.cocoon.ResourceNotFoundException: No pipeline matched request:
>uploadFileFromUser"
>
>and the following stacktrace [just first 3 lines..]
>
>org.apache.cocoon.ResourceNotFoundException: No pipeline matched request:
>uploadFileFromUser
>
>       at
>org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(Pipe
l
>ineNode.java:168)
>
>       at
>org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.inv
o
>keNodes(AbstractParentProcessingNode.java:108)
>
>
>.. 
>
>anyone can help me with a slightly longer explaination or a resource where
>i can read (and understand it)?
>
>best regards and thanks a lot!
>
>peter
>
>
>
>
>
>--[old mails]----------------------------------------------------------
>you need to create an action that has some logic in it which determines 
>the application trying to save the file (eg make the applications pass a 
>unique parameter in the request or so)
>
> From the wiki 
>(http://wiki.cocoondev.org/Wiki.jsp?page=FileUploadWithAction)
>
>    public Map act(Redirector redirector, SourceResolver resolver,
>                   Map objectModel, String source, Parameters par)
>        throws Exception
>    {
>       //use the request object below to get the additional request parameter
>        Request request = ObjectModelHelper.getRequest(objectModel);
>        FilePart filePart = (FilePart) request.get("uploaded_file");
>
>        File file = ((FilePartFile)filePart).getFile();        
>        getLogger().debug("Uploaded file = " + file.getCanonicalPath());
>        // here you can open an InputStream on the file or whatever
>        // you may also want to delete the file after using it
>        return Collections.EMPTY_MAP;
>
>    }
>
>action can be defined in the sitemap as following
>    <map:actions>
>      <map:action name="upload-files" src="your.action.package.class"
>                          logger="my.logger.filestore"/>
>    </map:actions>     
>
><map:pipelines>
>......
>        <map:act type="upload-files">
>              <map:generate type="request"/>
>        </map:act>
>
>
>[EMAIL PROTECTED] wrote:
>
>  
>
>>Hi,
>>
>>I have 2 applications accessing one cocoon (using different paths of
>>course). Both apps need to upload Files. Is there any way to make cocoon
>>save the incoming files in different directorys?
>>
>>I have seen the single-Directory solution but that does not fit my needs. 
>>
>>Any help is highly appreciated!
>>
>>peter
>>
>>
>>    
>>
>
>
>--------------------------------------------------------------------
>mail2web - Check your email from the web at
>http://mail2web.com/ .
>
>
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: [EMAIL PROTECTED]
>For additional commands, e-mail: [EMAIL PROTECTED]
>
>
>  
>


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



--------------------------------------------------------------------
mail2web - Check your email from the web at
http://mail2web.com/ .



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

Reply via email to