org.apache.struts.util
クラス RequestUtils

java.lang.Object
  |
  +--org.apache.struts.util.RequestUtils

public class RequestUtils
extends java.lang.Object

Struts コントローラフレームワークにおけるサーブレットリクエストの処理に関する 汎用ユーティリティメソッド群です。

バージョン:
$Revision: 1.14.2.7 $ $Date: 2001/11/21 13:30:38 $
作成者:
Craig R. McClanahan

フィールドの概要
private static java.util.Locale defaultLocale
          サーバのデフォルトロケール。
private static MessageResources messages
          このパッケージのメッセージリソース。
 
コンストラクタの概要
RequestUtils()
           
 
メソッドの概要
static java.net.URL absoluteURL(javax.servlet.http.HttpServletRequest request, java.lang.String path)
          指定したリクエストに含まれるサーバとコンテキスト情報に基づいて、 指定したコンテキスト相対パスに対する絶対URLを生成し、返します。
static java.util.Map computeParameters(javax.servlet.jsp.PageContext pageContext, java.lang.String paramId, java.lang.String paramName, java.lang.String paramProperty, java.lang.String paramScope, java.lang.String name, java.lang.String property, java.lang.String scope, boolean transaction)
          生成されたURLに動的に追加されるクエリパラメータを計算します。
static java.lang.String computeURL(javax.servlet.jsp.PageContext pageContext, java.lang.String forward, java.lang.String href, java.lang.String page, java.util.Map params, java.lang.String anchor, boolean redirect)
          forward, href, あるいは page の中の、 null でない一つのパラメータに基づき、ハイパーリンクURLを計算します。
static java.lang.Object lookup(javax.servlet.jsp.PageContext pageContext, java.lang.String name, java.lang.String scope)
          指定した bean を、指定したページコンテキスト内の、オプションとして指定した スコープから探し出し、返します。
static java.lang.Object lookup(javax.servlet.jsp.PageContext pageContext, java.lang.String name, java.lang.String property, java.lang.String scope)
          指定した bean の指定したプロパティを、指定したページコンテキスト内の、 オプションで指定したスコープから探し出し、返します。
static java.lang.String message(javax.servlet.jsp.PageContext pageContext, java.lang.String bundle, java.lang.String locale, java.lang.String key)
          指定したパラメータに基づき、メッセージ文字列を検索し、返します。
static java.lang.String message(javax.servlet.jsp.PageContext pageContext, java.lang.String bundle, java.lang.String locale, java.lang.String key, java.lang.Object[] args)
          指定したパラメータに基づき、メッセージ文字列を検索し、返します。
static void populate(java.lang.Object bean, javax.servlet.http.HttpServletRequest request)
          指定したHTTPリクエストから、各パラメータ名と bean クラス内の対応する JavaBeans "プロパティセッター" メソッドとの照合に基づき、指定した JavaBean のプロパティを設定します。
static void populate(java.lang.Object bean, java.lang.String prefix, java.lang.String suffix, javax.servlet.http.HttpServletRequest request)
          指定したHTTPリクエストから、各パラメータ名(とオプションの接頭辞および /または接尾辞)と bean クラス内の対応する JavaBeans "プロパティセッター" メソッドとの照合に基づき、指定した JavaBean のプロパティを設定します。
static boolean present(javax.servlet.jsp.PageContext pageContext, java.lang.String bundle, java.lang.String locale, java.lang.String key)
          指定したメッセージキーに対応するメッセージが、指定したロケールに存在する かを返します。
static java.lang.String printableURL(java.net.URL url)
          ホストが指定されていない場合はスキーム/ホスト/ポート部をそのままにし、 URLの出力可能な表現を計算します。
static java.net.URL requestURL(javax.servlet.http.HttpServletRequest request)
          現在のリクエストを表すURLを返します。
static void saveException(javax.servlet.jsp.PageContext pageContext, java.lang.Throwable exception)
          指定した例外を、後で使用できるようにリクエスト属性として保存します。
static java.net.URL serverURL(javax.servlet.http.HttpServletRequest request)
          現在のリクエストのスキーム、サーバ、ポート番号を表すURLを返します。
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

defaultLocale

private static final java.util.Locale defaultLocale
サーバのデフォルトロケール。


messages

private static MessageResources messages
このパッケージのメッセージリソース。

コンストラクタの詳細

RequestUtils

public RequestUtils()
メソッドの詳細

absoluteURL

public static java.net.URL absoluteURL(javax.servlet.http.HttpServletRequest request,
                                       java.lang.String path)
                                throws java.net.MalformedURLException
指定したリクエストに含まれるサーバとコンテキスト情報に基づいて、 指定したコンテキスト相対パスに対する絶対URLを生成し、返します。

パラメータ:
request - 処理中のサーブレットリクエスト
path - コンテキスト相対パス ('/'で始まること)
例外:
java.net.MalformedURLException - 絶対URLを生成できない場合

computeParameters

