動的モデル: wimextension.xsd ファイルを使用してデプロイメント時に新しいエンティティーとプロパティーを追加する

Virtual member manager は、動的モデルを使用するように構成されています。 デプロイメント時に、新しいエンティティー・タイプと、それに関する新しいプロパティー・タイプを作成できます。

このタスクについて

新しいエンティティー・タイプと、それに関する新しいプロパティー・タイプを追加する必要があります。 新しいエンティティー・タイプとプロパティー・タイプのスキーマは、カスタム拡張 XSD ファイル (例えば、wimextension.xsd) にのみ追加できます。 次の例では、新しい エンティティー・タイプ ContactPerson を作成して、このエンティティー・タイプに新しいプロパティー・タイプ cellPhone を 追加することができます。

手順

  1. Virtual member manager のサービスを停止します。
  2. VMM_HOME¥model ディレクトリーの下にある wimextension.xsd ファイルを開きます。 このファイルが存在しない場合には、同じ名前または別の名前で新しいファイルを作成してください。
    注: VMM_HOME は、Virtual member manager のファイルが置かれているディレクトリーです。 このロケーションは、システムのプロパティー wim.home または user.install.root/config/cells/local.cell/wim のいずれかに設定されます。
  3. Virtual member manager の構成ファイル (wimconfig.xml) を開き、プロパティー xsdFileName がステップ 2 で使用したファイル名と同じであることを確認します。
    <config:dynamicModel xsdFileName="wimextension.xsd"/>
  4. wimextension.xsd を編集し、新しいエンティティー・タイプとプロパティー・タイプの定義を追加します。 XSD ファイルの形式が適切であることを確認します。 Virtual member manager の名前空間 URI (http://www.ibm.com/websphere/wim) とは異なる名前空間 URI を使用します。
    <?xml version="1.0" encoding="UTF-8"?>
    <xsd:schema targetNamespace="http://www.ibm.com/websphere/wim/ext" 
                      xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
                      xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" 
                      xmlns:wimext="http://www.ibm.com/websphere/wim/ext" 
                      ecore:package="com.ibm.websphere.wim.model.ext" 
                      xmlns:wim="http://www.ibm.com/websphere/wim">
    <xsd:import schemaLocation="wimdatagraph.xsd" 
                namespace="http://www.ibm.com/websphere/wim"/>
    	<!-- Custom properties -->
    	<xsd:element name="cellPhone" type="xsd:string"/>
    	<!-- Custom entities -->
    	<xsd:complexType name="ContactPerson">
    		<xsd:complexContent>
    			<xsd:extension base="wim:PersonAccount">
    				<xsd:sequence>
    					<xsd:element maxOccurs="1" minOccurs="0" ref="wimext:cellPhone"/>
    				</xsd:sequence>
    			</xsd:extension>
    		</xsd:complexContent>
    	</xsd:complexType>
    </xsd:schema>
  5. 新しいエンティティー・タイプを、Virtual member manager の構成ファイル (wimconfig.xml) に手動で追加します。
    <config:supportedEntityTypes defaultParent="cn=users,dc=yourco,dc=com" 
        name="wimext:ContactPerson"> 
        <config:rdnProperties>uid</config:rdnProperties>
    </config:supportedEntityTypes>
    
    <config:repositories xsi:type="config:LdapRepositoryType" ...> 
        <config:EntityTypesNotAllowDelete>wimext:ContactPerson</config:EntityTypesNotAllowDelete> 
        <config:ldapEntityTypes name="wimext:ContactPerson"> 
            <config:rdnAttributes name="uid"/>
            <config:objectClasses>eContactPerson</config:objectClasses>
            <config:objectClassesForCreate>eContactPerson</config:objectClassesForCreate>
            <config:objectClassesForCreate>inetOrgPerson</config:objectClassesForCreate>
        </config:ldapEntityTypes>
    </config:repositories>
  6. 新しいプロパティー・タイプを、各リポジトリー・アダプターに手動で追加します。
    LDAP アダプター
    LDAP 属性への新しいプロパティー・タイプのマッピングを wimconfig.xml 構成ファイルに追加します。
    DB アダプター
    新しいプロパティー・タイプの定義を DB アダプターのプロパティー XML ファイル (wimDBProperties.xml) に追加し、DB プロパティー・ローダーを実行します。
  7. Virtual member manager のサービスを再開します。


利用条件 | フィードバック