| Flex 2 開発ガイド > データアクセスと相互接続性 > Data Management Service の設定 > Data Management Service の設定について | |||
Data Management Service を設定する際に実行する通常の作業としては、Data Management Service 宛先の定義、宛先へのセキュリティの適用、およびログ設定の変更があります。"Data Management Service 宛先" は、Data Management Service を使用してアプリケーションでデータの分散と同期を実現する際にデータの受け渡し相手となるエンドポイントです。Data Management Service 宛先は、"services-config.xml" ファイル、または "services-config.xml" ファイルを参照によってインクルードしているファイルの、データサービスセクションで設定します。デフォルトでは、"services-config.xml" ファイルは Adobe Flex データサービスのある Web アプリケーションの WEB_INF/flex ディレクトリにあります。Flex データサービスに付属の "services-config.xml" ファイルでは、Adobe によって、Data Management Service、Message Service、Remoting Service、Proxy Service の各設定ファイルが参照されています。
次の例は、基本的な Data Management Service 設定です。Java アダプタを使用してデータリソースとやり取りする宛先が 1 つあります。ActionScript アダプタはデフォルトアダプタとして設定されています。
<service id="data-service" class="flex.data.DataService" messageTypes="flex.data.messages.DataMessage">
<adapters>
<adapter-definition id="actionscript"
class="flex.data.adapters.ASObjectAdapter" default="true"/>
<adapter-definition id="java-adapter"
class="flex.data.adapters.JavaAdapter"/>
</adapters>
<default-channels>
<channel ref="my-rtmp"/>
</default-channels>
<destination id="contact">
<adapter ref="java-adapter" />
<properties>
<source>dev.contacts.ContactAssembler</source>
<scope>application</scope>
<cache-items>true</cache-items>
<metadata>
<identity property="contactId"/>
</metadata>
<network>
<session-timeout>20</session-timeout>
<paging enabled="true" pageSize="10" />
<throttle-inbound policy="ERROR" max-frequency="500"/>
<throttle-outbound policy="REPLACE" max-frequency="500"/>
</network>
<server>
<fill-method>
<name>loadContacts</name>
</fill-method>
<fill-method>
<name>loadContacts</name>
<params>java.lang.String</params>
</fill-method>
<sync-method>
<name>syncContacts</name>
</sync-method>
</server>
</properties>
</destination>
</service>
Data Management Service 宛先では、メッセージを伝達するメッセージチャネルを 1 つまたは複数参照し、ネットワーク関連プロパティとサーバー関連プロパティを格納します。また、"データアダプタ" も参照できます。データアダプタは、宛先で Java オブジェクトなどの特定種類のインターフェイスを通じてデータを操作できるようにするサーバーサイドコードです。特定のデータアダプタをデフォルトデータアダプタとして設定することもできます。この場合は宛先の中でデータアダプタを参照する必要はありません。宛先に対するセキュリティ制限を宛先で参照または定義することもできます。
Java アダプタを使用する場合は、他のアダプタの場合の作業とは異なり、アセンブラクラスを記述します。"アセンブラクラス" は、データリソースと間接的または直接的にやり取りする Java クラスです。通常のデザインパターンでは、データリソースを呼び出す DAO (データアクセスオブジェクト) をアセンブラで呼び出します。
Data Management Service 宛先ではメッセージチャネルを 1 つまたは複数参照します。メッセージチャネルは設定ファイル内の任意の場所で定義します。パブリッシュ/サブスクライブメッセージングで最もよく使用される 2 つのチャネルとして、RTMP (Realtime Message Protocol) チャネルと、メッセージのポーリングが有効にされた AMF (Action Message Format) チャネルがあります。
RTMP チャネルではクライアントとサーバー間の接続が管理されるため、クライアントでサーバーをポーリングする必要がありません。ポーリングが有効にされた AMF チャネルでは、サーバーがポーリングされ、新しいメッセージがないかが調べられます。メッセージチャネルの詳細については、メッセージチャネルの設定を参照してください。
データアダプタはデータリソースとやり取りするためのインフラストラクチャを提供します。データアダプタは宛先で指定します。アダプタ固有の設定を指定することもできます。
データアダプタの詳細については、Data Management Service 宛先の設定を参照してください。
宛先に対するアクセス権限を定義する "セキュリティ制限" を使用すると、宛先をセキュリティ保護できます。セキュリティ制限は、ユーザーが宛先にアクセスできるようにする前にユーザーの認証および承認を行う場合に使用します。認証では、基本認証を使用するかカスタム認証を使用するかを指定できます。承認では、承認に必要なロールを指定できます。
セキュリティ制限は宛先でインラインで宣言できます。または、セキュリティ制限をグローバルに宣言し、宛先でその id 値によって参照できます。
セキュリティの詳細については、宛先のセキュリティ保護を参照してください。
Flex 2.01