public static java.util.Map computeParameters(javax.servlet.jsp.PageContext pageContext,
                                              java.lang.String paramId,
                                              java.lang.String paramName,
                                              java.lang.String paramProperty,
                                              java.lang.String paramScope,
                                              java.lang.String name,
                                              java.lang.String property,
                                              java.lang.String scope,
                                              boolean transaction)
                                       throws javax.servlet.jsp.JspException
生成されたURLに動的に追加されるクエリパラメータを計算します。 返されるマップのキーはパラメータ名であり、値は null(値が指定されていない)、 String (値が一つ指定されている)、もしくは String[] 配列(複数の値が指定されている) のいずれかです。パラメータ名は <html:link> タグの 対応する属性名に一致します。クエリパラメータが認識されない場合は、 null を返します。

パラメータ:
pageContext - 動作中のページコンテキスト
paramId - 値が一つのリクエストパラメータ名(あれば)
paramName - 値が一つのパラメータ値を含む bean
paramProperty - (paramNameで指定した名前の、 値が一つのパラメータ値を含む beanの)プロパティ
paramScope - paramScope の名を持つ bean が含まれるコープ
name - 複数の値のパラメータマップを含む bean(あれば)
property - (name の名を持ち、複数の値のパラメータ マップを含む bean の)プロパティ
scope - Scope name の名を持つ bean が含まれるスコープ
transaction - トランザクション・コントロール・トークンを追加すべきか?
例外:
javax.servlet.jsp.JspException - 要求された beans が見つからない場合

computeURL

public static java.lang.String computeURL(javax.servlet.jsp.PageContext pageContext,
                                          java.lang.String forward,
                                          java.lang.String href,
                                          java.lang.String page,
                                          java.util.Map params,
                                          java.lang.String anchor,
                                          boolean redirect)
                                   throws java.net.MalformedURLException
forward, href, あるいは page の中の、 null でない一つのパラメータに基づき、ハイパーリンクURLを計算します。 返される URL はセッション識別子を追加するために既に response.encodeURL() に渡されています。

パラメータ:
pageContext - この呼び出しを行うタグに対するページコンテキスト
forward - コンテキスト相対URLを検索する対象となる論理フォワード名(指定した場合)
href - そのまま使用されるURL(指定した場合)
page - URLを生成すべきコンテキスト相対ページ(指定した場合)
params - 動的にインクルードされるパラメータのマップ(あれば)
anchor - 動的にインクルードされるアンカー(あれば)
redirect - このURLは response.sendRedirect() に対するものか?
例外:
java.net.MalformedURLException - 指定したパラメータに対するURLが生成できなかった場合

lookup

public static java.lang.Object lookup(javax.servlet.jsp.PageContext pageContext,
                                      java.lang.String name,
                                      java.lang.String scope)
                               throws javax.servlet.jsp.JspException
指定した bean を、指定したページコンテキスト内の、オプションとして指定した スコープから探し出し、返します。そのような bean が見つからない場合は、 代わりに null を返します。例外がスローされた場合、 その例外は既に saveException() 呼び出しによって保存されています。

パラメータ:
pageContext - 検索するページコンテキスト
name - 取り出す bean の名前
scope - 検索するスコープ(page, request, session, application) あるいは findAttribute() を使う場合は null
例外:
javax.servlet.jsp.JspException - 無効なスコープ名が要求された場合

lookup

public static java.lang.Object lookup(javax.servlet.jsp.PageContext pageContext,
                                      java.lang.String name,
                                      java.lang.String property,
                                      java.lang.String scope)
                               throws javax.servlet.jsp.JspException
指定した bean の指定したプロパティを、指定したページコンテキスト内の、 オプションで指定したスコープから探し出し、返します。例外がスローされた場合、 その例外は既に saveException() 呼び出しによって保存されています。

パラメータ:
pageContext - 検索するページコンテキスト
name - 取り出す bean の名前
property - 取り出すプロパティの名前、あるいは bean 自身を取り出す 場合は null
scope - 検索するスコープ (page, request, session, application) あるいは代わりにfindAttribute() を使う場合は null
例外:
javax.servlet.jsp.JspException - 無効なスコープ名が要求された場合

message

public static java.lang.String message(javax.servlet.jsp.PageContext pageContext,
                                       java.lang.String bundle,
                                       java.lang.String locale,
                                       java.lang.String key)
                                throws javax.servlet.jsp.JspException
指定したパラメータに基づき、メッセージ文字列を検索し、返します。

パラメータ:
pageContext - このリクエストに関連付けられた PageContext
bundle - メッセージリソースバンドルに対するサーブレットコンテキスト属性名
locale - ユーザロケールに対するセッション属性名
key - 検索して返すメッセージキー
例外:
javax.servlet.jsp.JspException - 検索エラーが発生した場合(既にリクエストに保存されています)

message

