Java 在jsf和jpa之间传递对象

Java 在jsf和jpa之间传递对象,java,jsp,jsf,jpa,Java,Jsp,Jsf,Jpa,我如何模仿这种行为 <h:selectOneMenu id="idMovie" value="#{comments.comments.idMovie}" title="IdMovie" required="true" requiredMessage="The idMovie field is required." > <f:selectItems value="#{movies.movieItemsAvailableSe

我如何模仿这种行为

             <h:selectOneMenu id="idMovie" value="#{comments.comments.idMovie}" title="IdMovie" required="true" requiredMessage="The idMovie field is required." >
                <f:selectItems value="#{movies.movieItemsAvailableSelectOne}"/>
            </h:selectOneMenu>

            <h:selectOneMenu id="idUser" value="#{comments.comments.idUser}" title="IdUser" required="true" requiredMessage="The idUser field is required." >
                <f:selectItems value="#{user.userItemsAvailableSelectOne}"/>
            </h:selectOneMenu>

以这样的方式

            <h:SOMETHING id="idMovie" ´valueToCommit´="#{comments.comments.idMovie}" ´valueToGet´="#{movies.movies}"/>


            <h:SOMETHING id="idUser" ´valueToCommit´="#{comments.comments.idUser}" ´valueToGet´="#{user.userSession.user}"/>

movies.movie具有我需要的当前对象 user.userSession.user也是如此,但我不知道如何将它们传递到comments.commment.idMovie(类型为Movie)以获得提交

提前谢谢

致意
ignacio

在commentController的构造函数中

    userController = (UserController) facesContext.getApplication().evaluateExpressionGet(facesContext, "#{user}", UserController.class);
    movieController = (MovieController) facesContext.getApplication().evaluateExpressionGet(facesContext, "#{movie}", MoviesController.class);
加(在声明中)


做了这个把戏

JS与这个问题有什么关系?还有,您是否在使用JSF2?您应该这样标记。刚刚编辑的问题抱歉,是的,JSF 2.0答案是什么?我的答案与Facelets有关。但毕竟您使用的是JSP而不是Facelets,尽管您使用的是JSF2.0。因此我删除了答案。如果两者都是
@ManagedBean
,那么
@ManagedProperty
比这个
evaluateExpressionGet()
更好。我不确定如何应用所述更改。
private MovieController movieController = null;
private Comment comment = null;
private UserController userController = null;
public String create() {
    try {
        utx.begin();
    } catch (Exception ex) {
    }
    try {
        Exception transactionException = null;
        comment.setUserId(userController.getUser());
        comment.setMovieId(movieController.getMovie());
        jpaController.create(comment); ...Default Facade class
        try {
            utx.commit();
        } catch (javax.transaction.RollbackException ex) {
            transactionException = ex;
        } catch (Exception ex) {
        }...
          ...