Já havia conseguido gravar um arquivo passando o caminho completo (c:/tomcat/webapps/…), mas não posso trabalhar assim porque quando eu for hospedar o meu site, provavelmente não terei o camonho completo.
Testei, na minha classe que grava esses arquivos, algumas situações como:
…\ARQUIVOS/mensagem.txt
…\ARQUIVOSmensagem.txt
…/ARQUIVOS/mensagem.txt
e outras
Mas não consegui encontrar o caminho.
Se alguém puder me mostrar este caminho, tanto para windows como para linux, ficarei muito grato.
Desenvolvo o meu site no windows, mas vou hospela-lo no linux
Alguém pode me dizer como posso descobrir em qual sistema operacional a minha classe está rodando?
Preciso saber o sistema operacional, para preparar código que atribui o caminho de gravação do arquivo (diretório), tanto para o windows como para o linux.
O WEB-INF nã deveria estar dentro do diretório ARQUIVOS. web-inf deve ficar logo abaixo do nome do seu contexto:
c:\tomcat\webapps\minhaaplicacao\WEB-INF
O diretório ARQUIVOS pode ficar logo abaito de “minhaaplicacao” também, você usa mapeamento do tipo:
/minhaaplicacao/ARQUIVOS/algumjsp.jsp
ou qualquer outro arquivo
Ou seja, os diretórios minhaaplicacao e web-inf estão no mesmo nível, embaixo do minha aplicação.
Já testei o que você indicou, mas não deu certo.
Mas já vi que eu terei problemas maiores. Estou hospedando o meu site na LocaWeb, e fui informado que o caminho completo do meu diretório é:
“/home/minhaaplicacao/ARQUIVOS/xxx.txt”
Como posso implementar isso, se eu desenvolvo com o windows?
Alguém tem um exemplo de como indicar o caminho acima no linux?
Cara, qual erro que está dando? Não compila? Ou no runtime?
E quanto à sua segunda dúvida, dê uma olhadinha na classe System. Alguns métodos interessantes:
System.getProperty( “os.name” )
System.getProperty( “path.separator” )