Pessoal,
Estou tentando rodar minha aplicação num servidor com Linux e nao sei onde esta o problema.
Quando rodo o codigo abaixo no localhost funciona normalmente. É criado um diretorio temporário chamado “temp”, onde os arquivos txt são gerados, zipados e depois que o usuário salva o arquivo zip, o diretorio “temp” é deletado. Aki vai um trecho do codigo que roda localhost:
... //select gerando uma listaFuncionario :?:
final Integer TAM_ARQ = listaFuncionario.size();
Integer j = (TAM_ARQ / 5000);
final Integer TOTAL_ARQ = j >= 0 ? j+1 : j;
PrintWriter [] arquivosGerados = new PrintWriter[TOTAL_ARQ];
File dirAtual = new File("");
File dirTemp = new File(dirAtual.getAbsolutePath(),"temp"); //c:\Ferramentas\eclipse\temp :?:
dirTemp.mkdir(); //cria o diretório temp :?:
String nomeArquivo = dirTemp.getAbsolutePath()+"\FPSFP056"; //c:\Ferramentas\eclipse\temp\FPS056 :?:
for(int i = 0; i < TOTAL_ARQ; i++){
//arquivos FPS056-1.txt e etc gerados por enquanto vazios
arquivosGerados[i] = new PrintWriter(new FileOutputStream(nomeArquivo+"-"+(i+1)+".txt"));
}
...
Integer TEMP_TAM_ARQ = TAM_ARQ;
for(int i = 0; i < TOTAL_ARQ; i++){
Integer sequencial = 1;
StringBuffer header = new StringBuffer();
StringBuffer detalhe = new StringBuffer();
StringBuffer trailer = new StringBuffer();
StringBuffer registro = new StringBuffer();
... //preenchimento dos Stringbuffer
String total = TEMP_TAM_ARQ+"";
sequencial += 1;
trailer.append("9").append(zeros.substring(0,5-total.length())+TEMP_TAM_ARQ).append(brancos.substring(0,595)).
append(zeros.substring(0,7-sequencial.toString().length())+sequencial);
registro.append(header).append(detalhe).append(trailer);
//iniciar processo de geracao do arquivo...
String [] linhas = registro.toString().split("\r\n");
for(int l = 0; l < linhas.length; l++)
arquivosGerados[i].println(linhas[l]); //preenchimento dos arquivos FPS056-i.txt
arquivosGerados[i].close();
}
Eu quero fazer o mesmo no servidor Linux. Ja tentei colocar o caminho direto, conforme trecho do codigo abaixo, mas nada adiantou. Tentei criar uma classe contendo 2 atributos do tipo String contendo o caminho completo p/ cada situação mas tb nao funcionou. O que posso estar errando?
File dirAtual = new File("");
File dirTemp = new File(File.separator+"opt"+File.separator+"pasep"+File.separator,"temp"); // \opt\pasep\temp :?:
dirTemp.mkdir(); //cria o diretório temp :?:
String nomeArquivo = File.separator+"opt"+File.separator+"pasep"+File.separator,"temp"+File.separator+"FPSFP056";
// \opt\pasep\temp\FPS056 :?:
for(int i = 0; i < TOTAL_ARQ; i++){
arquivosGerados[i] = new PrintWriter(new FileOutputStream(nomeArquivo+"-"+(i+1)+".txt"));
}
Agradeço a quem ajudar.