Bom dia pessoal.
Estou trabalhando com java server faces e me surgiu uma terrível duvida que esta me fazendo cair em contradição e me deixando meio confuso.
Em uma aplicação eu tenho um cadastro de usuarios onde eu seleciono em um combobox a empresa na qual este usuario esta trabalhando, e no momento em que eu faço esta seleção eu estou fazendo uma referencia a um objeto que esta sendo usado na camada “view” e faço um bindig direto para eleentão:
UsuarioHandler:
protected HtmlSelectOneMenu empresaSelecionada;
public HtmlSelectOneMenu getEmpresaSelecionada() {
return empresaSelecionada;
}
public void setEmpresaSelecionada(HtmlSelectOneMenu empresaSelecionada) {
this.empresaSelecionada = empresaSelecionada;
}
e no cadastroDeUsuarios.jsp:
<h:outputText value="Empresa"/>
<h:selectOneMenu binding="#{UsuarioHandler.empresaSelecionada}">
<f:selectItems value="#{UsuarioHandler.empresasParaComboBox}"/>
</h:selectOneMenu>
Pego o valor do combobox desta maneira:
int empresaEscolhida = Integer.parseInt(usuarioHandler.empresaSelecionada.getValue().toString());
Empresa emp = empresaHandler.getDaoListaDeEmpresas().get(empresaEscolhida-1);
Tudo esta funcionando, eu seleciono uma empresa e qdo eu aciono o botão que faz o cadastro do usuario ele pega o id da empresa e pronto, manda as informações para o banco de dados, um processo normal.
Oque me deixa confuso é o seguinte.
Se eu tenho uma classe resposavel por representar um usuario e suas ações, seria correto eu chamar a referencia para a empresa de uma classe que representasse a empresa e não usuario certo?
Estou tendo dificuldades para resolver esta situação.
Alguem poderia me dar uma ajuda por favor?
