Javaプログラミング/Javaプログラミング関連情報

JSPと管理Beanの基本を覚える(3ページ目)

JSFの基本は、表示用JSPと管理Beanです。この2つの使い方をしっかり覚えていきましょう。

執筆者:掌田 津耶乃

管理Beanクラスの作成


続いて、管理Beanクラスを作成しましょう。ここでは、「Page1Bean.java」というソースコードファイルに記述をします。

package jp.allabout;

import javax.faces.component.html.*;

public class Page1Bean {
  private HtmlOutputText text1;
  private HtmlInputText field1;
  private HtmlCommandButton button1;
  
  public HtmlOutputText getText1() {
    return text1;
  }
  public void setText1(HtmlOutputText text1) {
    this.text1 = text1;
  }
  public HtmlInputText getField1() {
    return field1;
  }
  public void setField1(HtmlInputText field1) {
    this.field1 = field1;
  }
  public HtmlCommandButton getButton1() {
    return button1;
  }
  public void setButton1(HtmlCommandButton button1) {
    this.button1 = button1;
  }
  
  public String button1_action(){
    text1.setValue("こんにちは、" + field1.getValue() + "さん!");
    return null;
  }
}

見ればわかるように、管理Beanクラスは、何の変哲もないObject継承クラスです。サーブレットのように、特別に用意されているクラスを継承して作ったりするわけではありません。

ここでは、JSPに用意されているタグに関連付けされるフィールドが3つ用意されています。それぞれ、HtmlOutputText、HtmlInputText、HtmlCommandButtonというクラスのフィールドになっていますね。これらが、それぞれ<h:outputText>、<h:inputText>、<h:commandButton>タグにbindingで関連付けられるフィールドになります。関連付けは、このようにそれぞれのタグに対応する専用のクラスを使ってフィールドを用意します。

それぞれのフィールドには、そのフィールドにアクセスするためのアクセサ(Setter/Getter)メソッドが用意されています。これがないと値を読み書きできないので注意しましょう。

アクセサ以外に、もう1つメソッドがありますね。button1_actionというメソッドです。これは、<h:commandButton>タグのactionに関連付けたメソッドです。ここでは、field1の「getValue」というもので関連付けられたタグのvalue値を取り出し、それを利用してtexgt1の「setValue」で関連付けられたタグのvalueに値を設定しています。関連付けの基本は、このgetValue/setValueメソッドで、関連付けたタグのvalue値を読み書きする、というものになるでしょう。とりあえずこれだけで、送信された値を取り出して表示する、といったことが行えるようになります。
  • 前のページへ
  • 1
  • 2
  • 3
  • 4
  • 次のページへ

あわせて読みたい

あなたにオススメ

    表示について

    カテゴリー一覧

    All Aboutサービス・メディア

    All About公式SNS
    日々の生活や仕事を楽しむための情報を毎日お届けします。
    公式SNS一覧
    © All About, Inc. All rights reserved. 掲載の記事・写真・イラストなど、すべてのコンテンツの無断複写・転載・公衆送信等を禁じます