クラス UIForm
- java.lang.ObjectSE
-
- jakarta.faces.component.UIComponent
-
- jakarta.faces.component.UIComponentBase
-
- jakarta.faces.component.UIForm
- 実装済みのインターフェース一覧:
NamingContainer、PartialStateHolder、StateHolder、TransientStateHolder、UniqueIdVendor、ComponentSystemEventListener、FacesListener、SystemEventListenerHolder、EventListenerSE
- 既知の直属サブクラス
HtmlForm
public class UIForm extends UIComponentBase implements NamingContainer, UniqueIdVendor
UIForm は、ユーザーに提示される入力フォームを表す
UIComponentであり、その子コンポーネントは(とりわけ)フォームの送信時に含まれる入力フィールドを表します。デフォルトでは、
rendererTypeプロパティを "jakarta.faces.Form" に設定する必要があります。この値は、setRendererType()メソッドを呼び出すことで変更できます。
フィールド概要
フィールド 修飾子と型 フィールド 説明 static StringSECOMPONENT_FAMILYこのコンポーネントの標準コンポーネントファミリ。static StringSECOMPONENT_TYPEこのコンポーネントの標準コンポーネント型。クラス jakarta.faces.component.UIComponent から継承されたフィールド
ATTRS_WITH_DECLARED_DEFAULT_VALUES, BEANINFO_KEY, bindings, COMPOSITE_COMPONENT_TYPE_KEY, COMPOSITE_FACET_NAME, FACETS_KEY, VIEW_LOCATION_KEY
インターフェース jakarta.faces.component.NamingContainer から継承されたフィールド
SEPARATOR_CHAR
方法の概要
すべてのメソッド インスタンスメソッド 具象メソッド 修飾子と型 メソッド 説明 StringSEcreateUniqueId(FacesContext context, StringSE seed)コンポーネントの識別子を生成します。StringSEgetContainerClientId(FacesContext context)UIComponent.getContainerClientId(jakarta.faces.context.FacesContext)をオーバーライドして、このフォームのisPrependId()プロパティの値に応じて、ユーザーがこのフォームを無効にして、clientIdをその子孫のclientIdsの前に付加できないようにします。StringSEgetFamily()このコンポーネントが属するコンポーネントファミリの識別子を返します。booleaninvokeOnComponent(FacesContext context, StringSE clientId, ContextCallback callback)ビュー階層のこのコンポーネントから開始して、引数clientIdと等しいclientIdを持つコンポーネントを検索し、見つかった場合は、引数callbackでContextCallback.invokeContextCallback(jakarta.faces.context.FacesContext, jakarta.faces.component.UIComponent)メソッドを呼び出し、現在のFacesContextと見つかったコンポーネントを引数として渡します。booleanisPrependId()先頭に ID が付いています。booleanisSubmitted()submittedプロパティの現在の値を返します。voidprocessDecodes(FacesContext context)UIComponent.processDecodes(jakarta.faces.context.FacesContext)をオーバーライドして、フォームがその子より先にデコードされるようにします。voidprocessUpdates(FacesContext context)UIComponent.processUpdates(jakarta.faces.context.FacesContext)をオーバーライドして、このUIFormインスタンスの子がisSubmitted()がtrueを返す場合にのみ処理されるようにします。voidprocessValidators(FacesContext context)UIComponent.processValidators(jakarta.faces.context.FacesContext)をオーバーライドして、このUIFormインスタンスの子がisSubmitted()がtrueを返す場合にのみ処理されるようにします。voidsetPrependId(boolean prependId)ID を先頭に追加するかどうかを設定します。voidsetSubmitted(boolean submitted)(ページ内の他の形ではなく) このUIFormインスタンスがこのリクエスト処理ライフサイクル中に提出発生している場合、このメソッドは、このUIFormインスタンスのUIComponent.decode(jakarta.faces.context.FacesContext)時に、引数としてtrueで、呼び出されなければなりません。booleanvisitTree(VisitContext context, VisitCallback callback)ツリー内のこのノードからツリー訪問を実行します。クラス jakarta.faces.component.UIComponentBase から継承されたメソッド
addClientBehavior, addFacesListener, broadcast, clearInitialState, decode, encodeBegin, encodeChildren, encodeEnd, findComponent, getAttributes, getChildCount, getChildren, getClientBehaviors, getClientId, getDefaultEventName, getEventNames, getFacesContext, getFacesListeners, getFacet, getFacetCount, getFacets, getFacetsAndChildren, getId, getListenersForEventClass, getParent, getPassThroughAttributes, getRenderer, getRendererType, getRendersChildren, isRendered, isTransient, markInitialState, processRestoreState, processSaveState, queueEvent, removeFacesListener, restoreAttachedState, restoreState, saveAttachedState, saveState, setId, setParent, setRendered, setRendererType, setTransient, subscribeToEvent, unsubscribeFromEvent
クラス jakarta.faces.component.UIComponent から継承されたメソッド
encodeAll, getClientId, getCompositeComponentParent, getCurrentComponent, getCurrentCompositeComponent, getNamingContainer, getPassThroughAttributes, getResourceBundleMap, getStateHelper, getStateHelper, getTransientStateHelper, getTransientStateHelper, getValueExpression, initialStateMarked, isCompositeComponent, isInView, isVisitable, popComponentFromEL, processEvent, pushComponentToEL, restoreTransientState, saveTransientState, setInView, setValueExpression
コンストラクターの詳細
UIForm
public UIForm()
デフォルトのプロパティ値で新しい
UIFormインスタンスを作成します。
メソッドの詳細
getFamily
public StringSE getFamily()
クラスからコピーされた説明:UIComponentこのコンポーネントが属するコンポーネントファミリの識別子を返します。この識別子は、
rendererTypeプロパティの値と組み合わせて、このコンポーネントインスタンスに適切なRendererを選択するために使用できます。このメソッドはnullを返すべきではないことに注意してください- 次で指定:
- クラス
UIComponentのgetFamily - 戻り値:
- コンポーネントファミリ(null 以外)。
isSubmitted
public boolean isSubmitted()
submittedプロパティの現在の値を返します。デフォルト値はfalseです。詳細については、setSubmitted(boolean)を参照してください。このプロパティは、
UIComponent.getTransientStateHelper()を使用して一時的なプロパティとして保持する必要があります。- 戻り値:
- フォームが送信された場合は
true、それ以外の場合はfalse。
setSubmitted
public void setSubmitted(boolean submitted)
(ページ内の他の形ではなく) この
UIFormインスタンスがこのリクエスト処理ライフサイクル中に提出発生している場合、このメソッドは、このUIFormインスタンスのUIComponent.decode(jakarta.faces.context.FacesContext)時に、引数としてtrueで、呼び出されなければなりません。このUIFormインスタンスで送信が発生していない場合は、このUIFormインスタンスのUIComponent.decode(jakarta.faces.context.FacesContext)中に、falseを引数としてこのメソッドを呼び出す必要があります。UIFormの送信されたプロパティの値は、その状態の一部として保存してはなりません。このプロパティは、
UIComponent.getTransientStateHelper()を使用して一時的なプロパティとして保持する必要があります。- パラメーター:
submitted- 送信されたフラグの新しい値。
isPrependId
public boolean isPrependId()
先頭に ID が付いています。- 戻り値:
- ある場合は
true、それ以外の場合はfalse。
setPrependId
public void setPrependId(boolean prependId)
ID を先頭に追加するかどうかを設定します。- パラメーター:
prependId- ある場合はtrue、そうでない場合はfalse。
processDecodes
public void processDecodes(FacesContext context)
UIComponent.processDecodes(jakarta.faces.context.FacesContext)をオーバーライドして、フォームがその子より先にデコードされるようにします。これは、submittedプロパティを正しく設定するために必要です。- オーバーライド:
- クラス
UIComponentBaseのprocessDecodes - パラメーター:
context-FacesContext(処理中のリクエスト)- 例外:
NullPointerExceptionSE-contextがnullの場合
processValidators
public void processValidators(FacesContext context)
UIComponent.processValidators(jakarta.faces.context.FacesContext)をオーバーライドして、このUIFormインスタンスの子がisSubmitted()がtrueを返す場合にのみ処理されるようにします。- オーバーライド:
- クラス
UIComponentBaseのprocessValidators - パラメーター:
context-FacesContext(処理中のリクエスト)- 例外:
NullPointerExceptionSE-contextがnullの場合- 関連事項:
PreValidateEvent,PostValidateEvent
processUpdates
public void processUpdates(FacesContext context)
UIComponent.processUpdates(jakarta.faces.context.FacesContext)をオーバーライドして、このUIFormインスタンスの子がisSubmitted()がtrueを返す場合にのみ処理されるようにします。- オーバーライド:
- クラス
UIComponentBaseのprocessUpdates - パラメーター:
context-FacesContext(処理中のリクエスト)- 例外:
NullPointerExceptionSE-contextがnullの場合
createUniqueId
public StringSE createUniqueId(FacesContext context, StringSE seed)
コンポーネントの識別子を生成します。識別子の前には UNIQUE_ID_PREFIX が付けられ、このコンポーネントコンテナー内で一意になります。オプションで、生成された一意の ID に含める必要のある一意のシード値をコンポーネントの作成者が提供できます。
prependIdプロパティの値がfalseの場合、このメソッドは次の祖先UniqueIdVendorでcreateUniqueIdを呼び出す必要があります。- 次で指定:
- インターフェース
UniqueIdVendorのcreateUniqueId - パラメーター:
context- FacesContextseed- オプションのシード値 - 例 VDL テンプレート内のコンポーネントの位置に基づく- 戻り値:
- このコンポーネントコンテナーの一意の ID
getContainerClientId
public StringSE getContainerClientId(FacesContext context)
UIComponent.getContainerClientId(jakarta.faces.context.FacesContext)をオーバーライドして、このフォームのisPrependId()プロパティの値に応じて、ユーザーがこのフォームを無効にして、clientIdをその子孫のclientIdsの前に付加できないようにします。- オーバーライド:
- クラス
UIComponentのgetContainerClientId - パラメーター:
context- Faces コンテキスト。- 戻り値:
- コンテナーのクライアント ID。
visitTree
public boolean visitTree(VisitContext context, VisitCallback callback)
クラスからコピーされた説明:UIComponentツリー内のこのノードからツリー訪問を実行します。
UIComponent.visitTree() の実装は
VisitCallbackを直接呼び出さず、代わりにVisitContext.invokeVisitCallback(jakarta.faces.component.UIComponent, jakarta.faces.component.visit.VisitCallback)を呼び出してコールバックを呼び出します。これにより、VisitContext実装は、たとえばコンポーネントのサブセットに対してVisitCallbackを呼び出すだけで、最適化されたツリートラバーサルを提供できます。UIComponent.visitTree() 実装は、訪問を実行する前に UIComponent.pushComponentToEL() を呼び出し、訪問後に UIComponent.popComponentFromEL() を呼び出す必要があります。
- オーバーライド:
- クラス
UIComponentのvisitTree - パラメーター:
context- この訪問のVisitContextcallback- 訪問したノードごとにvisitメソッドが呼び出されるVisitCallbackインスタンス- 戻り値:
- コンポーネントの実装は、
trueを返し、ツリーの訪問が完了したことを示す場合があります(訪問する必要のあるすべてのコンポーネントが訪問されたなど)。これにより、ツリーへのアクセスが短絡され、アクセスされるコンポーネントがなくなります。 - 関連事項:
UIComponent.visitTree(jakarta.faces.component.visit.VisitContext, jakarta.faces.component.visit.VisitCallback)
invokeOnComponent
public boolean invokeOnComponent(FacesContext context, StringSE clientId, ContextCallback callback) throws FacesException
クラスからコピーされた説明:UIComponentBaseビュー階層のこのコンポーネントから開始して、引数
clientIdと等しいclientIdを持つコンポーネントを検索し、見つかった場合は、引数callbackでContextCallback.invokeContextCallback(jakarta.faces.context.FacesContext, jakarta.faces.component.UIComponent)メソッドを呼び出し、現在のFacesContextと見つかったコンポーネントを引数として渡します。このメソッドはUIComponent.findComponent(java.lang.String)に似ていますが、ビューのルートから検索するための主要なUINamingContainer.getSeparatorChar(jakarta.faces.context.FacesContext)構文をサポートしていません。デフォルトの実装では、最初に
this.getClientId()が引数clientIdと等しいかどうかをチェックします。その場合は、最初にUIComponent.pushComponentToEL(jakarta.faces.context.FacesContext, jakarta.faces.component.UIComponent)を呼び出し、次に引数コールバックでContextCallback.invokeContextCallback(jakarta.faces.context.FacesContext, jakarta.faces.component.UIComponent)メソッドを呼び出して、FacesContext引数を渡し、これをコンポーネント引数として渡します。次にUIComponent.popComponentFromEL(jakarta.faces.context.FacesContext)を呼び出します。コールバックによってExceptionがスローされた場合は、FacesExceptionでラップして、再度スローします。それ以外の場合は、trueを返します。それ以外の場合は、
UIComponent.getFacetsAndChildren()によって返される各コンポーネントについて、このメソッドに引数を順番に渡してinvokeOnComponent()を呼び出します。invokeOnComponent()が初めて true を返したときは、残りのIteratorのトラバースを中止し、trueを返します。ContextCallback.invokeContextCallback(jakarta.faces.context.FacesContext, jakarta.faces.component.UIComponent)を呼び出す場合、このメソッドの実装は、コールバックに渡されたコンポーネントの状態が、引数clientIdで見つかった状態に関するビュー階層内のコンポーネントの位置を正しく反映することを保証する必要があります。例:UIDataなどの反復コンポーネントは、正しい行に基づく適切な子コンポーネントを見つける前に、引数clientIdを正しく反映するように行インデックスを設定する必要があります。コールバックが戻るとき、通常またはExceptionをスローすることにより、このメソッドの実装は、ビューの状態をコールバックを呼び出す前の状態に復元する必要があります。UIComponent.getFacetsAndChildren()のどの要素もinvokeOnComponent()からtrueを返さなかった場合は、falseを返します。clientIdでコンポーネントを検索する簡単な使用例。private UIComponent found = null; private void doFind(FacesContext context, String clientId) { context.getViewRoot().invokeOnComponent(context, clientId, new ContextCallback() { public void invokeContextCallback(FacesContext context, UIComponent component) { found = component; } }); }- オーバーライド:
- クラス
UIComponentBaseのinvokeOnComponent - パラメーター:
context- 現在のリクエストのFacesContextclientId- 引数コールバックに渡されるコンポーネントのクライアント識別子。callback- Callback インターフェースの実装。- 戻り値:
true指定されたclientIdを持つコンポーネントが見つかった場合、そのコンポーネントを引数として渡してコールバックメソッドが正常に呼び出され、例外はスローされませんでした。指定されたclientIdのコンポーネントが見つからない場合、falseを返します。- 例外:
FacesException- 引数 Callback が例外をスローすると、FacesExceptionにラップされて再スローされます。- 関連事項:
UIComponent.invokeOnComponent(jakarta.faces.context.FacesContext, java.lang.String, jakarta.faces.component.ContextCallback)