在一个View中使用JSF多个bean来获取db中的实体列表

时间:2013-11-15 19:40:22

标签: jsf jsf-2

好的,我和我的同事一直在讨论这个问题,而且我们无法确定我们所做的事情是否正常,请你明白这个观点,

<h:form id="UsuarioEditForm">
    <h:panelGroup id="display" styleClass="createPanelGrid">
        <p:panelGrid  columns="2">
            <p:outputLabel value="Nombre de Usuario: " for="nombreUsuario" />
            <p:inputText id="nombreUsuario" value="#{usuarioController.selected.nombreUsuario}" required="true" requiredMessage="Nombre requerido."/>
            <p:outputLabel value="Contraseña: " for="password" />
            <p:password id="password" value="#{usuarioController.selected.password}" required="true" requiredMessage="Contraseña requerida."/>
            <p:outputLabel value="Correo Electrónico: " for="email" />
            <p:inputText id="email" value="#{usuarioController.selected.email}" required="true" requiredMessage="Correo electrónico requerido."/>
            <p:outputLabel value="Tipo de Usuario: " for="tipoUsuario" />
            <h:selectOneMenu id="tipoUsuario" value="#{usuarioController.selected.tipoUsuario}" required="true" requiredMessage="Tipo de Usuario requerido." converter="#{tipoUsuarioConverter}">
                <f:selectItem itemLabel="Seleccionar..."/>
                <f:selectItems value="#{tipoUsuarioController.items}"
                 var="tipoUsuarioItem"  itemValue="#{tipoUsuarioItem}" itemLabel="#{tipoUsuarioItem.tipo}" />
            </h:selectOneMenu>
        </p:panelGrid>
        <p:separator></p:separator>
        <p:commandButton styleClass="ui-priority-primary" actionListener="#{usuarioController.save}" value="Guardar" update="display,:UsuarioListForm:datalist,:growl" oncomplete="handleSubmit(xhr,status,args,UsuarioEditDialog);"/>
        <p:commandButton value="Cancelar" type="button" onclick="UsuarioEditDialog.hide()"/>
    </h:panelGroup>
</h:form>

控制整个操作的主要托管bean称为usuarioController,这个bean执行插入Usuario实体的逻辑,但是,这个实体需要一个TipoUsuario实体来正确插入,所以我们有另一个名为tipoUsuarioController的bean获取TipoUsuario实体的列表并将其显示在selectOneMenu中,用户选择一个TipoUsuario,因此,问题很简单,只需调用bean即可执行获取TipoUsuario List?的操作,或者最好将List放在usuarioController bean中?哪种操作最适合应用程序性能?。

谢谢,

0 个答案:

没有答案