public static java.lang.String message(javax.servlet.jsp.PageContext pageContext,
                                       java.lang.String bundle,
                                       java.lang.String locale,
                                       java.lang.String key,
                                       java.lang.Object[] args)
                                throws javax.servlet.jsp.JspException
指定したパラメータに基づき、メッセージ文字列を検索し、返します。

パラメータ:
pageContext - このリクエストに関連付けられた PageContext
bundle - メッセージリソースバンドルに対するサーブレットコンテキスト属性名
locale - ユーザロケールに対するセッション属性名
key - 検索して返すメッセージキー
args - このメッセージに対する置換パラメータ
例外:
javax.servlet.jsp.JspException - 検索エラーが発生した場合(既にリクエストに保存されています)

populate

public static void populate(java.lang.Object bean,
                            javax.servlet.http.HttpServletRequest request)
                     throws javax.servlet.ServletException
指定したHTTPリクエストから、各パラメータ名と bean クラス内の対応する JavaBeans "プロパティセッター" メソッドとの照合に基づき、指定した JavaBean のプロパティを設定します。convert() 下で述べる ように、引数の型に対しては適切な変換が行われます。

パラメータ:
bean - プロパティを設定する JavaBean
request - bean のプロパティを設定するのに使用されるパラメータを 持つ HTTP リクエスト
例外:
javax.servlet.ServletException - プロパティ値の設定中に例外がスローされた場合

populate

public static void populate(java.lang.Object bean,
                            java.lang.String prefix,
                            java.lang.String suffix,
                            javax.servlet.http.HttpServletRequest request)
                     throws javax.servlet.ServletException
指定したHTTPリクエストから、各パラメータ名(とオプションの接頭辞および /または接尾辞)と bean クラス内の対応する JavaBeans "プロパティセッター" メソッドとの照合に基づき、指定した JavaBean のプロパティを設定します。 setProperties() 下で述べるように、引数の型に対しては適切な 変換が行われます。

非 null 値の prefix と非 null 値の suffix を指定した場合、パラメータ名が両方の条件に合致しなければ その値は bean のプロパティ設定には使用されません。 リクエストのコンテントタイプが "multipart/form-data" でメソッドが "POST" の場合、HttpServletRequest オブジェクトは MultipartRequestWrapper オブジェクトにラップされます。

パラメータ:
bean - プロパティを設定する JavaBean
prefix - 照合パラメータを検索するときに bean プロパティ名に付加する 接頭辞(あれば)
suffix - 照合パラメータを検索するときに bean プロパティ名に付加する 接尾辞(あれば)
request - bean のプロパティを設定するのに使用されるパラメータを 持つ HTTP リクエスト
例外:
javax.servlet.ServletException - プロパティ値の設定中に例外がスローされた場合

present

public static boolean present(javax.servlet.jsp.PageContext pageContext,
                              java.lang.String bundle,
                              java.lang.String locale,
                              java.lang.String key)
                       throws javax.servlet.jsp.JspException
指定したメッセージキーに対応するメッセージが、指定したロケールに存在する かを返します。

パラメータ:
pageContext - このリクエストに関連付けられた PageContext
bundle - メッセージリソースバンドルに対するサーブレットコンテキスト属性名
locale - ユーザロケールに対するセッション属性名
key - 検索して返すメッセージキー
例外:
javax.servlet.jsp.JspException - 検索エラーが発生した場合(既にリクエストに保存されています)

printableURL

public static java.lang.String printableURL(java.net.URL url)
ホストが指定されていない場合はスキーム/ホスト/ポート部をそのままにし、 URLの出力可能な表現を計算します。典型的には、これは相対ないしコンテキスト相対 URIから生成されたURLにあてはまります。

パラメータ:
url - 出力可能な表現にするURL

requestURL

public static java.net.URL requestURL(javax.servlet.http.HttpServletRequest request)
                               throws java.net.MalformedURLException
現在のリクエストを表すURLを返します。これは Servlet 2.3 における HttpServletRequest.getRequestURL() と等価です。

パラメータ:
request - 処理中のサーブレット・リクエスト
例外:
java.net.MalformedURLException - URLが生成できなかった場合

serverURL

public static java.net.URL serverURL(javax.servlet.http.HttpServletRequest request)
                              throws java.net.MalformedURLException
現在のリクエストのスキーム、サーバ、ポート番号を表すURLを返します。 サーバ相対URLは単にこれに('/'で始まる)サーバ相対パスを付加するだけで 生成できます。

パラメータ:
request - 処理中のサーブレット・リクエスト
例外:
java.net.MalformedURLException - URLが生成できなかった場合

saveException

public static void saveException(javax.servlet.jsp.PageContext pageContext,
                                 java.lang.Throwable exception)
指定した例外を、後で使用できるようにリクエスト属性として保存します。

パラメータ:
pageContext - 現在のページの PageContext
exception - 保存する例外


このドキュメントは、Ja-Jakartaにより訳されました。コメントがある場合は、report@jajakarta.orgまでお願いします。
Copyright (C) 2000-2002 - Apache Software Foundation