public class TransactionTag extends CommonTagSupport
コネクションを共有して、トランザクションを実現します。 通常のタグでは、コネクションプールより、その時々のコネクションを取り出して利用するため、 タグごとに異なるコネクションで処理されます。 また、commit や rollback などもそれぞれのタグで行われるため、連続処理時にエラーが 発生しても、中途半端な状態になります。 ここでは、各 DBID 単位にコネクションを共有し、このタグの間は、同じオブジェクトを commit や、rollback せずに使いまわすようにします。 これにより、複数タグ間のトランザクションや、異なる DBID 間のトランザクションを 実現します。 このタグは、doEndTag() メソッドが正常に呼び出されることで、トランザクションが成立します。 つまり、途中で、JSP出力が、SKIP_PAGE された場合は、commit もされません。 これは、データベースエラー以外のエラーでも、トランザクション処理されることを意味します。
●形式:<og:transaction > ... </og:transaction >
●body:あり(EVAL_BODY_INCLUDE:BODYをインクルードし、{@XXXX} は解析しません)
●Tag定義:
<og:transaction
debug 【TAG】デバッグ情報を出力するかどうか[true/false]を指定します(初期値:false)
> ... Body ...
</og:transaction>
●使用例
<og:transaction >
<og:query command="NEW" dbid="SERVER1" >
insert into XX01 (aa,bb,cc) values ('AA','BB','CC') />
</og:query >
<og:query command="NEW" dbid="SERVER2" >
update YY02 set aa='AA',bb='BB',cc='CC' where uniq='00001' />
</og:query >
</og:transaction >BR, BUFFER_MIDDLE, CRbodyContentid, pageContextEVAL_BODY_BUFFERED, EVAL_BODY_TAGEVAL_BODY_AGAINEVAL_BODY_INCLUDE, EVAL_PAGE, SKIP_BODY, SKIP_PAGE| コンストラクタと説明 |
|---|
TransactionTag()
デフォルトコンストラクター
|
| 修飾子とタイプ | メソッドと説明 |
|---|---|
void |
doCatch(java.lang.Throwable th)
タグの処理中(セッターメソッドを除く)の例外を全て受け取ります。
|
int |
doEndTag()
Taglibの終了タグが見つかったときに処理する doEndTag() を オーバーライドします。
|
int |
doStartTag()
Taglibの開始タグが見つかったときに処理する doStartTag() を オーバーライドします。
|
protected Transaction |
getTranObj()
Transactionオブジェクトを返します。
|
protected void |
release2()
タグリブオブジェクトをリリースします。
|
java.lang.String |
toString()
このオブジェクトの文字列表現を返します。
|
add, add, addEventColumn, addEventColumn, check, commitTableObject, debugPrint, doAfterBody, doFinally, get, getApplicationInfo, getAttributes, getBodyRawString, getBodyString, getContextAttribute, getContextPath, getCookie, getCSVParameter, getCSVParameter, getDataCondition, getDateFormat, getDBColumn, getDBFunctionName, getDocumentLink, getGUIInfo, getGUIInfoAttri, getHostName, getLabel, getLabelInterface, getLanguage, getLASTAttri, getLongLabel, getMsg, getMsglbl, getNVLAttri, getObject, getParameterNames, getParameterRows, getRequest, getRequestAttribute, getRequestCacheData, getRequestMethod, getRequestParameter, getRequestParameterValues, getRequestValue, getRequestValue, getRequestValues, getReservedParameter, getReservedValue, getResource, getSanitizedBodyString, getScope, getSessionAttribute, getSumRequestValue, getTagName, getTransaction, getUser, getUserEditInfo, getUserInfo, isAjaxSubmitRequest, isDebug, isNoTransitionRequest, isNull, jspPrint, makeUrl, removeContextAttribute, removeObject, removeRequestAttribute, removeSessionAttribute, set, setAjaxSubmitRequest, setCaseIf, setCaseKey, setCaseNN, setCaseNull, setCaseVal, setContextAttribute, setCookie, setDebug, setLanguage, setLbl, setNoTransitionRequest, setObject, setObject, setParameterNames, setParameterRows, setRequestAttribute, setRequestCacheData, setScope, setSessionAttribute, setUserInfo, startQueryTransaction, sys, sysBool, sysInt, useMainTrans, useQuotCheck, useTag, useXssCheckdoInitBody, getBodyContent, getPreviousOut, release, setBodyContentfindAncestorWithClass, getId, getParent, getValue, getValues, removeValue, setId, setPageContext, setParent, setValueclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitgetParent, setPageContext, setParentpublic TransactionTag()
public int doStartTag()
doStartTag インタフェース内 TagdoStartTag クラス内 CommonTagSupportpublic int doEndTag()
doEndTag インタフェース内 TagdoEndTag クラス内 CommonTagSupportpublic void doCatch(java.lang.Throwable th)
throws java.lang.Throwable
doCatch インタフェース内 TryCatchFinallydoCatch クラス内 CommonTagSupportth - このタグを通過してきたThrowableな例外java.lang.Throwableprotected void release2()
release2 クラス内 CommonTagSupportprotected Transaction getTranObj()
public java.lang.String toString()
toString クラス内 CommonTagSupportWebアプリケーションフレームワーク openGionCopyright (c) 2009 The openGion Project.