On 16 Jul 2011, at 15:46, Dark Before Dawn <dark.before.d...@gmail.com> wrote:
> Hi there, > > I am trying to list files and directories within an war-file i.e > images/summer2010 images/winter2010. The war-file is deployed on a tomcat 7 > instance with unpackWARs="false". > Since I have no exposed filesystem getRealPath will return null. If you 'have no exposed file system', how do you expect to get files? p > So I tried to use getResourceAsStream wich works fine for files but not for > directories. > My other idea was to use getResource and URL/URI to get a java.io.File via > JNDI. But this file is not a file nor a directory. > Cheers > Darky > > Code Snippet: > // null if unpackWar = false > String absolute = > this.getServletConfig().getServletContext().getRealPath("files"); > out.write("Files: " + absolute); > > // jndi > URL url = > this.getServletConfig().getServletContext().getResource("files"); > out.write("<br/>" + url.toURI()); > > File f = new File("file:" + url.toURI()); > > // Both null > out.write(" isDir: " + f.isDirectory()); > out.write(" isFile: " + f.isFile()); > > InputStream is = > this.getServletConfig().getServletContext().getResourceAsStream("files/1.txt"); > > // NPE if directory > BufferedReader br = new BufferedReader(new InputStreamReader(is)); > String line; > out.write("<br/>content<br/>"); > while ((line = br.readLine()) != null) { > // print file content > out.write(line +"<br/>"); > } > br.close(); > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org > For additional commands, e-mail: users-h...@tomcat.apache.org > --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org