Como usar arquivo auxiliar externo?

3 respostas
G

ola a todos…

estou precisando o seguinte: imaginem o fonte principal de algum .mxml. Em algum determinado momento ele vai acessar ao banco de dados, imaginem q seja o postgres, hipoteticamente. Mas, pra acessar o banco eh necessario algumas informacoes, tipo, o host, dns, porta, usuario, senha e database… Mas isso eu nao queria deixar fixo na fonte, e sim usar um auxiliar. No java puro usava assim (tanto pra gravar por ocasicao de alguma necessidade, qto para ler:

package com.cashonhand.Arquivo;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
import javax.swing.*;

public class jArquivo {

	VariavelTop oCfgTop = new VariavelTop();
	
	public boolean jGravaArqIni(String cBanco,String cHst,String cDns,String cPorta,String cUsu,String cSenha,String cDtbase) {
		boolean lGravou = false;
		boolean lGrava  = false;
		String wArqTop = "TopConec";
		File oFileIni = new File( wArqTop+".Ini" );
        if ( oFileIni.exists() ) {
            Object[] options = {"Cancelar","Regravar"};
            int n = JOptionPane.showOptionDialog(null,"O Arquivo "+wArqTop+".Ini ja Existe.\nEscolhe a sua Opcao:",
                                                       "Atencao",
                                                       JOptionPane.YES_NO_CANCEL_OPTION,
                                                       JOptionPane.QUESTION_MESSAGE,
                                                       null,options,options[1]);
            if (n == 1) lGrava = true;
        }else lGrava = true;
        if ( lGrava ) {
        	oCfgTop.TopBanco    = cBanco.trim();
            oCfgTop.TopHst      = cHst.trim(); 
            oCfgTop.TopDns      = cDns.trim();
            oCfgTop.TopPorta    = cPorta.trim();
            oCfgTop.TopUsu      = cUsu.trim();
            oCfgTop.TopSenha    = cSenha.trim();
            oCfgTop.TopDatabase = cDtbase.trim();
            try{
            	FileOutputStream oArqTop = new FileOutputStream( wArqTop+".Ini" );
            	ObjectOutputStream  obj_dados  = new ObjectOutputStream(oArqTop);
            	obj_dados.writeObject(oCfgTop); // NESSA LINHA DAH PROBLEMA.
            	obj_dados.flush();
            	lGravou = true;
                JOptionPane.showMessageDialog(null,"Arquivo "+wArqTop+".Ini Gravado !!!");
            }catch(Exception erro) {
                JOptionPane.showMessageDialog(null,"Problema ao gravar o Arquivo "+wArqTop+".Ini.");
            }
        }
		return lGravou;
	}
	
	public List jLerArqIni() {
		List aMatTmp = new ArrayList();
		
        String wArqTop = "TopConec";
        File oFileIni = new File( wArqTop+".Ini" );
        
        if ( oFileIni.exists() ) {
            try {
                FileInputStream oArqTop = new FileInputStream( wArqTop+".Ini" );
                ObjectInputStream  obj_dados  = new ObjectInputStream(oArqTop);
                VariavelTop oVarTop = (VariavelTop)obj_dados.readObject();
                aMatTmp.clear();
                aMatTmp.add( oVarTop.TopBanco.trim()    );
                aMatTmp.add( oVarTop.TopHst.trim()      );
                aMatTmp.add( oVarTop.TopDns.trim()      );
                aMatTmp.add( oVarTop.TopPorta.trim()    );
                aMatTmp.add( oVarTop.TopUsu.trim()      );
                aMatTmp.add( oVarTop.TopSenha.trim()    );
                aMatTmp.add( oVarTop.TopDatabase.trim() );
            }catch(Exception erro) {
                JOptionPane.showMessageDialog(null,"Problema ao ler o Arquivo "+wArqTop+".Ini.");
            }
        }else{ 
            JOptionPane.showMessageDialog(null,"Arquivo "+wArqTop+".Ini com Problema ou nao Existe.");
        }
        return aMatTmp;
	}
	
	class VariavelTop implements Serializable{
	    String TopBanco,TopHst,TopDns,TopPorta,TopUsu,TopSenha,TopDatabase;
	}

}

mas no flex esta dando erro nesta linha obj_dados.writeObject(oCfgTop);

se algum puder me ajudar onde esta o problema fico agradecido: MUITO OBRIGADO !!!

[]'s

3 Respostas

cesar.aso

O Externalize Strings do eclipse não funciona para isso?
Sempre uso, e têm funcionado perfeitamente…

G

cesar.aso:
O Externalize Strings do eclipse não funciona para isso?
Sempre uso, e têm funcionado perfeitamente…

Cesar…obrigado por responder…

mas, nao sei se nao entendi sua responsta, ou se nao me fiz entender no q eu preciso: fazer em execucao do site !

obrigado !

G

serah q o problema eh por estar sendo rodado em servidor ?

ou, talvez por ser flex + java + blazeds (q no java puro faz certo) ?

se alguem pouder ajudar, fico muuuuuuuiiiiiiiiiiiiiiiiiitooooooooooooooooo agradecido !!!

obrigado !!!

Criado 11 de outubro de 2010
Ultima resposta 12 de out. de 2010
Respostas 3
Participantes 2