0

私はJSFとHibernateに非常に慣れていません。いくつかのチュートリアルを見つけて、ほとんどすべてを理解しましたが、まだ理解していない非常に単純なものがあり、自分でそれを行う方法を理解できません。

1.This is my html page

 <h:panelGrid columns="2">
   <h:outputLabel value="Title:"/>
   <h:inputText value='#{Activity.title}' />
 </h:panelGrid>

2.This is my save method at activityController

public void saveActivity(String title){
    Session session = HibernateUtil.getSessionFactory().openSession();
    Transaction transaction = null;

    try {
        transaction = session.beginTransaction();
        Activity activity = new Activity(title);
        session.save(activity);
        transaction.commit();
    } catch (HibernateException e) {
        transaction.rollback();
    }finally{
        session.close();
    }
}

私の疑問は次のとおりです。HTML ページの OutputText でユーザーが入力したものを取得し、それを saveActivity メソッドに送信するにはどうすればよいですか?

4

1 に答える 1

2

フォームと送信ボタンが必要です。

<h:form>
<h:panelGrid columns="2">
   <h:outputLabel value="Title:"/>
   <h:inputText value='#{activityBean.title}' />
 </h:panelGrid>
<h:commandButton action="#{activityBean.saveActivity()}" value="Save" />
</h:form>

次に、アノテーション @SessionScoped @ManagedBean(name = "activityBean") を使用してコントローラーをマネージド Bean にするか、クラスを使用してコントローラーへの参照を与えます。

幸運を :)

于 2012-12-15T22:48:15.217 に答える