gravação de arquivo texto na rede

0 respostas
erasmo_tec

Boa tarde, minha duvida é a seguinte:

Tenho uma aplicação que lê e grava as informações lidas em um arquivo de texto na rede atraves de uma pagina JSP, essa aplicação eu migrei de uma aplicação Swing.

No ambiente de desenvolvimento local eu consigo ler o arquivo e gravar em um diretorio especifico na rede, agora quando coloco essa aplicação no Tomcat instalado em um servidor e acesso por outra maquina ele dá um erro dizendo que não consegue localizar o arquivo especificado.

Alguem sabe porque isso ocorre?

a classe que eu especifico o diretorio de gravação está assim:

public class DiretorioSaida {

    String dirSaida = "T:\\ProjetosJavaEGC\\SantHistorico";

    public String getDirSaida() {
        return dirSaida;
    }

    public void setDirSaida(String dirSaida) {
        this.dirSaida = dirSaida;
    }
}

essa é onde executo o metodo de leitura e gravação

public class ProcessarHistoricoMB {

    File arquivoHistorico;
    String caminhoDoArquivoDeHistorico;

    public File getArquivoHistorico() {
        return arquivoHistorico;
    }

    public void setArquivoHistorico(File arquivoHistorico) {
        this.arquivoHistorico = arquivoHistorico;
        caminhoDoArquivoDeHistorico = arquivoHistorico.getPath();
        System.out.println(caminhoDoArquivoDeHistorico);
    }

    public String getCaminhoDoArquivoDeHistorico() {
        return caminhoDoArquivoDeHistorico;
    }

    public void setCaminhoDoArquivoDeHistorico(String caminhoDoArquivoDeHistorico) {
        this.caminhoDoArquivoDeHistorico = caminhoDoArquivoDeHistorico;
    }

    /** Creates a new instance of ProcessarHistoricoMB */
    

    public String processarHistorico() throws FileNotFoundException, IOException {
        Corrigido historicoCorrigido = new Corrigido();
        Inconsistencia historicoInconsistencia = new Inconsistencia();
        historicoCorrigido.GravaCorrigido(caminhoDoArquivoDeHistorico);
        historicoInconsistencia.GravaInconsistencia(caminhoDoArquivoDeHistorico);

        return "refresh";
    }
}

e aqui a classe com a leitura do arquivo

public class Corrigido {
    //declaração das variaveis que serão lidas no arquivo de texto
    private static String codigoEscob;
    private static String operacao;
    private static String cpfCnpj;
    private static String dataAcionamento;
    private static String status;
    private static String ddd;
    private static String telefoneContatado;
    private static String codigoClassifStatus;

    public static BufferedReader GravaCorrigido(String nomeDoArquivo) throws FileNotFoundException, IOException {

        BufferedReader inReader;
        BufferedWriter bfWriterCorrigido;
        //criação de data para concatenar com o nome dos arquivos gerados
        Date data = new Date();
        DateFormat format = new SimpleDateFormat("ddMMyyyy");
        format.format(data);

        //variavel para leitura do arquivo original 
        inReader = new BufferedReader(new FileReader(nomeDoArquivo));
        //string com o novo nome do arquivo
        String novoNome = "COBEX" + format.format(data) + "_CORRIGIDO" + ".txt";
        //criação do buffer para leitura do arquivo corrigido
        DiretorioSaida diretorioSaida = new DiretorioSaida();
        bfWriterCorrigido = new BufferedWriter(new FileWriter(diretorioSaida.getDirSaida() + novoNome));
        
        String line;

        try {
            //enquanto o arquivo não for nulo
            while ((line = inReader.readLine()) != null) {
                //leitura da linha delimitada pelo token |
                StringTokenizer st = new StringTokenizer(line, "|");
                codigoEscob = st.nextToken();
                operacao = st.nextToken();
                cpfCnpj = st.nextToken();
                dataAcionamento = st.nextToken();
                status = st.nextToken();
                ddd = st.nextToken();
                telefoneContatado = st.nextToken();
                codigoClassifStatus = st.nextToken();
//aqui ele faz a gravação da primeira linha do aquivo do arquivo corrigido
                if (codigoEscob.equals("Código do Escob")) {
                    bfWriterCorrigido.write(codigoEscob + "|" + operacao + "|" + cpfCnpj + "|" + dataAcionamento + "|" + status + "|" + ddd + "|" + telefoneContatado + "|" + codigoClassifStatus);
                    bfWriterCorrigido.newLine();
                } else {
                            if (status.equals("BOLETO EM LOTE - CAMPANHA - ENVIADO EM") && codigoClassifStatus.equals("0000")) {
                                codigoClassifStatus = "5100";
                                bfWriterCorrigido.write(codigoEscob + "|" + operacao + "|" + cpfCnpj + "|" + dataAcionamento + "|" + status + "|" + ddd + "|" + telefoneContatado + "|" + codigoClassifStatus);
                            } else {
                                bfWriterCorrigido.write(codigoEscob + "|" + operacao + "|" + cpfCnpj + "|" + dataAcionamento + "|" + status + "|" + ddd + "|" + telefoneContatado + "|" + codigoClassifStatus);
                            }
                            bfWriterCorrigido.newLine();
                        }
                    }
                }
            }
            inReader.close();
            bfWriterCorrigido.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
        return null;
    }
}
Criado 4 de fevereiro de 2009
Respostas 0
Participantes 1