アダプター構成スキーマ
アダプターのデザイン時構成では、さまざまな種類のスキーマを使用します。 プロパティ値の可視性とスコープに応じて、さまざまなスキーマを変更して使用します。
ハンドラーのスキーマ
ハンドラーから取得したアダプター構成は、アダプターとそのコンシューマーすべてにグローバル スコープで適用されます。 管理者は、BizTalk Server管理コンソールを使用してアダプターの受信ハンドラーまたは送信ハンドラーを拡張し、指定したホストのプロパティを表示することで、設計時にハンドラーの構成を静的に変更できます。
SDK に付属するサンプル ファイル アダプターには、受信場所、送信ポート、受信ハンドラー、および送信ハンドラーの構成に使用する一連の XSD ファイルが含まれています。 カスタム アダプターが必要とする構成プロパティを受け取るよう、これらの XSD ファイルを変更します。 サンプル ファイル アダプターに含まれているファイルのうち、変更する必要があるのは、スキーマ ファイル TransmitHandler.xsd および ReceiveHandler.xsd です。 これらのファイルは、BizTalk Server管理コンソールでハンドラーを構成するために使用されるプロパティ ページを制御することによって、送信ハンドラーと受信ハンドラーをそれぞれ構成します。
アダプターの要件に基づいて、各エンドポイントに必要な構成プロパティの一覧を作成します。 すべての構成プロパティがグローバルである場合、変更する必要があるのは送受信ポートの構成だけです。 送信ポートまたは受信場所ごとにアダプター プロパティを設定する必要がある場合、受信場所と送信ポートの構成ファイルも変更しなければなりません。
アダプター フレームワークには、一般的なアダプター構成の要件をサポートするための、スキーマ拡張機能および詳細構成オプションが用意されています。 また、サンプル ファイル アダプターに含まれているスキーマにはない拡張機能も用意されています。 Adapter Framework スキーマ拡張機能の詳細については、「 アダプター フレームワーク構成スキーマ拡張機能」を参照してください。 カスタム ドロップダウン エディターやカスタム型コンバーターなどの高度な構成オプションの詳細については、「 アダプターの高度な構成コンポーネント」を参照してください。
TransmitHandler.xsd ファイルのコードを、このトピックの最後に示します。このコードにより、次のプロパティ ページが作成されます。
TransmitHandler.xsd ファイルによって作成される送信ハンドラー プロパティ ページ
以下に<示す TransmitHandler.xsd コードでの baf:designer<>、baf:displayname>、および <baf:description> タグの使用に注意してください。 これらは、アダプター フレームワークによって提供されているカスタム装飾であり、このようなプロパティ ページの生成を高速化します。
アダプター フレームワーク内で使用できる装飾の一覧については、「 アダプター フレームワーク構成スキーマ装飾タグ」を参照してください。
このスキーマには、要素が 1 つだけ含まれており、URI 要素は含まれていません。
重要
既定のアダプター スキーマに、機密性の高い顧客データを格納しない。 セキュリティ上の理由により、ユーザー名とパスワードの情報を構成するのは、アダプターの展開後にしてください。 これにより、エンタープライズ シングル サインオン (SSO) データベースに確実に情報が格納されます。 SSO データベースの詳細については、「 SSO の使用」を参照してください。
<?xml version="1.0" encoding="utf-16"?>
<xs:schema xmlns:baf="BiztalkAdapterFramework.xsd"
xmlns:b="http://schemas.microsoft.com/BizTalk/2003"
xmlns="http://tempuri.org/XMLSchema1.xsd"
elementFormDefault="qualified" targetNamespace="http://tempuri.org/XMLSchema1.xsd"
id="TransmitHandler" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="Config">
<xs:complexType>
<xs:sequence>
<xs:element default="50" name="sendBatchSize" type="xs:int" >
<xs:annotation>
<xs:appinfo>
<baf:designer>
<baf:displayname _locID="sendBatchSizeName">Batch Size</baf:displayname>
<baf:description _locID="sendBatchSizeDesc">Enter the
maximum number of files to be transmitted per batch</baf:description>
</baf:designer>
</xs:appinfo>
</xs:annotation>
</xs:element>
<xs:element default="4096" name="bufferSize" type="xs:int" >
<xs:annotation>
<xs:appinfo>
<baf:designer>
<baf:displayname _locID="bufferSizeName">Write Buffer Size</baf:displayname>
<baf:description _locID="bufferSizeDesc">Enter the size of
the buffer used to write the file</baf:description>
</baf:designer>
</xs:appinfo>
</xs:annotation>
</xs:element>
<xs:element default="1" name="threadsPerCPU" type="xs:int" >
<xs:annotation>
<xs:appinfo>
<baf:designer>
<baf:displayname _locID="threadsPerCPUName">Threads Per CPU</baf:displayname>
<baf:description _locID="threadsPerCPUDesc">Enter the
number of threads per CPU to execute in the thread pool</baf:description>
</baf:designer>
</xs:appinfo>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
送信ポートおよび受信場所のスキーマ
アダプターにポート固有のプロパティを設定するには、受信場所および送信ポートの構成スキーマを変更します。 スキーマ ファイル TransmitLocation.xsd および ReceiveLocation.xsd では、それぞれ送信ポートと受信場所を構成します。
アダプター フレームワークには、一般的なアダプター構成の要件をサポートするための、スキーマ拡張機能および詳細構成オプションが用意されています。 Adapter Framework スキーマ拡張機能の詳細については、「 アダプター フレームワーク構成スキーマ拡張機能」を参照してください。 カスタム ドロップダウン エディターやカスタム型コンバーターなどの高度な構成オプションの詳細については、「 アダプターの高度な構成コンポーネント」を参照してください。
TransmitLocation.xsd ファイルのコードを以下に示します。このコードにより、次のプロパティ ページが作成されます。
[
サンプル ファイル アダプターの送信ポート プロパティ ページを示します
以下の TransmitLocation.xsd ファイルでは、送信ポート構成に送信ハンドラーと同様に baf:designer>、baf:displayname>、baf<:description> タグが含まれており<、baf:category> タグも使用<されることに注意<してください。 このカテゴリ タグを使用すると、複数のプロパティをグループ化できます。 カテゴリが複数ある場合は、展開したり折りたたんだりできます。また、カテゴリに含まれるプロパティの上には、そのカテゴリがヘッダーとして灰色で表示されます。 詳細については、「 Adapter Framework 構成スキーマ拡張機能」を参照してください。
このスキーマには URI フィールドも含まれています。 これは、送信ポート プロパティ ページのフィールド情報をすべて入力した後に表示されるページに、アダプターによる検証処理中に自動入力されます。
<?xml version="1.0" encoding="utf-16"?>
<xs:schema xmlns:baf="BiztalkAdapterFramework.xsd" xmlns:b="http://schemas.microsoft.com/BizTalk/2003" xmlns="http://tempuri.org/XMLSchema1.xsd" elementFormDefault="qualified" targetNamespace="http://tempuri.org/XMLSchema1.xsd" id="TransmitLocation" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="Config">
<xs:complexType>
<xs:sequence>
<xs:element name="directory" type="xs:string">
<xs:annotation>
<xs:appinfo>
<baf:designer xmlns:baf="BiztalkAdapterFramework.xsd">
<baf:displayname _locID="sendDirectoryName">Directory</baf:displayname>
<baf:description _locID="sendDirectoryDesc">Directory to write the file to</baf:description>
<baf:category _locID="transmitLocationCategory">Transmit Location</baf:category>
</baf:designer>
</xs:appinfo>
</xs:annotation>
</xs:element>
<xs:element default="%MessageID%.xml" name="fileName" type="xs:string">
<xs:annotation>
<xs:appinfo>
<baf:designer xmlns:baf="BiztalkAdapterFramework.xsd">
<baf:displayname _locID="fileNameName">File Name</baf:displayname>
<baf:description _locID="fileNameDesc">The name of the file that will be written</baf:description>
<baf:category _locID="transmitLocationCategory">Transmit Location</baf:category>
</baf:designer>
</xs:appinfo>
</xs:annotation>
</xs:element>
<xs:element default="2" name="fileCopyMode" type="CopyMode">
<xs:annotation>
<xs:appinfo>
<baf:designer xmlns:baf="BiztalkAdapterFramework.xsd">
<baf:displayname _locID="fileCopyModeName">File Mode</baf:displayname>
<baf:category _locID="transmitLocationCategory">Transmit Location</baf:category>
</baf:designer>
</xs:appinfo>
</xs:annotation>
</xs:element>
<xs:element name="uri" type="xs:string">
<xs:annotation>
<xs:appinfo>
<baf:designer xmlns:baf="BiztalkAdapterFramework.xsd">
<baf:browsable show="false" />
</baf:designer>
</xs:appinfo>
</xs:annotation>
</xs:element>
<!-- An example of how an SSO affiliate application would be configured for this endpoint: -->
<!--
<xs:element name="ssoAffiliateApplication" type="baf:SSOList">
<xs:annotation>
<xs:appinfo>
<baf:designer>
<baf:displayname _locID="ssoAffiliateApplicationName">SSO Affiliate</baf:displayname>
<baf:description _locID="ssoAffiliateApplicationDesc">The Single Sign On (SSO) Affiliate Application</baf:description>
<baf:category _locID="ftpCategory">FTP</baf:category>
</baf:designer>
</xs:appinfo>
</xs:annotation>
</xs:element>
-->
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:simpleType name="CopyMode">
<xs:restriction base="xs:int">
<xs:enumeration value="0">
<xs:annotation>
<xs:appinfo>
<baf:designer xmlns:baf="BiztalkAdapterFramework.xsd">
<baf:displayname _locID="appendName">Append</baf:displayname>
</baf:designer>
</xs:appinfo>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="1">
<xs:annotation>
<xs:appinfo>
<baf:designer xmlns:baf="BiztalkAdapterFramework.xsd">
<baf:displayname _locID="createName">Create</baf:displayname>
</baf:designer>
</xs:appinfo>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="2">
<xs:annotation>
<xs:appinfo>
<baf:designer xmlns:baf="BiztalkAdapterFramework.xsd">
<baf:displayname _locID="createNewName">CreateNew</baf:displayname>
</baf:designer>
</xs:appinfo>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
</xs:schema>