基本的なカスタマイズ > ユーザーインタフェースのカスタマイズ > UI の情報の表示 > UI の検証 > ソリューション > 選択後検証シーケンス
  
選択後検証シーケンス
概念的には、選択後検証はユーザーが UI で操作を起動した直後に発生します。ただし実際には、選択後検証はターゲットページがレンダリングされたときに実行されます。つまり、begin.jspf (Windchill クライアントアーキテクチャで作成されたすべての JSP ページに含まれるコード) に、検証サービスを呼び出し、実際に開始する前にページのレンダリングが適切かどうかを判断するというロジックがあります。
選択後検証ロジックで許可される唯一の場所がバリデータです。事前検証と異なり、選択後検証にはソリューショングループ、役割ベースの UI サービス、またはフィルタとのやり取りはありません。このため、選択後検証のシーケンスは事前検証よりもはるかに単純です。
最初に、クライアントインフラストラクチャが検証サービスを呼び出します。サービスは、レンダリングされるページに対応する操作 (この操作は検証キーで表されます) を渡します。また操作とともに、コンテキストデータも検証基準インスタンスの形式で渡します。
キー
1. クライアントインフラストラクチャが、レンダリングされるページに対応する操作 (検証キーで表されます) を渡す検証サービスと、コンテキストデータ (検証基準インスタンスで表されます) を呼び出します。
クライアントインフラストラクチャから選択後検証リクエストを受け取った後、検証サービスは指定した操作と関連付けられているバリデータがあるかどうかを確認します。
バリデータは、事前検証と同様に、action id とその操作のバリデータクラスのクラス名をリンクするエントリを service.properties.xconf ファイルに作成することで操作に関連付けられます。
その操作に登録されているバリデータがない場合、ユーザーは操作の実行を許可されます。一方、操作に関連付けられたバリデータがある場合は、検証サービスがそのバリデータを呼び出し、その操作の検証ステータスを取得します。
キー
1. クライアントインフラストラクチャが、レンダリングされるページに対応する操作 (検証キーで表されます) を渡す検証サービスと、コンテキストデータ (検証基準インスタンスで表されます) を呼び出します。
2. 検証サービスが、操作に関連付けられたバリデータがあるかどうかを確認します。ある場合は、バリデータを呼び出して、その操作の検証ステータス (許可または拒否) を取得します。
バリデータが検証結果を返した後、検証サービスが行うのは、バリデータから返された検証結果をクライアントインフラストラクチャに渡すことです。ステータスが許可か拒否かにかかわらず、クライアントインフラストラクチャは確認を行います。ステータスが "許可" の場合は、ページまたはウィザードが表示されます。ステータスが "拒否" の場合、ユーザーは前のページにリダイレクトされます。また、バリデータが操作の拒否理由を示すメッセージを返した場合は、そのメッセージがユーザーに表示されます。
キー
1. クライアントインフラストラクチャが、レンダリングされるページに対応する操作 (検証キーで表されます) を渡す検証サービスと、コンテキストデータ (検証基準インスタンスで表されます) を呼び出します。
2. 検証サービスが、操作に関連付けられたバリデータがあるかどうかを確認します。ある場合は、バリデータを呼び出して、その操作の検証ステータス (許可または拒否) を取得します。
3. 検証サービスが検証ステータス (検証結果に内包) をバリデータからクライアントインフラストラクチャに渡します。そこで、ターゲットページ/ウィザードを表示するか、または操作を起動したページにユーザーを戻します。