Novell Home

Lotus Notes Troubleshooting

Novell Cool Solutions: Tip
By Perry Nuffer

Digg This - Slashdot This

Posted: 19 Jan 2006
 

Problem

My Lotus Notes driver is returning a strange error when trying to remove a non-present value from a person document of the Notes Address Book. The driver returns the following error:

<status event-id="dsasdk01#20041118161252#1#2" level="retry">NotesSubscriptionShim: processModifyEvent Failure synchronizing to Notes. ID = 4362. Message: Vector must contain objects all of the same class</status>

Solution

The "Vector must contain objects all of the same class" error can occur when an attribute within eDirectory is of one type (type="string", for a value of syntax "Case Ignore String"), and this attribute is being mapped to a Notes document field of different type (type="int", for a value of data type "Number List").

To remedy this problem, it is necessary to use a policy that inserts the appropriate XML text, such as type="int" into each XDS value element.

Note: This solution works for all supported IDM OS's.

<modify class-name="User" src-dn="\Sam">
 <association state=”associated”>0DEB716EFBCC809487256E910076D11D</association>
 <modify-attr attr-name="Telephone Number">
   <remove-value>
     <value type=”string”>555-2222</value>
   </remove-value>
   <add-value>
     <value type=”string”>555-1212</value>
   </add-value>
 </modify-attr>
 <modify-attr attr-name="PhoneExtension">
   <remove-value>
     <value type=”int”>1234</value>
   </remove-value>
   <add-value>
     <value type=”int”>4321</value>
   </add-value>
 </modify-attr>
</modify>

Example

Depending on the circumstances, a policy similar to the XSLT policy below can provide the needed text insertion.

<xsl:template match="value[ancestor::*[@attr-name='PhoneExtension']]">
 <xsl:copy>
   <xsl:apply-templates select="@*"/>
   <xsl:attribute name="type">
     <xsl:value-of select="'int'"/>
   </xsl:attribute>
   <xsl:apply-templates select="node()"/>
 </xsl:copy>
</xsl:template>


Novell Cool Solutions (corporate web communities) are produced by WebWise Solutions. www.webwiseone.com

© 2014 Novell