複合アプリケーション - 設計と管理
たとえば、コンポーネントが「PersonName」という名前のプロパティを発行するとします。他のコンポーネントはその個人の最近のメール、この個人の将来の会議などを表示しようとします。通常、このようなターゲットコンポーネントにはすべての文書を表示するビューがありますが、異なるビューはありません。特に、特定の 1 人のみのすべての文書のビューはありません。このためには、キーでビューをソートする必要があります。
これを実現するために、組み込みアクションが複合アプリケーションコンポーネントのデータベースに追加されました。最初に列をソートし、フィルタをキーとして使用し一致するもののみを表示することによって、このアクションは現在のユーザーインターフェースビューをフィルタリングします。ビューがカテゴリ化されている場合、見つかったカテゴリが展開され、次のレベルでのみ文書が表示されます。
このアクションは FilterCurrentUIViewViaFirstSortedColumn という名前で、渡された KeyFilterType という名前のプロパティ (文字列型) を取得します。キーでフィルタリングする必要があるビューには、渡されたプロパティ「KeyFilterType」 (文字列型) を取得するアクション「FilterCurrentUIViewViaFirstSortedColumn」の正確な定義が含まれている必要があります。
このアクションの使用方法を次のサンプル WSDL に示します。この WSDL には、データ型とプロパティの正確な定義が含まれている必要があります。
<types>
<xsd:schema targetNamespace="com.ibm.compositeapps.samples">
<xsd:simpleType name="KeyFilterType">
<xsd:restriction base="xsd:string"/>
</xsd:simpleType>
</xsd:schema>
</types>
<operation name="UpdateUI_Operation">
<portlet:action name="FilterCurrentUIViewViaFirstSortedColumn
caption="FilterCurrentUIViewViaFirstSortedColumn"
description="FilterCurrentUIViewViaFirstSortedColumn "/>
<input>
<portlet:param name="KeyFilter" partname="KeyFilterPart"
caption="caption.KeyFilter"
description="description.KeyFilter"/>
</input>
</operation>
Lotus Notes リスナーコンポーネントはアクションを使用し、API を呼び出してビューをフィルタリングし、ウィンドウを更新します。この結果、表示されている Lotus Notes ユーザーインターフェースビューは、新しいフィルタを使用して同じ Lotus Notes ウィンドウで更新されます。
たとえば、ソースコンポーネントが個人名であるプロパティ「KeyFilterType」を発行するとします。ターゲットコンポーネントのアクションが呼び出され、ビューにフィルタが適用されます。
Composite Application Editor を使用すると、ターゲットコンポーネントの組み込みアクションを使用してソースコンポーネントのプロパティをワイヤリングできます。
関連項目