Ajuda com arquivo properties

Olá pessoal do guj, estou com um problema com esse tipo de arquivo, minha aplicação desktop tem um arquivo properties onde são armazenados o IP de um banco de dados MySQL junto com a PORTA/LOGIN/SENHA do Mysql para fazer a conexão do banco com o software. Até ai tudo bem, o problema é que quando complilo o projeto e gero o arquivo .jar, o método de escrever no arquivo properties não está funcionando mais!!!
executando o software no netbeans ele roda e escreve normalmente, mas o .jar não!

Meus métodos de manipulação do arquivo properties

public void getConfig(){
        InputStream fis = this.getClass().getResourceAsStream("conec.properties");
        Properties props = new Properties();
        try {
            props.load(fis);
            fis.close();
        } catch (IOException e) {
            System.out.println(e.getMessage());
            e.printStackTrace();
        }
        String IP = props.getProperty("ip.server");
        String PORTA = props.getProperty("port.server");
        String LOGIN = props.getProperty("login.server");
        String SENHA = props.getProperty("pass.server");
        this.ip=IP;
        this.porta = PORTA;
        this.login = LOGIN;
        this.senha = SENHA;
    }
    
    public void setConfig(String ip, String porta, String login, String senha){
        InputStream fis = this.getClass().getResourceAsStream("conec.properties");
        Properties props = new Properties();
        try {
            props.load(fis);
            fis.close();
        } catch (IOException e) {
            System.out.println(e.getMessage());
            e.printStackTrace();
        }
        props.setProperty("ip.server",ip);
        props.setProperty("port.server",porta);
        props.setProperty("login.server",login);
        props.setProperty("pass.server",senha);      
        
        try {
            props.store(new FileOutputStream("src/VD1/conec.properties"), "Configurações do arquivo conec.properties");
        } catch (IOException e) {
            System.out.println(e.getMessage());
            e.printStackTrace();
        }
    }

se puderem me ajudar eu agradeço!

Oi. Eu fiz uma aplicação desktop a pouco tempo, utilizando .properties e tive esse mesmo problema, a solução que eu encontrei foi de colocar o arquivo .properties na mesma pasta do .jar, ou seja, ele nao esta dentro do arquivo jar.

Creio que deve ter alguma outra solução, essa foi a unica que encontrei, alias, nem procurei outra solução. hehehe.

Att.

Mas se colocar o arquivo fora do .jar, como eu pego o caminho pra ler a escrever no arquivo?

mas se for colocar o arquivo fora do .jar, como eu pego o caminho dele pra escrever e ler?

cara de certo é problema do jeito que você está passando o caminho para buscar o arquivo

tenta

InputStream fis = this.getClass().getResourceAsStream("/conec.properties");  

eu tenho uma classe que você escolhe aonde vc quer buscar o arquivo está ai embaixo

[code]
private FileInputStream fis = null;

// stream para gravar arquivo
private FileOutputStream fos = null;

private File fFile = new File("config.properties");

// properties
private Properties props = new Properties();


// create a new file chooser
private JFileChooser fc = new JFileChooser(new File("."));

private FileFilter filefilter = new FileFilter();

/**
 * Carrega Arquivo de Configurações 
 * 
 */
public boolean loadConfig() {

	fc.setDialogTitle("Open File Configuration");

	// Choose only files, not directories
	fc.setFileSelectionMode(JFileChooser.FILES_ONLY);

	// Start in current directory
	fc.setCurrentDirectory(new File("."));

	// Set filter for Java source files.
	fc.setFileFilter(filefilter);

	// Now open chooser
	int result = fc.showOpenDialog(fc);
	if (result == JFileChooser.APPROVE_OPTION) {
		try {
			fFile = fc.getSelectedFile();
			fis = new FileInputStream(fFile);
			// carrega arquivo de configuracao
			props.load(fis);
			// fecha stream
			fis.close();			
			return true;
		} catch (FileNotFoundException e) {
			// TODO Auto-generated catch block
			JOptionPane.showMessageDialog(null, "file not Found"), "Erro", 1);
			e.printStackTrace();
			return false;
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
	return false;

}

//classe file filter

public class FileFilter extends javax.swing.filechooser.FileFilter{
/** Filter to work with JFileChooser to select properites configuration file types. **/

public boolean accept(File f) {
	   return f.getName ().toLowerCase ().endsWith (".properties")
          || f.isDirectory ();
	
}

public String getDescription() {
	// TODO Auto-generated method stub
	return "Configuration File (*.properties)";
}

}

ai lá na outra classe pra carregar os arquivos eu invoquei

if (settings.loadConfig()) {
//codigo 
}