静态模型:在部署时创建新的实体和属性

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. 编辑 wimextension.xsd 并添加新实体类型和属性类型的定义。确保 XSD 文件的格式正确。 使用 virtual member manager 名称空间 URI 以外的其他名称空间 URI:(http://www.ibm.com/websphere/wim)。 确保 XSD 文件的格式正确。使用 virtual member manager 名称空间 URI 以外的其他名称空间 URI:(http://www.ibm.com/websphere/wim)。
    <?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>
  4. 基于更新后的 XSD 文件重新生成静态模型包,并将 JAR 文件部署在类路径下。
  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 服务。


使用条款 | 反馈