属性に関するアプリケーション固有情報

ビジネス・オブジェクト属性のアプリケーション固有情報 (ASI) は、属性が単純属性であるか、 子ビジネス・オブジェクト (または子ビジネス・オブジェクトの配列) を表す属性であるかによって 異なります。子を表す属性のアプリケーション固有情報は、 親子関係が子に格納されるか親に格納されるかによっても 異なります。

単純属性のアプリケーション固有情報

単純属性では、アプリケーション固有情報の形式は、いくつかのパラメーターとその値で構成されています。属性のアプリケーション固有情報の形式は、.xsd ファイルの以下の実例セクションに示します。

.xsd ファイルの例
            <jdbcasi:ColumnName>pkey</jdbcasi:ColumnName>
            <jdbcasi:PrimaryKey>true</jdbcasi:PrimaryKey>
            <jdbcasi:FixedChar>true</jdbcasi:FixedChar>
         </jdbcasi:JDBCAttributeTypeMetadata>
         </appinfo>
         </annotation>
         <simpleType>
            <restriction base="string">
            <maxLength value="10"/>
            </restriction>
         </simpleType>         
         </element>
         <element name="custCode" type="string">
         <annotation>
         <appinfo source="WBI">
         <jdbcasi:JDBCAttributeTypeMetadata 
         xmlns:jdbcasi="http://www.ibm.com/xmlns/prod/websphere/j2ca/jdbc/metadata">
            <jdbcasi:ColumnName>ccode</jdbcasi:ColumnName>
            <jdbcasi:ForeignKey>custinfoObj/custCode</jdbcasi:ForeignKey>
         </jdbcasi:JDBCAttributeTypeMetadata>
         </appinfo>
         </annotation>         
         </element>
         <element name="firstName" type="string">
         <annotation>
         <appinfo source="WBI">
         <jdbcasi:JDBCAttributeTypeMetadata 
         xmlns:jdbcasi="http://www.ibm.com/xmlns/prod/websphere/j2ca/jdbc/metadata">
            <jdbcasi:ColumnName>fname</jdbcasi:ColumnName>
         </jdbcasi:JDBCAttributeTypeMetadata>
         </appinfo>
         </annotation>         
         </element>
         <element name="lastName" type="string">
         <annotation>
         <appinfo source="WBI">
         <jdbcasi:JDBCAttributeTypeMetadata 
         xmlns:jdbcasi="http://www.ibm.com/xmlns/prod/websphere/j2ca/jdbc/metadata">
            <jdbcasi:ColumnName>lname</jdbcasi:ColumnName>
         </jdbcasi:JDBCAttributeTypeMetadata>
         </appinfo>
         </annotation>         
         </element>

アダプターが処理する単純属性に必須のパラメーターは、列名のみです。例えば、以下は、列名のみを指定する形式です。ここで、ccode はカスタマー・コードを表します。

<jdbcasi:ColumnName>ccode</jdbcasi:ColumnName>

双方向言語で使用可能な 属性のアプリケーション固有情報パラメーターは ColumnName です。このパラメーターの 形式は、BiDiEIS、BiDi.Metadata、BiDiSkip、および BiDiSpecialFormat プロパティーに設定されている 属性に基づいて変換されます。これらのプロパティーについて詳しくは、 『参照』のセクションの『アダプター構成プロパティー』を 参照してください。双方向プロパティーについて詳しくは、双方向言語サポートの一般技術文書、および IBM® developerWorks(R) Web サイトのアダプター技術文書を参照してください。

属性のアプリケーション固有情報を設定する場合は、 下記の表に示すパラメーターを指定します。

表 1. 単純属性のアプリケーション固有情報
パラメーター 説明 デフォルト値 サポートされる双方向変換
BLOB Boolean この属性に対応するデータベース列が BLOB データ型であることを 指定します。BLOB データの表示中、アダプターは バイト数を 16 進値で表示するのみです。属性の 型は hexBinary です。 なし いいえ
ByteArray Boolean true の場合、アダプターはデータベースでバイナリー・データを読み取りおよび書き込みし、そのデータをストリングとしてアプリケーション・サーバーに渡します。 false いいえ
ChildBOType String 複合パラメーターの型を以下のいずれかとして指定します。
  • Struct、
  • Array、または
  • ResultSet
なし いいえ
ChildBOTypeName String ChildBOType アプリケーション固有情報の 値が Struct または Array の場合、このパラメーターの値は ユーザー定義型の名前を表します。   いいえ
CLOB Boolean この属性に対応するデータベース列が CLOB データ型であることを 指定します。String 属性型の場合にのみ 適用可能です。
注: CLOB データ型は以下のように定義されます。
  • CLOB 属性は String 型を持ち、この長さを使用して CLOB の長さを 定義します。
  • CLOB 属性は ASI CLOB=true を持ちます。
なし いいえ
ColumnName String この属性に対するデータベース列の名前。 なし はい
DateType String 対応するエレメントを Date、Time、または TimeStamp 型として 処理するように指定します。DateType パラメーターには、それに対する実際の値が保管されています。例えば以下のようになります。
  • <DateType>Date</DateType>
  • <DateType>Time</DateType>
  • <DateType>TimeStamp</DateType>
これらの値を設定するには、以下のフォーマットを使用します。
  • Date には yyyy-mm-dd を使用します。
  • Time には hh:mm:ss を使用します。
  • TimeStamp には yyyy-mm-dd hh:mm:ss を使用します。
なし いいえ
FixedChar Boolean

テーブル内の列が VARCHAR 型ではなく CHAR 型である場合に、 属性を固定長とするかどうかを指定します。例えば、ある特定の属性が CHAR 型の列にリンクされている場合、アダプターはデータベースを照会するときに、属性値をその属性の最大長までブランクで埋めます。

