Recuperar Id do rms com floggy

Olá Pessoal…

É o seginte…

Tenho uma lista ordenada por nome onde eu consigo pegar o id deles na lista.

Mas eu quero pegar o id que está no rms e não o id da lista.

PersistableManager pm = PersistableManager.getInstance();
Usuarios usu = new Usuarios();
try {
pm.load(usu, lstUsuarios.getSelectedIndex()); //Aqui estou usando o id da lista e não estou conseguindo excluir o registro correto.
pm.delete(usu);
lstUsuariosAction();
} catch (FloggyException ex) {
ex.printStackTrace();
}
gerenciarUsuarios();

Por exemplo: Quero apagar o usuário “José” do meu rms, como eu consigo pegar o id dele no rms?

Assim:

pm.load(usu, ???));

Se alguém me ajudar… Agradeço!!

Bom dia Cristovan,

Você tem duas opções:

  1. quando você carregar os objetos para mostrar na sua tela você deve também criar uma lista com os ids do RMS dos objetos persistable.

  2. ou você pode utlizar a nova interface IDable da versão 1.3.0-SNAPSHOT do projeto.

Um abraço

Thiago Moreira

[quote=tmoreira2020]
Bom dia Cristovan,

Você tem duas opções:

  1. quando você carregar os objetos para mostrar na sua tela você deve também criar uma lista com os ids do RMS dos objetos persistable.

  2. ou você pode utlizar a nova interface IDable da versão 1.3.0-SNAPSHOT do projeto.

Um abraço

Thiago Moreira[/quote]

Desculpe, mas não sei como criar essa lista!!! … :oops:
e o que seria esse IDable?
Vlww!

Para criar a lista:

ObjectSet os = …
java.util.Vector ids = new java.util.Vector();
for (int i = 0; i < os.size(); i++) {
ids.addElement(new Integer(os.getId(i)))
Persistable p = (Persistable) os.get(i);
}

Para usar a a interface IDable:

public YourClass implements Persistable, IDable {

protected int id;

public void setId(int id) {
   this.id = id;
}

}

Depois de salvo o atributo YourClass.id conterá o valor do RMS id.

Um abraço

[quote=tmoreira2020]
Para criar a lista:

ObjectSet os = …
java.util.Vector ids = new java.util.Vector();
for (int i = 0; i < os.size(); i++) {
ids.addElement(new Integer(os.getId(i)))
Persistable p = (Persistable) os.get(i);
}

Para usar a a interface IDable:

public YourClass implements Persistable, IDable {

protected int id;

public void setId(int id) {
   this.id = id;
}

}

Depois de salvo o atributo YourClass.id conterá o valor do RMS id.

Um abraço[/quote]

Obrigado mesmo tmoreira2020, vc me ajudou muito!!
Abraço!

Vlws, mto bom…descomplicou minha vida =D

pessoal, eu não entendi mto bem como utilizar esse IDable. Vocês podem me dar uma força?

Eu fiz o seguinte:

criei essa classe

[code]package hello;

import net.sourceforge.floggy.persistence.Persistable;
import net.sourceforge.floggy.persistence.IDable;

public class ClasseID implements Persistable, IDable
{
protected int id;
public void setId(int id)
{
this.id = id;
}
}[/code]

depois fui carregar meu registro pelo id chamando assim:

... pm.load(p,ClasseID.id); ...

mas da esse erro:
non-static variable id cannot be referenced from a static context