手順
1. サンプルDBを作成
2. DBをWAS v7のデータソースに登録
3. JPAプロジェクトを作成
4. EJBを作成(findメソッドのみ)
5. JSFを作成
6. EJBに挿入メソッドを作成する
7. JSFを作成(挿入)
8. EJBに更新メソッドを作成する
9. JSFを作成(更新)
(前回)
10. EJBに削除メソッドを作成する
11. JSFを作成(削除)
(今回はここまで)
12. 未定。テーブルの内容の一覧表示とか
後は似たようなものです。どんどん行きます。
10. EJBに削除メソッドを作成する
■MySampleSessionにロジックを追加します。
public void deleteMySample(int myid) throws MySampleException {
MySample target = this.findMySample(myid);
if (target == null) {
throw new MySampleException();
}
em.remove(target);
em.flush();
}
以上。UTCなどで動作確認することもできます。
11. JSFを作成(削除)
■MySampleBeanにロジックを追加します。
public void deleteMySample(int myid) throws MySampleException {
MySample target = this.findMySample(myid);
if (target == null) {
throw new MySampleException();
}
em.remove(target);
em.flush();
}
JSPは全てこれまでのものを流用します。
■success.jspに削除ボタンを追加します。
Found bean.<br>
id -> ${ mySampleBean.id } <h:inputHidden value="#{mySampleBean.id}"/>
value -> <h:inputText value="#{mySampleBean.value}"/>
<br>
<h:commandButton value="更新"
action="#{mySampleBean.updateValue}" />
<h:commandButton value="削除"
action="#{mySampleBean.deleteValue}" />
■faces-config.xmlを編集します(削除が成功したら検索画面に戻ります)。
<navigation-rule>
<from-view-id>success.jsp</from-view-id>
<navigation-case>
<from-outcome>failure</from-outcome>
<to-view-id>/WEB-INF/results/failure.jsp</to-view-id>
</navigation-case>
<navigation-case>
<from-outcome>success</from-outcome>
<to-view-id>/WEB-INF/results/success3.jsp</to-view-id>
</navigation-case>
<navigation-case>
<from-outcome>del_failure</from-outcome>
<to-view-id>/WEB-INF/results/failure.jsp</to-view-id>
</navigation-case>
<navigation-case>
<from-outcome>del_success</from-outcome>
<to-view-id>/search.jsp</to-view-id>
</navigation-case>
</navigation-rule>
以上。
.
0 件のコメント:
コメントを投稿