Estava fazendo um pequeno contador de acessos, e achei que um arquivo texto poderia ser melhor para guardar esse valor.
Criei um método que verificava se o arquivo já existia, e se não, criava o mesmo. Mas ele foi criado na pasta do Tomcat, fora do meu contexto!!!
Eu tinha a idéia de que toda aplicação rodasse diretamente no seu diretório de “contexto”. Existe alguma configuração ou algum modo de estar somente no contexto? Não queria que, quando subir esse aquivo para o servidor, ele fique criando arquivos em outros lugares.
public static void verificaExistencia(String nomeArquivo) throws IOException{
File f = new File(nomeArquivo);
if(f.exists()==false){
f.createNewFile();
PrintWriter p = new PrintWriter(f);
p.write("0");
p.close();
}
A minha idéia original era criar dentro do contexto.
Exemplo idiota:
Fico imaginando 500 contextos diferentes no tomcat, se cada um criar um arquivo, o diretório do Tomcat vai ficar uma zona!!! :shock: :shock:
Mas isso não responde totalmente a minha pergunta. Olha só:
Na hora da criação, eu não tinha certeza se só essa aplicação é que iria acessar o arquivo, então criei duas classes.
Uma para chamar quem modifica o arquivo(e mais outras coisas) e a que realmente põe a mão na massa e modifica o arquivo.
Mas as duas estão no “classes/br/com/nomedaempresa/”
Porque a criação do arquivo é na pasta raiz do Tomcat? Pensando de forma lógica, era para ser criado na mesma pasta das classes, ou no raiz do contexto.