2.1.67. 画面表示パターン定義ウィジェット

画面表示パターン定義ウィジェット は同じ業務画面内で発生しうる、 複数の表示状態を設計情報として記述するための部品である。

本タグでは、以下の条件を指定することにより画面状態を記述できるようになっている。

  1. 表示する画面レイアウト(画面レイアウト定義用ウィジェット を参照)
  2. 入力画面/確認画面の切り替え
  3. <c:if> による条件分岐の切り替え

詳細は、以下コードサンプルを参照すること。

ちなみに

この部品はJSPのサーバ表示の内容には一切影響しないため、 実装工程以降も削除する必要はない。

2.1.67.1. コードサンプル

以下の例では 画面レイアウト定義用ウィジェット で定義された画面レイアウトの組み合わせを 画面の表示状態として定義している。

例1) 表示するレイアウトの組み合わせを定義(layout属性)

<spec:condition
  name="初期表示"
  layout="検索条件入力欄">
</spec:condition>
<spec:condition
  name="検索処理実行後"
  layout="検索条件入力欄|ユーザ情報検索結果">
</spec:condition>

//-----------------

<spec:layout name="検索条件入力欄">
 //検索条件入力欄の内容
</spec:layout>

<spec:layout name="ユーザ情報検索結果">
 //検索結果テーブルの内容
</spec:layout>

例2) 入力画面と確認画面をそれぞれ表示状態として定義(isConfirmationPage属性)

<spec:condition
  name="登録画面">
</spec:condition>

<spec:condition
  name="確認画面"
  isConfirmationPage="true">
</spec:condition>

例3) <c:if>の条件分岐にあわせて表示状態を定義(when属性)

<spec:condition
  name="確認画面:一般グループ選択時"
  isConfirmationPage="true"
  when="一般グループ選択時">
</spec:condition>

<spec:condition
  name="確認画面:お客様グループ選択時"
  isConfirmationPage='true'
  when="お客様グループ選択時">
</spec:condition>

//--------------

<c:if><spec:desc>一般グループ選択時</spec:desc>
  <button:submit
    label="メッセージ送信"
    uri="/action/ss11AC/W11AC02Action/RW11AC0205"
    allowDoubleSubmission="false"
    dummyUri="./W11AC0203.jsp">
  </button:submit>
</c:if>

2.1.67.2. 仕様

ローカル動作時の挙動
このタグの内容は、JSPプレビュー表示の内容には一切影響しないが、 設計書ビュー上の「画面レイアウト」欄に 本タグで定義した画面状態のプレビューを表示するリンクを出力する。 このリンクをクリックすることで、プレビュー画面がリロードされ、 本タグが定義する画面状態のプレビューを確認することができる。

属性値一覧 [ 必須属性 任意属性 × 無効(指定しても効果なし)]

名称 内容 タイプ サーバ ローカル 備考
name 画面状態名 文字列 ×  
layout 表示対象レイアウト 文字列 × この画面状態において表示される レイアウトの名称を ‘|’区切りで指定する。 (デフォルトでは 全てのレイアウトを表示)
when <c:if>条件切り替え 文字列 × この画面状態において true として評価される <c:if> を指定する。trueとしたい <c:if>直下の<spec:desc> の内容を’|’区切りで指定する。 (デフォルトでは<spec:desc> 直上の親要素の<c:if> は全てtrueとして評価する。)
isConfirmationPage 確認画面表示モード 真偽値 × 確認画面モードで表示する場合 はtrueとする。 デフォルトはfalse
comment 備考 文字列 ×  

2.1.67.3. 内部構造・改修時の留意点

サーバ表示で動作するタグファイル(condition.tag) は、JSPコンパイルを通すためだけの、 ほぼ中身のないダミーである。(属性のみの定義)

設計書ビューはテンプレートファイルである SpecSheetTemplate.xlsx と、 各項目の表示内容を制御する SpecSheetInterpreter.js によって構成される。

部品一覧

パス 内容
/WEB-INF/tags/widget/spec/condition.tag 画面レイアウト定義用ウィジェット のタグファイル
/js/jsp/taglib/spec.js ローカル表示用スタブ
/js/devtool/SpecSheetView.js 設計書ビューJavaScriptUI部品
/js/devtool/SpecSheetInterpreter.js 設計書ビュー表示内容制御スクリプト
/tools/specsheet_template/SpecSheetTemplate.xlsx 設計書ビューテンプレートファイル
/tools/specsheet_template/SpecSheetTemplate.files 設計書ビューテンプレートファイル (上記ファイルをHTML形式で保存したもの)