JSFによるWebアプリケーション開発 第10回

Slides:



Advertisements
Similar presentations
年度 J2EE II 稚内北星学園大学 情報メディア学部 専任講師 安藤 友晴. 2 この講義の位置づけ 3年前期の「データベース論 (J2EE I) 」に続く講義。 「データベース論」の講義内容を理解 していることが前提。
Advertisements

1 JSP の作成 JSF による Web アプリケーション 開発 第 4 回. 2 ここでの内容 JSF での JSP の作り方と動かし方につい て学ぶ。
7-1.WEKOコンテンツ 一括登録 マニュアル Version2.5
2004年度 サマースクール in 稚内 JSFによるWebアプリケーション開発
バリデータ J2EE II 第11回 / 2006年1月19日.
Struts1.xの脆弱性(CVE ) に対するSDEの対処:推奨タイプ (サンプルソースコードの公開)
Androidアプリを公開する方法.
コントロールパネル ◎コントロール パネル: コンピュータのさまざまな機能を設定するための画面
JSFによるWebアプリケーション開発 第9回
エンタープライズアプリケーション II 第10回 / 2006年7月23日
コンポーネントの再利用に必要な情報 えムナウ (児玉宏之)
コンポーネントの再利用に必要な情報 えムナウ (児玉宏之)
JSFによるWebアプリケーション開発 第11回
実行時のメモリ構造(1) Jasminの基礎とフレーム内動作
システムプログラミング 第5回 情報工学科 篠埜 功 ヒアドキュメント レポート課題 main関数の引数 usageメッセージ
岩村雅一 知能情報工学演習I 第9回(C言語第3回) 岩村雅一
SQL J2EE I 第3回 /
独習Java ・ 10.6  Hashtableクラス ・ 10.7  String Tokenizerクラス  12月12日    小笠原 一恵.
第5回授業(5/08) の目標 第1章のウェブ上での宿題のやり方の続き(ここまでで、終了)。
稚内北星学園大学 情報メディア学部 助教授 安藤 友晴
タグライブラリ ソフトウェア特論 第6回.
タグライブラリとJSP J2EE II 第2回 2004年10月7日 (木).
JavaBeans とJSP データベース論 第5回.
JSFによるWebアプリケーション開発 第6回
エンタープライズアプリケーション II 第7回 / 2006年7月9日
JSPの作成 J2EE II 第3回 2005年4月10日.
プログラミング 平成24年10月30日 森田 彦.
Javaによる Webアプリケーション入門 第5回
情報工学科 3年生対象 専門科目 システムプログラミング 第5回、第6回 ヒアドキュメント レポート課題 情報工学科 篠埜 功.
第12回 2007年7月13日 応用Java (Java/XML).
プログラミング 平成25年11月5日 森田 彦.
第2回.リレーショナルデータベース入門 SQL を用いたテーブルへの行の挿入 SQL 問い合わせの発行と評価結果の確認.
第2回.リレーショナルデータベース入門 SQL を用いたテーブルへの行の挿入 SQL 問い合わせの発行と評価結果の確認.
第二回 VB講座 電卓を作ろう.
2006年度 東京サテライト校 エンタープライズ・アプリケーション II
Javaによる Webアプリケーション入門 第6回
岩村雅一 知能情報工学演習I 第9回(後半第3回) 岩村雅一
ソフトウェア制作論 平成30年10月3日.
Javaによる Webアプリケーション入門 第2回
独習XML ~第3章 文書と構造~ 3.3 スキーマ 3.3 XML Schema
エンタープライズアプリケーション II 第9回 / 2006年7月23日
第1章 実世界のモデル化と形式化 3.地物インスタンスの表現
Javaによる Webアプリケーション入門 第11回
岩村雅一 知能情報工学演習I 第9回(C言語第3回) 岩村雅一
XML Schema (1) ソフトウェア特論 第3回 /
JSFによるWebアプリケーション開発 第3回
プログラミングⅠ 平成30年10月22日 森田 彦.
岩村雅一 知能情報工学演習I 第9回(後半第3回) 岩村雅一
15.1 文字列処理の基本 15.2 文字列処理用ライブラリ関数
第6回レポート解説 条件1 条件2 条件3 月の入力 月、日、曜日の表示 日の入力 曜日の入力
Webアプリケーションと JSPの基本 ソフトウェア特論 第4回.
情報基礎演習I(プログラミング) 6月8日 水曜5限 江草由佳
Javaによる Webアプリケーション入門 第4回
Webページに動きを持たせるJavascript言語について 例題のプログラムを通して体験的に理解することとします。
WebアプリケーションとTomcat ― これまでの復習とこれからの予習 ―
Action Method の実装 J2EE II 第9回 2004年12月2日.
Jakarta Struts (1) ソフトウェア特論 第10回.
稚内北星学園大学 情報メディア学部 専任講師 安藤 友晴
JSPの基本 J2EE I (データベース論) 第8回 /
JSFによるWebアプリケーション開発 第5回
プログラミング 4 文字列.
第2回.リレーショナルデータベース入門 SQL を用いたテーブルへの行の挿入 SQL 問い合わせの発行と評価結果の確認.
プログラミング 平成28年10月25日 森田 彦.
JSFによるWebアプリケーション開発 第7回
JavaScript    プログラミング入門 2-3 式と演算子 2006/10/12 神津 健太.
printf・scanf・変数・四則演算
MVCモデル2による Webアプリケーション
岩村雅一 知能情報工学演習I 第7回(後半第1回) 岩村雅一
計算機プログラミングI 第5回 2002年11月7日(木) 配列: 沢山のデータをまとめたデータ どんなものか どうやって使うのか
岩村雅一 知能情報工学演習I 第9回(C言語第3回) 岩村雅一
Presentation transcript:

