org.opengion.hayabusa.taglib
クラス TopMenuTag
java.lang.Object
javax.servlet.jsp.tagext.TagSupport
javax.servlet.jsp.tagext.BodyTagSupport
org.opengion.hayabusa.taglib.CommonTagSupport
org.opengion.hayabusa.taglib.TopMenuTag
- すべての実装されたインタフェース:
- java.io.Serializable, javax.servlet.jsp.tagext.BodyTag, javax.servlet.jsp.tagext.IterationTag, javax.servlet.jsp.tagext.JspTag, javax.servlet.jsp.tagext.Tag, javax.servlet.jsp.tagext.TryCatchFinally
public class TopMenuTag
- extends CommonTagSupport
画面アクセスメニューを作成します。
画面リソースの階層番号(レベル)は、
0:グループ分類メニュー(class="GUI_GRP"のtdタグで囲われます)
1:トップ階層(【分類名称】)
2:選択階層(通常の折りたたみメニュー)
3:選択非表示(通常は、隠してあります)
です。
お気に入りメニューを登録するキーワードに、HybsSystem.GUI_FAV_MENU_KEY を使用しています。
これは、エンジン内部で使用しているキーワードです。
- 関連項目:
- 直列化された形式
- 機能階層
- メニュー制御
- 形式サンプル:
●形式:<og:topMenu />
●body:なし
●使用例
<og:topMenu />
<og:topMenu
menuType = "NORMAL" NORMAL:通常 / GROUP:グループメニュー / ONELEVEL:1レベル / MATRIX:一覧表メニュー / MATRIX2:一覧表メニュー(大分類なし版)
expand = "true" true:折り返しメニュー / false:階層メニュー
groups = "AA,BB,CC" 表示対象となるグループをカンマ区切り文字列で指定します。
classify = "ABC" 表示対象となる分類を指定します。
href = "menu.jsp" グループメニューの対象ソース名(href)を指定します。
target = "MENU" グループメニューの対象フレーム名(target)を指定します。
imageOnly = "false" グループメニューに、 true:画像のみ / false:画像+ラベル を指定します。
sideCount = "1" グループメニューの表示対象となるメニューを横並びさせる数を指定します。
minCellCount = "8" 表形式メニューの1セルの最小行数を指定します。
maxCellCount = "8" 表形式メニューの1セルの最大行数を指定します。
cache = "true" グループメニューのキャッシュを使用するかどうか指定します。
match = "正規表現" 正判定(マッチする場合に、メニューに出す)条件を設定します。
unmatch = "正規表現" 逆判定(マッチする場合に、メニューに出さない)条件を設定します。
useButton = "false" ボタン形式のリンクを使用するかを指定します。
useButtonScript = "false" ボタンのイベントによるJavaScriptを起動するかを指定します。
/>
- 変更履歴:
3.5.5.3 (2004/04/09) 新規作成 |
- バージョン
- 4.0
- 作成者
- Kohei Naruse
- 導入されたバージョン:
- JDK5.0,
クラス javax.servlet.jsp.tagext.BodyTagSupport から継承されたフィールド |
bodyContent |
クラス javax.servlet.jsp.tagext.TagSupport から継承されたフィールド |
id, pageContext |
インタフェース javax.servlet.jsp.tagext.BodyTag から継承されたフィールド |
EVAL_BODY_BUFFERED, EVAL_BODY_TAG |
インタフェース javax.servlet.jsp.tagext.IterationTag から継承されたフィールド |
EVAL_BODY_AGAIN |
インタフェース javax.servlet.jsp.tagext.Tag から継承されたフィールド |
EVAL_BODY_INCLUDE, EVAL_PAGE, SKIP_BODY, SKIP_PAGE |
メソッドの概要 |
int |
doEndTag()
Taglibの終了タグが見つかったときに処理する doEndTag() を オーバーライドします。 |
protected void |
release2()
タグリブオブジェクトをリリースします。 |
void |
setButtonRequest(java.lang.String flag)
【TAG】マトリクスからの遷移先でボタンメニュー表示するのか(初期値:false)。 |
void |
setCache(java.lang.String flag)
【TAG】グループメニューのキャッシュを使用するかどうか指定します(初期値:true)。 |
void |
setClassify(java.lang.String classify)
【TAG】表示対象となる分類(classify)を指定します。 |
void |
setExpand(java.lang.String flag)
【TAG】折り返しメニューを構築するかどうかを指定します(初期値:true)。 |
void |
setGroups(java.lang.String menuGroups)
【TAG】表示対象となるグループをカンマ区切り文字列で指定します。 |
void |
setHref(java.lang.String inHref)
【TAG】グループメニューの表示対象となるソース名(href)を指定します(初期値:menu.jsp)。 |
void |
setImageOnly(java.lang.String flag)
【TAG】グループメニューの表示に、画像のみか、画像+ラベルを指定します(初期値:false)。 |
void |
setInlineStyle(java.lang.String flag)
【TAG】標準画面を初期状態で表示するか(初期値:false)。 |
void |
setMatch(java.lang.String mt)
【TAG】正判定(マッチする場合に、メニューに出す)条件を設定します。 |
void |
setMaxCellCount(java.lang.String count)
【TAG】表形式メニュー(MATRIX)の一つのセルに含まれる最大行数を指定します(初期値:8)。 |
void |
setMenuType(java.lang.String type)
【TAG】作成するメニューの種類(NORMAL,GROUP,ONELEVEL,MATRIX,MATRIX2)を指定します(初期値:NORMAL)。 |
void |
setMinCellCount(java.lang.String count)
【TAG】表形式メニュー(MATRIX)の一つのセルに含まれる最小行数を指定します(初期値:8)。 |
void |
setSideCount(java.lang.String count)
【TAG】グループメニューの表示対象となるメニューを横並びさせる数を指定します(初期値:1)。 |
void |
setTarget(java.lang.String inTarget)
【TAG】グループメニューの表示対象となるフレーム名(target)を指定します(初期値:MENU)。 |
void |
setUnmatch(java.lang.String umt)
【TAG】逆判定(マッチする場合に、メニューに出さない)条件を設定します。 |
void |
setUseButton(java.lang.String flag)
【TAG】画面リンクにボタンを使用するかを指定します。 |
void |
setUseButtonScript(java.lang.String flag)
【TAG】(廃止)ボタンリンクを使用した場合に、JavaScriptのイベントを発生させるかを指定します。 |
java.lang.String |
toString()
このオブジェクトの文字列表現を返します。 |
クラス org.opengion.hayabusa.taglib.CommonTagSupport から継承されたメソッド |
add, add, addEventColumn, addEventColumn, check, check, commitTableObject, debugPrint, doAfterBody, doCatch, doFinally, doStartTag, get, getApplicationInfo, getAttributes, getBodyRawString, getBodyString, getContextAttribute, getContextPath, getCookie, getCSVParameter, getDataCondition, getDateFormat, getDBColumn, getDBFunctionName, getDocumentLink, getGUIInfo, getGUIInfoAttri, getLabel, getLabelInterface, getLanguage, getLongLabel, getMsglbl, getObject, getParameterNames, getParameterRows, getRequest, getRequestAttribute, getRequestCacheData, getRequestParameter, getRequestParameterValues, getRequestValue, getRequestValue, getRequestValues, getResource, getSanitizedBodyString, getScope, getSessionAttribute, getTagName, getUser, getUserInfo, isAjaxSubmitRequest, isDebug, isNoTransitionRequest, isNull, jspPrint, removeContextAttribute, removeObject, removeRequestAttribute, removeSessionAttribute, set, setAjaxSubmitRequest, setContextAttribute, setCookie, setDebug, setLanguage, setLbl, setMsglbl, setNoTransitionRequest, setObject, setParameterRows, setRequestAttribute, setRequestCacheData, setScope, setSessionAttribute, setUserInfo, startQueryTransaction, sys, sysBool, sysInt, useMainTrans, useQuotCheck, useXssCheck |
クラス javax.servlet.jsp.tagext.BodyTagSupport から継承されたメソッド |
doInitBody, getBodyContent, getPreviousOut, release, setBodyContent |
クラス javax.servlet.jsp.tagext.TagSupport から継承されたメソッド |
findAncestorWithClass, getId, getParent, getValue, getValues, removeValue, setId, setPageContext, setParent, setValue |
クラス java.lang.Object から継承されたメソッド |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
インタフェース javax.servlet.jsp.tagext.Tag から継承されたメソッド |
getParent, setPageContext, setParent |
TopMenuTag
public TopMenuTag()
doEndTag
public int doEndTag()
- Taglibの終了タグが見つかったときに処理する doEndTag() を オーバーライドします。
- 定義:
- インタフェース
javax.servlet.jsp.tagext.Tag
内の doEndTag
- オーバーライド:
- クラス
CommonTagSupport
内の doEndTag
- 戻り値:
- int
- 変更履歴:
4.0.0.0 (2007/10/31) 1レベルメニューの見直し |
4.2.1.0 (2008/04/01) マトリクスメニュー2追加 |
release2
protected void release2()
- タグリブオブジェクトをリリースします。
キャッシュされて再利用されるので、フィールドの初期設定を行います。
- オーバーライド:
- クラス
CommonTagSupport
内の release2
setMenuType
public void setMenuType(java.lang.String type)
- 【TAG】作成するメニューの種類(NORMAL,GROUP,ONELEVEL,MATRIX,MATRIX2)を指定します(初期値:NORMAL)。
- パラメータ:
type
- メニューの種類(NORMAL,GROUP,ONELEVEL,MATRIX,MATRIX2)- TagLib:
作成するメニューには、複数の種類があります。
種類 | 説明 |
NORMAL | 通常の階層メニュー |
GROUP | GROUPのみを取り出してリンクを作成します。(topMenuに利用) |
ONELEVEL | 指定のclassify のメニューのみを取り出してリンクを作成します。(lineMenuに利用) |
MATRIX | 一覧表形式のメニューを作成します。 |
|
- 変更履歴:
setExpand
public void setExpand(java.lang.String flag)
- 【TAG】折り返しメニューを構築するかどうかを指定します(初期値:true)。
- パラメータ:
flag
- 折り返しメニューかどうか- TagLib:
trueを設定すると、JavaScriptによる折り返しメニューを構築します。
false の場合は、通常のHTMLのみで、階層メニューを構築します。
初期値は、true(折り返しメニュー)です。 |
- 変更履歴:
setGroups
public void setGroups(java.lang.String menuGroups)
- 【TAG】表示対象となるグループをカンマ区切り文字列で指定します。
- パラメータ:
menuGroups
- 表示対象となるグループ(カンマ区切り文字列)- TagLib:
メニューの表示対象グループをカンマ区切り文字列で複数指定できます。
指定のグループのメニューだけが、表示対象になります。
メニューにも、複数のグループを指定できるため、1グループの指定で、
複数のくくりを表示することも可能です。
グループを指定しない場合は、全グループが対象になります。
また、メニュー側にグループ指定がない場合は、グループ指定に
関係なく、対象になります。
初期値は、未指定(全メニューが対象)です。
分解方法は、通常のパラメータ取得後に、CSV分解します。 |
- 変更履歴:
setClassify
public void setClassify(java.lang.String classify)
- 【TAG】表示対象となる分類(classify)を指定します。
- パラメータ:
classify
- 表示対象となる分類(classify)- TagLib:
メニューの表示対象となる分類(classify)を指定することで、一まとまりの
メニューを作成します。これは、3段階メニューの最終メニューを求める場合に
指定します。
最終メニューは、画面上部に設ける予定のメニューで、上下フレーム分割での
運用時に使用します。
分類の指定がない場合は、すべてが表示対象になります。
初期値は、未指定(全メニューが対象)です。 |
- 変更履歴:
setHref
public void setHref(java.lang.String inHref)
- 【TAG】グループメニューの表示対象となるソース名(href)を指定します(初期値:menu.jsp)。
- パラメータ:
inHref
- 表示対象となるソース名(href)- TagLib:
GROUPメニューの表示対象となるソース名(href)を指定することで、
サブメニューを自分自身のフレームに対して割り当てるのか、フレームを分けて
管理するのかを自由に設定できます。
初期値は、menu.jspです。 |
- 変更履歴:
setTarget
public void setTarget(java.lang.String inTarget)
- 【TAG】グループメニューの表示対象となるフレーム名(target)を指定します(初期値:MENU)。
- パラメータ:
inTarget
- 表示対象となるフレーム名(target)- TagLib:
GROUPメニューの表示対象となるフレーム名(target)を指定することで、
サブメニューを自分自身のフレームに対して割り当てるのか、フレームを分けて
管理するのかを自由に設定できます。
フレーム分割を行うと、変更箇所は、サブメニューのみになる為、動きに無駄が
なくなりますが、グループメニューの大きさが固定されてしまいます。
自分自身にすると、グループメニューとサブメニューを一つのフレームに
入れることで、更新時の画面のちらつきは発生しますが、無駄なスペースは
省くことが可能になります。
初期値は、MENU(通常のメニューフレーム)です。 |
- 変更履歴:
setImageOnly
public void setImageOnly(java.lang.String flag)
- 【TAG】グループメニューの表示に、画像のみか、画像+ラベルを指定します(初期値:false)。
- パラメータ:
flag
- true:画像のみ / false:画像+ラベル- TagLib:
GROUPメニューの表示対象として、jsp/menuImage 以下に グループ名と同一の
画像ファイルが存在する場合は、画像を使用します。
このフラグを、true に設定すると、画像のみを使用します。
false の場合は、画像+グループ名のラベルを使用します。
画像のみの場合でも、title 属性にグループ名のラベルをセットしますので、
マウスカーソルをオーバーすれば、名称がTips表示されます。
画像が存在しない場合に、true(画像のみ)に設定した場合は、ラベルの最初の1文字
のみを出力します。
初期値は、false(画像+ラベル)です。 |
- 変更履歴:
setSideCount
public void setSideCount(java.lang.String count)
- 【TAG】グループメニューの表示対象となるメニューを横並びさせる数を指定します(初期値:1)。
- パラメータ:
count
- メニューを横並びさせる数- TagLib:
GROUPメニューなどの表示を行う場合に、横方向に何個のメニューを表示させるかを
指定します。例えば、画像のみのリンクと組み合わせれば、より、多くのグループを
横方向に並べることで、小領域に多くの情報を詰めることが可能になります。
0 を設定すると、横方向にのみ並べる(折り返さない)メニューを作ることが
可能になります。
初期値は、1 です。 |
- 変更履歴:
setMinCellCount
public void setMinCellCount(java.lang.String count)
- 【TAG】表形式メニュー(MATRIX)の一つのセルに含まれる最小行数を指定します(初期値:8)。
- パラメータ:
count
- セルに含まれる最小行数- 関連項目:
setMaxCellCount( String )
- TagLib:
表形式メニュー(MATRIX)では、一つのセルの高さを同一にする為、<br />タグを挿入します。
このタグの挿入する個数を指定します。
この個数だけ、メニューの数があろうとなかろうと行を確保します。
指定の値が、実際の行数より少ない場合は、実際の行数分だけ拡張されます。
初期値は、8 です。 |
- 変更履歴:
setMaxCellCount
public void setMaxCellCount(java.lang.String count)
- 【TAG】表形式メニュー(MATRIX)の一つのセルに含まれる最大行数を指定します(初期値:8)。
- パラメータ:
count
- セルに含まれる最大行数- 関連項目:
setMinCellCount( String )
- TagLib:
表形式メニュー(MATRIX)では、一つのセルの高さを同一にする為、指定の行数で
新たな セルを作成して、セルを横方向に連結します。
初期値は、8 です。 |
- 変更履歴:
setCache
public void setCache(java.lang.String flag)
- 【TAG】グループメニューのキャッシュを使用するかどうか指定します(初期値:true)。
- パラメータ:
flag
- true:キャッシュする / false:キャッシュしない- TagLib:
GROUPメニューの表示は、一旦作成すると、ほとんど書き換えることがありません。
作成は、使用できる全メニューをスキャンして、その中からグループ属性をピックアップ
するという処理を行っている為、明らかに無駄な処理です。
そこで、jsp/index.jsp が実行された場合のみキャッシュをクリアして、内部では
キャッシュがなければ作成し、あればキャッシュを使うロジックになっています。
ここでは、キャッシュを使用するのか、毎回作成しなおすのかを指定します。
対象として、jsp/menuImage 以下に グループ名と同一の
画像ファイルが存在する場合は、画像を使用します。
このフラグを、true に設定すると、画像のみを使用します。
false の場合は、画像+グループ名のラベルを使用します。
画像のみの場合でも、title 属性にグループ名のラベルをセットしますので、
マウスカーソルをオーバーすれば、名称がTips表示されます。
画像が存在しない場合は、たとえ、true(画像のみ)に設定しても、ラベルを出力します。
初期値は、true(キャッシュする)です。 |
- 変更履歴:
setMatch
public void setMatch(java.lang.String mt)
- 【TAG】正判定(マッチする場合に、メニューに出す)条件を設定します。
- パラメータ:
mt
- 正判定(マッチする場合に、メニューに出す)条件- TagLib:
メニューを表示する/しないの判定を、画面IDのマッチングで判断します。
これは、正規表現で表される引数と、画面IDがマッチする場合に、
メニューを表示させます。
マッチしない場合は、表示されません。
何も指定しない場合は、ロールの判定みの行われます。 |
setUnmatch
public void setUnmatch(java.lang.String umt)
- 【TAG】逆判定(マッチする場合に、メニューに出さない)条件を設定します。
- パラメータ:
umt
- 逆判定(マッチする場合に、メニューに出さない)条件- TagLib:
メニューを表示する/しないの判定を、画面IDのマッチングで判断します。
これは、正規表現で表される引数と、画面IDがマッチする場合に、
メニューを表示させません。
マッチしない場合は、表示されます。
何も指定しない場合は、ロールの判定みの行われます。 |
setUseButton
public void setUseButton(java.lang.String flag)
- 【TAG】画面リンクにボタンを使用するかを指定します。(初期値:false)。
- パラメータ:
flag
- true:ボタン形式リンク / false:通常リンク- TagLib:
画面リンクをボタンリンク形式で表示するかを指定します。
falseの場合は、通常のリンクになります。
初期値は、false(通常リンク)です。 |
- 変更履歴:
4.2.1.0 (2008/04/01) 新規登録 |
setUseButtonScript
public void setUseButtonScript(java.lang.String flag)
- 【TAG】(廃止)ボタンリンクを使用した場合に、JavaScriptのイベントを発生させるかを指定します。(初期値:false)。
- パラメータ:
flag
- true:ボタン形式リンク / false:通常リンク- TagLib:
(この属性は、廃止されています)
ボタンリンクを使用した場合に、JavaScriptのイベントを発生させるかを指定します。
発生するイベント及び呼ばれる関数は以下の3つです。
①クリック時 -> buttonClick(this)
②マウスオーバー時 -> buttonOver(this)
③カーソルアウト時 -> buttonOut(this)
初期値は、false(JavaScriptイベントを発生しない)です。 |
- 変更履歴:
4.2.1.0 (2008/04/01) 新規登録 |
5.1.4.0 (2010/03/01) 廃止 |
setButtonRequest
public void setButtonRequest(java.lang.String flag)
- 【TAG】マトリクスからの遷移先でボタンメニュー表示するのか(初期値:false)。
- パラメータ:
flag
- true:ボタン形式 / false:通常形式- TagLib:
マトリクスメニューからの遷移先でボタンメニューを表示させるために
アドレスに付加するリクエスト変数を指定します。
trueにするとbuttonRequest=trueのリクエスト変数を付けます。
falseの場合はリクエスト変数を付けません。
初期値は、false(プルダウン形式で表示)です。 |
- 変更履歴:
4.2.1.0 (2008/04/17) 新規登録 |
setInlineStyle
public void setInlineStyle(java.lang.String flag)
- 【TAG】標準画面を初期状態で表示するか(初期値:false)。
- パラメータ:
flag
- true:ボタン形式 / false:通常形式- TagLib:
通常expand=trueの状態では、メニューが折りたたまれています。
このinlineStyle属性をtrueにすると標準画面のスタイルにdisplay:inlineを
付加する事で、初期状態でメニューが開いた状態になります。
expand=falseとの違いは、隠しメニュー及び分類の折りたたみ機能が利用できる事です。
初期値は、false(折りたたまれた状態)です。 |
- 変更履歴:
toString
public java.lang.String toString()
- このオブジェクトの文字列表現を返します。
基本的にデバッグ目的に使用します。
- オーバーライド:
- クラス
CommonTagSupport
内の toString
- 戻り値:
- このクラスの文字列表現
Webアプリケーションフレームワーク openGion
Copyright (c) 2009 The openGion Project.