Alguém pode dar uma ajuda?
Seguinte, tenho um usuário que tem uma lista de rads. Depois de entrar em uma tela onde seleciono novas rads para o usuário, faço a adição das rads na lista de rads do usuário e salvo. Acontece que não salva e não aparece erro. Já tentei de tudo e nada.
Aí vai o método e os mapas:
[code]public void associarRads(Long idUsuario, IdsSelecionadosForm idsForm) throws ParseException {
Session session = SessionFactory.getInstance().openSession();
Transaction tx = session.beginTransaction();
Usuario usuario = (Usuario)session.get( Usuario.class, idUsuario );
for(int i = 0; i < idsForm.getIds().length; i++) {
Rad rad = (Rad) session.get(Rad.class,(Long)HttpToJava.convert(idsForm.getIds()[i], Long.class));
if(!usuario.getRads().contains(rad)) {
usuario.addRad(rad);
}
}
session.saveOrUpdate(usuario);
tx.commit();
session.flush();
session.close();
}[/code]
[code]<?xml version="1.0" encoding="UTF-8"?>
<hibernate-mapping
<class
name="tj.rj.emerj.controleAcesso.model.Usuario"
table="USUARIO"
lazy="false"
mutable="false"
>
<id
name="id"
column="ID_USUARIO"
type="long"
>
</id>
<property
name="nome"
column="NOME"
type="string"
not-null="true"
/>
<property
name="login"
column="LOGIN"
type="string"
not-null="true"
/>
<set name="papeis" table="USUARIO_PAPEL" lazy="true" inverse="true">
<key column="ID_USUARIO" />
<many-to-many class="tj.rj.emerj.controleAcesso.model.Papel" column="ID_PAPEL" />
</set>
<bag name="rads" table="USUARIO_RAD" lazy="false" cascade="all">
<key column="ID_USUARIO" />
<many-to-many class="tj.rj.emerj.controleAcesso.model.Rad" column="ID_RAD" />
</bag>
</class>
[/code]
[code]<?xml version="1.0" encoding="UTF-8"?>
<hibernate-mapping
<class
name="tj.rj.emerj.controleAcesso.model.Rad"
table="RAD"
lazy="false"
mutable="false"
>
<id
name="id"
column="ID_RAD"
type="long"
>
</id>
<property
name="nome"
column="NOME"
type="string"
not-null="true"
/>
</class>
[/code]
Uma ajuda please!!!