ビジネス・オブジェクトの .xsd ファイルでは、このパラメーターは手動で更新する必要があります。ファイルはテキスト・モードで編集したり、WebSphere® Integration Developer の Business Object Editor で編集したりできます。更新後は .xsd 内で検証エラーが発生していないことを確認してください。この表に続くこのパラメーターのコード例を参照してください。

false いいえ
ForeignKey String このプロパティーの値は、親子関係が親ビジネス・オブジェクトに格納されるか、子ビジネス・オブジェクトに格納されるかによって異なります。

親に保管される場合、子ビジネス・オブジェクトのタイプと、外部キー (Child_BO_name/Child_Property_Name) として使用される子ビジネス・オブジェクト内の属性の名前の両方が含まれるように値を設定します。

子に保管される場合は、外部キーとして使用される親ビジネス・オブジェクト内の属性の名前のみを含むように値を設定します。

属性が外部キーではない場合は、アプリケーション固有情報にこのパラメーターを含めないでください。

なし いいえ
OrderBy String このパラメーターに値が指定されている場合、このパラメーターが指定されている属性が子ビジネス・オブジェクト内に存在するものであれば、アダプターでは、検索照会の ORDER BY 文節で、その属性の値を使用します。アダプターは、子ビジネス・オブジェクトを昇順 (ASC) または降順 (DESC) で検索することができます。このパラメーターがアプリケーション固有情報に含まれていない場合、アダプターは、検索順序を指定するときに、このパラメーターが指定されている属性を使用しません。 なし いいえ
PrimaryKey Boolean 値が true の場合、このプロパティーはこの属性に関連した列が、データベース内の対応するテーブルの基本キーであることを暗黙指定します。 なし いいえ
SPParameterType String ストアード・プロシージャー・パラメーターのタイプを IP (入力専用)、OP (出力専用)、IO (入力および出力)、または RS (結果セット) から指定します。 なし いいえ
UniqueIdentifier (UID) String アダプターは、ビジネス・オブジェクトの固有 ID の生成に、このパラメーターを使用します。シーケンスと ID 列 (UID=AUTO|Sequence_Name) の生成がサポートされます。シーケンスを定義できるのは、DB2® および Oracle データベースのみです。ID 列を定義できるのは、DB2 および Microsoft® SQL Server です。属性で固有 ID が必要とされない場合は、このパラメーターをアプリケーション固有情報に含めないでください。 なし いいえ

ビジネス・オブジェクトの .xsd ファイル内の FixedChar パラメーターの例

<element name="primaryKey">
<annotation>
<appinfo source="WBI">
        <jdbcasi:JDBCAttributeTypeMetadata 
xmlns:jdbcasi="http://www.ibm.com/xmlns/prod/websphere/j2ca/jdbc/metadata">
                <jdbcasi:ColumnName>pkey</jdbcasi:ColumnName>
                <jdbcasi:PrimaryKey>true</jdbcasi:PrimaryKey>
                <jdbcasi:FixedChar>true</jdbcasi:FixedChar>
        </jdbcasi:JDBCAttributeTypeMetadata>
</appinfo>
</annotation>
<simpleType>
        <restriction base="string">
                <maxLength value="10"/>
        </restriction>
</simpleType>                
</element>

型が子ビジネス・オブジェクトの属性のアプリケーション固有情報

子ビジネス・オブジェクト (非単純属性) を 参照する属性には、2 つのアプリケーション固有情報パラメーターが使用されます。 このアプリケーション固有情報を設定する場合は、 下記の表に示すパラメーターを指定します。

表 2. 型が子ビジネス・オブジェクトの属性のアプリケーション固有情報
パラメーター 説明 デフォルト値 サポートされる双方向変換
KeepRelationship Boolean true の場合、このパラメーターは Update 操作中に子ビジネス・オブジェクトを削除しないようにします。 なし いいえ
Ownership Boolean このパラメーターは、子ビジネス・オブジェクトが親によって所有されることを指定します。true の場合、子ビジネス・オブジェクトに対する Create、 Update、および Delete 操作が許可されます。false の場合、これらの更新のうちのどれも、子ビジネス・オブジェクトには適用できません。親が作成されると、データベース内で関係の整合性が保持されるように、子が存在するかどうかが検証されます。 なし いいえ

ビジネス・オブジェクトの .xsd ファイル内の OWNERSHIP の例

<element minOccurs="0" name="addressObj" type="bons0:OutboundRtasserAddress"
maxOccurs="unbounded"> <annotation> <appinfo source="http://www.ibm.com/xmlns/prod/websphere/j2ca/jdbc/metadata"> <jdbcasi:JDBCAttributeTypeMetadata xmlns:jdbcasi=
"http://www.ibm.com/xmlns/prod/websphere/j2ca/jdbc/metadata"> <jdbcasi:Ownership>true</jdbcasi:Ownership> </jdbcasi:JDBCAttributeTypeMetadata> </appinfo> </annotation> </element> <element minOccurs="0" name="custinfoObj" type="bons1:OutboundRtasserCustinfo"
maxOccurs="1"> <annotation> <appinfo source="http://www.ibm.com/xmlns/prod/websphere/j2ca/jdbc/metadata"> <jdbcasi:JDBCAttributeTypeMetadata xmlns:jdbcasi=
"http://www.ibm.com/xmlns/prod/websphere/j2ca/jdbc/metadata"> <jdbcasi:Ownership>false</jdbcasi:Ownership> </jdbcasi:JDBCAttributeTypeMetadata> </appinfo> </annotation> </element>

ご利用条件 |


(c) Copyright IBM Corporation 2005, 2006.
(C) Copyright IBM Japan 2006
このインフォメーション・センターでは Eclipse テクノロジー (http://www.eclipse.org) が採用されています。