Hi Peter, file.delete() doesn't get executed in this case.
Its: if (!file.exists()) { throw new FileNotFoundException(filePath); that line of code that triggers your Error message and file.delete() has not been reached. Greetings, Greg 2012/12/29 Peter Sparkes <pe...@didm.co.uk> > Hi Martin and Robby, > > Thank you both for your help, what I have ended up with is: > > importClass(Packages.java.io.File); > importClass(Packages.java.io.FileNotFoundException); > > function deletefile() { > > //var filePath = cocoon.parameters["file"]; > > var filePath = "D:/cocoon-2.1.11-wl/build/webapp/B&B/xml/9999.xml"; > //for testing > > var file = new File(filePath); > try { > if (!file.exists()) { > throw new FileNotFoundException(filePath); > } > file.delete(); > cocoon.sendPage('deletefilesuccess',{file:filePath}); > } catch (e) { > cocoon.sendPage('deletefileerror',{file:e}); > } > } > > However, file.delete(); produces a syntax error. > > If I comment out file.delete(), the rest of the script works correctly: > > - If 9999.xml exists, deletefilesuccess is accessed > - If 9999.xml does not exist, deletefileerror is accessed and I get: > Error File java.io.FileNotFoundException: > D:/cocoon-2.1.11-wl/build/webapp/B&B/xml/9999.xml Not Found > > What's wrong with file.delete(); ? > > Regards > > Peter > > > > On 27/12/2012 18:35, Martin Heiden wrote: > > Hi Peter, > > Ok, I missed something: > > var xml_file = > Packages.java.io.File("D:\cocoon-2.1.11-wl\build\webapp\B&B\xml" + file + > ".xml"); > > should be: > > var xml_file = new > Packages.java.io.File("D:\cocoon-2.1.11-wl\build\webapp\B&B\xml" + file + > ".xml"); > > But you should try the function Robby sent to the list. It's much > cleaner. > > Regards, > > Martin. > > > Thursday, December 27, 2012, 6:12:08 PM, you wrote: > > PS> Hi Martin > > PS> Thanks for your suggestion, unfortunately I get the same error. The > error log gives: > > PS> ERROR (2012-12-27) 15:30.46:723 [flow] (/office/deletefile_9999) > PoolThread-4/JSErrorReporter: > PS> "file:///D:/cocoon-2.1.11-wl/build/webapp/office/flow/deletefile.js", > line 13: missing name after . > PS> operator > PS> ERROR (2012-12-27) 15:30.46:723 [sitemap.handled-errors] > (/office/deletefile_9999) > PS> PoolThread-4/ErrorHandlerHelper: Sitemap: error calling function > 'deletefile' > PS> at <map:call> - > PS> file:///D:/cocoon-2.1.11-wl/build/webapp/office/sitemap.xmap:230:37 > PS> at <map:mount> - > PS> file:///D:/cocoon-2.1.11-wl/build/webapp/sitemap.xmap:783:90 > PS> org.mozilla.javascript.EvaluatorException: > PS> "file:///D:/cocoon-2.1.11-wl/build/webapp/office/flow/deletefile.js", > line 1: Compilation produced 1 > PS> syntax errors. > PS> at > PS> > org.apache.cocoon.components.flow.javascript.JSErrorReporter.runtimeError(JSErrorReporter.java:67) > > PS> regards > > PS> Peter > > > PS> On 27/12/2012 11:42, Martin Heiden wrote: > > Hi Peter, > > PS> //Delete file > PS> Packages.java.io.File.xml_file.delete(); > > Try > > xml_file.delete(); > > You just have to add the full "path" to the class when you > construct it. After this, the variable contains a reference and you > can just use it. > > Regards, > > Martin. > > > Thursday, December 27, 2012, 10:28:31 AM, you wrote: > > PS> Hi, > > PS> I am trying to delete xml files using the following flowscript: > > PS> function deletefile() { > > PS> //file to be deleted > PS> var file = > PS> Packages.java.lang.String(cocoon.parameters["file"]); > > PS> try { > PS> // creating a link to the file to be deleted > PS> var xml_file = > PS> Packages.java.io.File("D:\cocoon-2.1.11-wl\build\webapp\B&B\xml" + file > PS> + ".xml"); > > PS> //Delete file > PS> Packages.java.io.File.xml_file.delete(); > > PS> // .txt file with OK message > PS> cocoon.sendPage("success.txt", null); > PS> } > PS> catch(ex){ > PS> cocoon.log.error(ex); > PS> // Smth. went wrong. Sending a error.txt file to the browser > PS> cocoon.sendPage("error.txt", null); > PS> } > > PS> } > > PS> and get "Compilation produced 1 syntax errors" > > PS> The error log contains: > > PS> ERROR ............ deletefile.js", line 13: missing name after . > operator > > PS> line 13 is: > > PS> Packages.java.io.File.xml_file.delete(); > > PS> What I am doing wrong? > > PS> Peter > > > > > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: users-unsubscr...@cocoon.apache.org > For additional commands, e-mail: users-h...@cocoon.apache.org > > Ciao, > Martin > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: users-unsubscr...@cocoon.apache.org > For additional commands, e-mail: users-h...@cocoon.apache.org > > >