pessoal, estou com uma duvida, e sei que é simples.
estou passando um parametro para uma query e minha duvida é como eu pego o um construtor de outra classe.
por exmplo:
meu metodo list:
public class PermissaoEmpresa {
public List<SelectItem> getEmpresas() {
List<Empresa> listaEmpresas = PermissaoEmpresaDAO
.ListaPermissaoEmpresa(parametro id_usuario);
List<SelectItem> listaSelect = new ArrayList<SelectItem>();
for (Empresa e : listaEmpresas) {
listaSelect.add(new SelectItem(new String(e.getNM_FANTASIA())));
}
return listaSelect;
}
private Empresa empresa = new Empresa();
private List<Empresa> listaEmpresas = PermissaoEmpresaDAO
.ListaPermissaoEmpresa(parametro id_usuario);
public Empresa getEmpresa() {
return empresa;
}
public void setEmpresa(Empresa empresa) {
this.empresa = empresa;
}
public List<Empresa> getListaEmpresas() {
return listaEmpresas;
}
public void setListaEmpresas(List<Empresa> listaEmpresas) {
this.listaEmpresas = listaEmpresas;
}
}
meu loginBean:
public class LoginManager {
private BigDecimal id_usuario;
private String nm_usuario;
private String senha_usuario;
private String msg_erro;
private boolean logado = false;
//get and set
public String login() {
try {
Usuario usuario;
String senha_cript;
usuario = UsuarioDAO.getUsuario(this.nm_usuario.toUpperCase());
this.id_usuario = usuario.getID_USUARIO();
if (usuario == null) {
this.msg_erro = "Usuario não existe";
return "LoginManager.ERRO";
}
senha_cript = Criptografia.criptografar(this.senha_usuario
.toUpperCase());
if (!senha_cript.equals(usuario.getSENHA_USUARIO_MD5())) {
this.msg_erro = "Senha errada";
return "LoginManager.ERRO";
}
this.logado = true;
return "LoginManager.MENU_PRINCIPAL";
} catch (Exception e) {
this.logado = false;
this.msg_erro = "Erro Não cadastrado - " + e.getMessage();
return "LoginManager.ERRO";
}
}
}
quero passar o parametro id_usuario, que esta em meu bean de login, para a lista.
e por final o meu dao:
public static List<Empresa> ListaPermissaoEmpresa(BigDecimal id_usuario) {
Session s = HibernateUtil.getSession();
String sqlPermissao = "SELECT DISTINCT "
+ " CTRL_EMPRESA.ID_EMPRESA,"
+ " CTRL_EMPRESA.NM_FANTASIA, "
+ " CTRL_EMPRESA.CNPJ_EMPRESA "
+ " FROM CTRL_EMPRESA,"
+ " CTRL_PERMISSAO,"
+ " CTRL_USUARIO_GRUPO"
+ " WHERE CTRL_EMPRESA.ID_EMPRESA = CTRL_PERMISSAO.ID_EMPRESA"
+ " AND CTRL_PERMISSAO.ID_GRUPO_USUARIO = CTRL_USUARIO_GRUPO.ID_GRUPO_USUARIO"
+ " AND CTRL_USUARIO_GRUPO.ID_USUARIO = :ID_USUARIO "
+ " ORDER BY CTRL_EMPRESA.ID_EMPRESA ";
SQLQuery qryPermissao = s.createSQLQuery(sqlPermissao);
qryPermissao.setResultTransformer(Transformers
.aliasToBean(Empresa.class));
qryPermissao.setParameter("ID_USUARIO", id_usuario);
return qryPermissao.list();
}
}
obigado pessoal e até mais.