Arquivo properties

0 respostas
L

Meu sistema gera um arquivo .properties para armazenar as configurações do sistema de cada terminal localmente…
até aí tudo bem…

Um Ex da utilização…
Quando o sistema inicia, o sistema acessa esse arquivo, para saber qual terminal que ele é, o endereço do banco, end. do driver, senha do banco, etc. Neste arquivo, eu pus uma criptografia na hora de ler e gravar…Assim ele le a propriedade, descriptografa ela, interpreta e se caso prescise gravar alguma propriedade, ele gera a propriedade, criptografa e grava no arquivo… Até aí tudo bem…

o problema é o seguinte…
Esse sistema está rodando em vários terminais, mais ou menos uns 15. E de vez enquando, ao ler o arquivo, dá um erro, tipo uma vez a cada dois meses… parece que o arquivo corrompe… alguém já passou por isso…será que estou fazendo algo de errado para ler o arquivo…tipo…deixando aberto ou algo assim…para dar pau no arquivo de vez enquando?

Um exemplo de um método que eu uso

/**
     * Seta as configurações no arquivo de propriedades
     * Retorna true se gravou e false de deu erro
     */
//CriptProperties é uma classe extendida de Properties que somente criptografa e descriptografa informações antes de setar as //propriedades.. Pode-se interpretar como uma classe Properties
    public boolean setConfiguracao(CriptProperties p){
         try {
//arquivo é uma variável global do tipo File que contém o endereçamento do arquivo de configuração
            if (!arquivo.exists()) { 
                if (arquivo.createNewFile()) {
                  p.store(new FileOutputStream(arquivo),"Configuração extra do sistema.");
                  

                } else {
                    log.error("Erro ao gravar o arquivo de propriedades");
                    return false;
                }
            }else{
                  
                 p.store(new FileOutputStream(arquivo),"Configuração extra do sistema.");
               

            }
        } catch (Exception ex) {
            log.error("Erro ao gravar o arquivo de propriedades", ex);
            return false;
        }
         return true;

    }

será que o problema está no new FileOutputStream que fica sempre aberto?

Criado 13 de abril de 2011
Respostas 0
Participantes 1