クラス TemplateUtil

java.lang.Object
org.iplass.mtp.web.template.TemplateUtil

public class TemplateUtil extends Object
テンプレートを作成する際利用可能なユーティリティメソッド。
  • コンストラクタの詳細

    • TemplateUtil

      public TemplateUtil()
  • メソッドの詳細

    • getStaticContentPath

      public static String getStaticContentPath()

      静的コンテンツパスを返します。

      service-configに設定されたstaticContentPathを返します。

      戻り値:
      静的コンテンツパス
    • getTenantContextPath

      public static String getTenantContextPath()

      テナントコンテキストパスを返します。

      • 通常は「HttpServletRequest#getContextPath() + テナントメタ#テナントURL」を返します。
      • テナントURLが「/」の場合は、最後に「/」は付与しません。
      • テナントメタに「リクエストパス構築用テナントURL」を指定している場合はその値を返します。
      • 「リクエストパス構築用テナントURL」が「/」の場合は空を返します。

        例えば通常の「http://host:port/tenant/」を「http://aaaaaa/」にマッピングしている場合、「リクエストパス構築用テナントURL」には「/」を指定します。 この場合このメソッドの戻り値は空です。

    • getResourceContentPath

      public static String getResourceContentPath(String resourcePath)

      リソースパスからcssやjs、imgなどに指定するパスを返します。

      以下のルールによりパスを判断します。

      • 「/」で始まる場合は静的コンテキストパスからの指定と判断します。
      • 「http」で始まる場合は外部リソースと判断します。
      • 上記以外(actionなどの指定含む)の場合は、テナントコンテキストパスからの指定と判断します。

      パラメータ:
      resourcePath -
      戻り値:
    • getRequestContext

      public static RequestContext getRequestContext()
      RequestContextのインスタンスを取得します。
      戻り値:
    • getTenant

      public static Tenant getTenant()
    • getClientTenantId

      public static int getClientTenantId()
    • includeTemplate

      public static void includeTemplate(String templateName, jakarta.servlet.jsp.PageContext pageContext) throws IOException, jakarta.servlet.ServletException

      テンプレートを直接includeします。

      直接テンプレートをincludeするためCommandは実行されません。

      パラメータ:
      templateName - テンプレート名
      pageContext - 呼び出し元がjspの場合、jspのPageContextを引数に渡す
      例外:
      IOException
      jakarta.servlet.ServletException
    • includeTemplate

      public static void includeTemplate(String templateName, jakarta.servlet.jsp.PageContext pageContext, RequestContextWrapper requestContext) throws IOException, jakarta.servlet.ServletException

      テンプレートを直接includeします。

      直接テンプレートをincludeするためCommandは実行されません。 requestContextを指定した場合は、呼び出し先でその(上書きされた)requestContextで処理が実行されます。

      パラメータ:
      templateName - テンプレート名
      pageContext - 呼び出し元がjspの場合、jspのPageContextを引数に渡す
      requestContext - include先で利用するRequestContextを指定
      例外:
      IOException
      jakarta.servlet.ServletException
    • include

      public static void include(String actionName, jakarta.servlet.jsp.PageContext pageContext) throws IOException, jakarta.servlet.ServletException
      別Actionをincludeします。
      パラメータ:
      actionName - アクション名
      pageContext - 呼び出し元がjspの場合、jspのPageContextを引数に渡す
      例外:
      IOException
      jakarta.servlet.ServletException
    • include

      public static void include(String actionName, jakarta.servlet.jsp.PageContext pageContext, RequestContextWrapper requestContext) throws IOException, jakarta.servlet.ServletException

      別Actionをincludeします。

      requestContextを指定した場合は、呼び出し先でその(上書きされた)requestContextで処理が実行されます。

      パラメータ:
      actionName - アクション名
      pageContext - 呼び出し元がjspの場合、jspのPageContextを引数に渡す
      requestContext - include先で利用するRequestContextを指定
      例外:
      IOException
      jakarta.servlet.ServletException
    • renderContent

      public static void renderContent(jakarta.servlet.jsp.PageContext pageContext) throws IOException, jakarta.servlet.ServletException
      レイアウトテンプレートで、コンテンツをレンダリングする場所で呼び出す。
      パラメータ:
      pageContext - 呼び出し元がjspの場合、jspのPageContextを引数に渡す
      例外:
      IOException
      jakarta.servlet.ServletException
    • outputToken

      public static String outputToken(TemplateUtil.TokenOutputType outputStyle)

      新規に生成されたトランザクショントークンを返します。

      createNew=trueでoutputToken(TokenOutputType, boolean)を呼び出します。

      パラメータ:
      outputStyle - 出力形式
      戻り値:
      トランザクショントークン
    • outputToken

      public static String outputToken(TemplateUtil.TokenOutputType outputStyle, boolean createNew)

      トランザクショントークンを返します。

      URLの場合、_t=254a-fa...形式で出力。
      FORM_HTMLの場合、<input type="hidden" name="_t" value="254a-fa..." >形式で出力。
      FORM_XHTMLの場合、<input type="hidden" name="_t" value="254a-fa..." /入力が無効です: '&gt'形式で出力。
      VALUEの場合、単純にトランザクショントークンの値のみを出力(WebApi(javaScript)でHTTPヘッダーやリクエストにセットする際に利用することを想定)。

      createNewがtrueの場合は、ワンタイムのトランザクショントークンとして新規にトークンを生成します。
      createNewがfalseの場合は、すでに発行済みの(セッション単位に固定の)トークンを返します。
      固定のトークンは、単純にCSRFを防ぎたい場合に利用可能です。 ワンタイムのトークンはCSRF対策に加えて、そのトークンに関連するトランザクションの重複起動を防御することが可能です。

      パラメータ:
      outputStyle - 出力形式
      createNew - 新規のトークンを発行する場合はtrue。すでに発行済みの(セッション単位に固定の)トークンを取得する場合はfalse。
      戻り値:
      トランザクショントークン
    • getCurrentTimestamp

      public static Timestamp getCurrentTimestamp()
    • getString

      @Deprecated public static String getString(String key)
      推奨されていません。
      getResourceString(String, Object...) を利用してください。
      リソースファイルに定義した文字列を取得します。
      パラメータ:
      key - KEY
      戻り値:
      リソース文字列
    • getString

      @Deprecated public static String getString(String key, Object... arguments)
      推奨されていません。
      getResourceString(String, Object...) を利用してください。
      リソースファイルに定義した文字列を取得します。
      パラメータ:
      key - KEY
      arguments - 引数
      戻り値:
      リソース文字列
    • getResourceString

      public static String getResourceString(String key, Object... arguments)
      リソースファイルに定義した文字列を取得します。
      パラメータ:
      key - KEY
      arguments - 引数
      戻り値:
      リソース文字列
    • getResourceString

      public static String getResourceString(ResourceBundle resource, String key, Object... arguments)
      リソースファイルに定義した文字列を取得します。
      パラメータ:
      resource - リソースバンドル
      key - KEY
      arguments - 引数
      戻り値:
      リソース文字列
    • getAPIVersion

      public static String getAPIVersion()
      APIのバージョン番号を返します。
      戻り値:
      バージョン番号
    • getEnableLanguages

      public static Map<String,String> getEnableLanguages()
    • getMessageCategory

      public static MessageCategory getMessageCategory(String catName)
      指定のカテゴリ名のMessageCategoryを取得。
      パラメータ:
      catName -
      戻り値:
    • getMessageString

      public static String getMessageString(String catName, String msgId, Object... args)
      指定のカテゴリ名、メッセージIDでメッセージ文字列を取得。 取得されたメッセージ文字列は、多言語を考慮した形で、フォーマット済み。
      パラメータ:
      catName -
      msgId -
      args - メッセージをフォーマットする場合の引数
      戻り値:
    • getMessageString

      public static String getMessageString(MessageItem message, Object... args)
      指定のMessageItemでメッセージ文字列を取得。 取得されたメッセージ文字列は、多言語を考慮した形で、フォーマット済み。
      パラメータ:
      message -
      args -
      戻り値:
    • getMultilingualString

      public static String getMultilingualString(String defaultString, List<LocalizedStringDefinition> localizedStringList)
    • getMultilingualString

      public static String getMultilingualString(String viewString, List<LocalizedStringDefinition> viewLocalizedStringList, String propDefString, List<LocalizedStringDefinition> propDefLocalizedStringList)
    • getLanguage

      public static String getLanguage()
    • getLocale

      public static Locale getLocale()
    • getTimeZone

      public static TimeZone getTimeZone()
    • getLocaleFormat

      public static org.iplass.mtp.impl.i18n.LocaleFormat getLocaleFormat()
    • getLanguageFonts

      public static String getLanguageFonts(String langage)