JSFによるWebアプリケーション開発 第10回 コンバータ・バリデータ JSFによるWebアプリケーション開発 第10回

ここでの内容 コンバータ・バリデータの手法について学ぶ。

コンバータ

コンバータとは何か h:inputText 要素のようなテキスト入力フィールドには、基本的には String 型のデータが入る。 コンバータとは、テキスト入力フィールドと Managed Beanのプロパティ間でデータ変換を行うもの。 例えば、Integer や Date 型に変換 Integer や Date 型のオブジェクトの値を、h:outputText などで出力

Managed Bean // number プロパティは Integer 型 public Integer getNumber() { return number; } // date プロパティは Data 型 public Date getDate() { return date;

このサンプルの出力例

number プロパティと UIコンポーネントとの対応 (1) <h:inputText id="number1" converter="javax.faces.Integer" value="#{ParameterBean.number}“ /> <h:outputText id="number2" value="#{ParameterBean.number}" />

number プロパティと UIコンポーネントとの対応 (2) converter="javax.faces.Integer“ value="#{ParameterBean.number}“ 入力されたデータを、Integer 型に変換するコンバータを指定する。 データは、ParameterBean の number プロパティに保存する。

JSF標準のコンバータ BigDecimalConverter BigIntegerConverter BooleanConverter ByteConverter CharacterConverter DateTimeConverter DoubleConverter FloatConverter IntegerConverter LongConverter NumberConverter ShortConverter

次のコンバータは 記述を省略できる BooleanConverter ByteConverter CharacterConverter DoubleConverter FloatConverter IntegerConverter LongConverter ShortConverter

number プロパティと UIコンポーネントとの対応 (3) <h:inputText id="number1" value="#{ParameterBean.number}“ /> converter属性は省略できる。

date プロパティと UIコンポーネントとの対応 (1) 日付を入力してください (例 04/08/09): <h:inputText id="date1" value="#{ParameterBean.date}"> <f:convertDateTime dateStyle="short" /> </h:inputText>

date プロパティと UIコンポーネントとの対応 (2) <h:outputText id="date2" value="#{ParameterBean.date}"> <f:convertDateTime dateStyle="full" /> </h:outputText> 「2004年8月9日 (月曜日)」というように表示される。

出力例

カスタム・コンバータ コンバータは、自分で作成することもできる。

バリデータ

バリデータとは何か 入力されたデータが、そのアプリケーションに適合するものかどうかチェックする機能。例えば・・・ ここは必須項目なので、必ず入力しなければならない。 ここには、1~10までの数が入る 適合しなかった場合は、エラーメッセージを表示できる。

バリデータに適合する場合の 出力例

バリデータに適合しない場合の 出力例

JSF標準のバリデータ DoubleRangeValidator LengthValidator LongRangeValidator

必須項目のチェック お名前を入力してください(必須): <h:inputText id="name1" required="true" value="#{ParameterBean.name}" /> データが入力されていないとエラーになる。

h:message 要素 <h:inputText id="name1" required="true" value="#{ParameterBean.name}" /> <h:message for="name1" /> エラーメッセージを表示するUIコンポーネント for 属性で指定した UIコンポーネントに関するエラーメッセージを表示する。

文字列の長さのチェック (1) 電話番号を入力してください(10文字以上): <h:inputText id="tel1“ value= "#{ParameterBean.telephoneNumber}"> <f:validateLength minimum="10" /> </h:inputText> <h:message for="tel1" />

文字列の長さのチェック (2) <f:validateLength minimum="10" /> 文字列の長さをチェックするバリデータ 最小でも10文字は必要になる。 ほかに、maximum 属性もある。最大で何文字までかチェックする

数の範囲のチェック (1) 品物の数を入力してください(1~10): <h:inputText id="quantity1" value="#{ParameterBean.quantity}"> <f:validateLongRange minimum="1" maximum="10"/> </h:inputText> <h:message for="quantity1" />

数の範囲のチェック (2) <f:validateLongRange minimum="1" maximum="10"/> 整数の数の範囲をチェックする。 1 ~ 10 までの範囲となる。それ以外だとエラーになる。

バリデータに適合する場合の 出力例

バリデータに適合しない場合の 出力例

カスタム・バリデータ バリデータは、自分で作成することもできる。