Package org.iplass.mtp.web.template
Class ELFunctions
java.lang.Object
org.iplass.mtp.web.template.ELFunctions
EL式にて提供するカスタム関数が定義されるクラスです。 iPLAss上でTemplateとして管理されるJSPからは、 RequestContext, SessionContextそれぞれにsetAttributeした値を透過的に取得可能です。
JSPでの利用例を以下に示します。
<%@page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@taglib prefix="m" uri="http://iplass.org/tags/mtp"%> <html> : : <body> : : <%-- testBean.user.nameの値をXMLエスケープして出力 --%> userName:${m:esc(testBean.user.name)}<br> : : <%-- m:tcPath()にてtenantContextPathを出力 --%> <a href="${m:tcPath()}/user/update">更新する</a> : : </body> </html>
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic String
strをHTML出力用にエスケープします。
利用例static String
strをJavaScript出力用にエスケープします。
利用例static String
strをXML(XHTML)出力用にエスケープします。
利用例static String
fixToken()
トランザクショントークン(セッション単位の固定値)の値を出力します。
利用例static String
指定のvalueをpatternでフォーマット出力します。
利用例static String
Message定義(メタデータ)として登録されているメッセージを出力します。
利用例static String
Message定義(メタデータ)として登録されているメッセージを出力します。 paramsには、メッセージに埋め込むパラメータ(単一のオブジェクト、もしくは配列、もしくはCollectionのインスタンス)を指定可能です。 パラメータがない場合は、nullを指定します。
利用例static Object
valがnullであった場合、defaultValを返却します。 それ以外はvalを返却します。
利用例static String
outputToken
(Object tokenOutputType, boolean createNew) トランザクショントークンを出力します。 tokenOutputTypeにて、出力形式を指定します。tokenOutputTypeはTemplateUtil.TokenOutputType
に定義されるEnum値もしくは、そのString表現を指定可能です。 tokenOutputType、createNewについては、TemplateUtil.outputToken(TokenOutputType, boolean)
を参照下さい。
利用例static Object
nameで指定されるPreferenceの値を取得します。
PreferenceにruntimeClassが指定されている場合は、そのクラスのインスタンスが取得されます。
runtimeClass指定がない場合、かつPreferenceSetの場合は、Mapが取得されます。 Preferenceの場合は、valueに定義されているStringが取得されます。
利用例static RequestContext
rc()
RequestContextのインスタンスを取得します。static String
指定された基底名、キーからResourceBundleに定義された文字列を返します。
利用例static String
指定された基底名、キーからResourceBundleに定義された文字列を返します。 paramsには、文字列に埋め込むパラメータ(単一のオブジェクト、もしくは配列、もしくはCollectionのインスタンス)を指定可能です。
利用例static String
tcPath()
tenant名まで含むコンテキストパスを取得します。
利用例static String
token()
トランザクショントークンの値を出力します。
利用例
-
Constructor Details
-
ELFunctions
public ELFunctions()
-
-
Method Details
-
rc
RequestContextのインスタンスを取得します。
利用例
${m:rc().session.getAttribute('cart').count}
このEL関数呼び出しは、TemplateUtil.getRequestContext()
呼び出しと等価です。note:
iPLAss3.0からは、JSPの暗黙変数requestから透過的にRequestContextの値を取得可能です。 当該関数は、明示的にRequestContextのインスタンスを取得したい場合に利用可能です。- Returns:
- RequestContextのインスタンス
-
tcPath
tenant名まで含むコンテキストパスを取得します。
利用例
<a href="${m:tcPath()}/path/to/action">link</a>
このEL関数呼び出しは、TemplateUtil.getTenantContextPath()
呼び出しと等価です。- Returns:
- テナントコンテキストパス
-
msg
Message定義(メタデータ)として登録されているメッセージを出力します。
利用例
多言語化されたメッセージ: ${m:msg('path/to/MessageCategory', 'M101')}
このEL関数呼び出しは、invalid reference
TemplateUtil#getMessageString(String, String)
- Parameters:
categoryName
- メッセージ定義のカテゴリ名messageId
- メッセージID- Returns:
- 整形されたメッセージ
-
msgp
Message定義(メタデータ)として登録されているメッセージを出力します。 paramsには、メッセージに埋め込むパラメータ(単一のオブジェクト、もしくは配列、もしくはCollectionのインスタンス)を指定可能です。 パラメータがない場合は、nullを指定します。
利用例
多言語化されたメッセージ: ${m:msgp('path/to/MessageCategory', 'M101', bean.messageParams)}
このEL関数呼び出しは、TemplateUtil.getMessageString(String, String, Object...)
呼び出しと等価です。- Parameters:
categoryName
- メッセージ定義のカテゴリ名messageId
- メッセージIDparams
- メッセージへ埋め込むパラメータ- Returns:
- 整形されたメッセージ
-
escJs
strをJavaScript出力用にエスケープします。
利用例
${m:escJs(bean.user.name)}
このEL関数呼び出しは、StringUtil.escapeJavaScript(String)
呼び出しと等価です。- Parameters:
str
- エスケープする文字列- Returns:
- エスケープされた文字列
-
escXml
strをXML(XHTML)出力用にエスケープします。
利用例
${m:escXml(bean.user.name)}
このEL関数呼び出しは、StringUtil.escapeXml10(String)
呼び出しと等価です。- Parameters:
str
- エスケープする文字列- Returns:
- エスケープされた文字列
-
esc
strをHTML出力用にエスケープします。
利用例
${m:esc(bean.user.name)}
このEL関数呼び出しは、StringUtil.escapeHtml(String)
呼び出しと等価です。- Parameters:
str
- エスケープする文字列- Returns:
- エスケープされた文字列
-
outputToken
トランザクショントークンを出力します。 tokenOutputTypeにて、出力形式を指定します。tokenOutputTypeはTemplateUtil.TokenOutputType
に定義されるEnum値もしくは、そのString表現を指定可能です。 tokenOutputType、createNewについては、TemplateUtil.outputToken(TokenOutputType, boolean)
を参照下さい。
利用例
${m:outputToken('FORM_HTML', true)}
このEL関数呼び出しは、TemplateUtil.outputToken(TokenOutputType, boolean)
呼び出しと等価です。- Parameters:
tokenOutputType
- 出力形式createNew
- 新規のトークンを発行する場合はtrue。すでに発行済みの(セッション単位に固定の)トークンを取得する場合はfalse。- Returns:
- トランザクショントークン
-
token
トランザクショントークンの値を出力します。
利用例
<input type="hidden" name="_t" value="${m:token()}">
このEL関数呼び出しは、outputStyle=VALUE、createNew=trueにてTemplateUtil.outputToken(TokenOutputType, boolean)
呼び出しと等価です。- Returns:
- トランザクショントークン
-
fixToken
トランザクショントークン(セッション単位の固定値)の値を出力します。
利用例
<input type="hidden" name="_t" value="${m:fixToken()}">
このEL関数呼び出しは、outputStyle=VALUE、createNew=falseにてTemplateUtil.outputToken(TokenOutputType, boolean)
呼び出しと等価です。- Returns:
- トランザクショントークン(セッション単位の固定値)
-
prefs
nameで指定されるPreferenceの値を取得します。
PreferenceにruntimeClassが指定されている場合は、そのクラスのインスタンスが取得されます。
runtimeClass指定がない場合、かつPreferenceSetの場合は、Mapが取得されます。 Preferenceの場合は、valueに定義されているStringが取得されます。
利用例
${m:prefs('preferenceName')}
- Parameters:
name
- Preferenceのname- Returns:
-
fmt
指定のvalueをpatternでフォーマット出力します。
利用例
<input type="text" name="endDate" value="${m:fmt(dateVal, 'yyyy/MM/dd')}">
valueには、Dateのインスタンスもしくは、Numberのインスタンスを指定可能です。 Dateの場合は、SimpleDateFormatにて定義されるpattern、 Numberの場合は、DecimalFormatにて定義されるpatternを指定可能です。- Parameters:
value
- フォーマット対象のオブジェクト、Date or Numberpattern
- フォーマットパターン- Returns:
- フォーマットされた値。フォーマットできなかった場合null
-
nvl
valがnullであった場合、defaultValを返却します。 それ以外はvalを返却します。
利用例
<input type="text" name="test" value="${m:nvl(testVal, 'testVal is null')}">
- Parameters:
val
- null検証する値defaultVal
- valがnullの場合返却する値- Returns:
- valもしくはdefaultVal
-
rs
指定された基底名、キーからResourceBundleに定義された文字列を返します。
利用例
${m:rs('resource-bundle-name', 'key')}
このEL関数呼び出しは、invalid reference
TemplateUtil#getResourceString(ResourceBundle, String, String)
- Parameters:
baseName
- ResourceBundleのbaseNamekey
- キー- Returns:
- 文字列
-
rsp
指定された基底名、キーからResourceBundleに定義された文字列を返します。 paramsには、文字列に埋め込むパラメータ(単一のオブジェクト、もしくは配列、もしくはCollectionのインスタンス)を指定可能です。
利用例
${m:rsp('resource-bundle-name', 'key', params)}
このEL関数呼び出しは、invalid reference
TemplateUtil#getResourceString(ResourceBundle, String, String, Object...)
- Parameters:
baseName
- ResourceBundleのbaseNamekey
- キーparams
- 文字列へ埋め込むパラメータ- Returns:
- 文字列
-