|
|
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Objectjavax.servlet.jsp.tagext.TagSupport
javax.servlet.jsp.tagext.BodyTagSupport
org.opengion.hayabusa.taglib.CommonTagSupport
org.opengion.hayabusa.taglib.SwitchTag
public class SwitchTag
switch タグは、指定された条件を、case タグに伝えます。 各属性は、{@XXXX} 変数が使用できます。 これは、ServletRequest から、XXXX をキーに値を取り出し,この変数に 割り当てます。つまり、このXXXXをキーにリクエストすれば、 この変数に値をセットすることができます。
●形式:<og:switch key="・・・" /> <og:case match="A" /> ・・・ </og:case> <og:case match="B" /> ・・・ </og:case> <og:case match="C" /> ・・・ </og:case> <og:case isDefault="true" /> ・・・ </og:case> </og:switch> ●body:あり(EVAL_BODY_INCLUDE:BODYをインクルードし、{@XXXX} は解析しません) ●Tag定義: <og:switch key ○【TAG】switch のマッチ判定用のキーを設定します(必須)。 debug 【TAG】デバッグ情報を出力するかどうか[true/false]を指定します(初期値:false) > ... Body ... </og:switch> ●使用例 <og:switch key="{@PARAM}" /> <og:case match="A" /> 処理A </og:case> <og:case match="B" /> 処理B </og:case> <og:case match="C" /> 処理C </og:case> <og:case isDefault="true" /> 処理X </og:case> </og:switch> ・switch の key に対して、case の match に指定された値が、マッチ(switch_key.match( case_match )) した場合に、case の BODY 部分が処理されます。 マッチしなければ、BODY部は、スキップされます。 ・isDefault="true" の場合は、どれとも マッチしなかった場合に、実行されます。 ・Javaの switch-case 文は、最初に処理された case 以降を処理します。通常は、break を入れて 後続処理を実行されないようにしています。 この、switch-case タグは、caseタグの isBreak 属性で制御します。初期値が isBreak="true" に、 なっているため、通常は、どれかの case が実行された段階で、switchの処理は、終了されます。 isBreak="false" にすると、switchから抜けずに、継続して case との match を実行します。 この場合、Java等と異なるのは、直後のcase文が実行されるのではなく、あくまで match 作業が 継続されるということです。つまり、複数の case で処理を行いたい場合は、isBreak="false" に すると同時に、match 条件もそれぞれで、マッチするように設定する必要があります。 <og:switch key="{@PARAM}" /> <og:case match="[1]" isBreak="false" /> 処理A </og:case> <og:case match="[12]" isBreak="false" /> 処理B </og:case> <og:case match="[123]" isBreak="false" /> 処理C </og:case> <og:case isNull="true" /> 処理X </og:case> <og:case isDefault="true" /> 処理Y </og:case> </og:switch> ・上記指定では、isBreak="false" が指定されているため、マッチした後も継続して判定処理が実施されます。 ・上記例で言うと、PARAM が "1" の場合、上記3つともにマッチします。 ・isNull="true" は、switch の key が null の場合に成立します。(null とは、ゼロ文字列も含む)
5.2.3.0 (2010/12/01) 新規追加 |
フィールドの概要 |
---|
クラス 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 |
コンストラクタの概要 | |
---|---|
SwitchTag()
|
メソッドの概要 | |
---|---|
int |
doEndTag()
Taglibの終了タグが見つかったときに処理する doEndTag() を オーバーライドします。 |
int |
doStartTag()
Taglibの開始タグが見つかったときに処理する doStartTag() を オーバーライドします。 |
protected String |
getKey()
switch のマッチ判定用のキーを取得します。 |
protected boolean |
isMatch()
すでにマッチしたかどうかを返します。 |
protected void |
release2()
タグリブオブジェクトをリリースします。 |
protected void |
setBreak()
case タグが、ブレイクした場合に、このメソッドを呼び出します。 |
void |
setKey(String key)
【TAG】switch のマッチ判定用のキーを設定します。 |
String |
toString()
このオブジェクトの文字列表現を返します。 |
クラス 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 |
コンストラクタの詳細 |
---|
public SwitchTag()
メソッドの詳細 |
---|
public int doStartTag()
Tag
内の doStartTag
CommonTagSupport
内の doStartTag
public int doEndTag()
Tag
内の doEndTag
CommonTagSupport
内の doEndTag
protected void release2()
CommonTagSupport
内の release2
public void setKey(String key)
key
- マッチ判定用のキーgetKey()
switch のマッチ判定用のキーを設定します。
protected String getKey()
setKey( String )
protected void setBreak()
isMatch()
protected boolean isMatch()
setBreak()
public String toString()
CommonTagSupport
内の toString
|
openGion 5.8.6.0 | ||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |