When you use the LiveCycle ES API method "DirectoryManagerServiceClient.findGroupMembers()" in a custom application, the following exception occurs:
####<Mar 8, 2010 9:31:28 AM MET> <Info> <EJB> <sunc01126> <wl01ialc01> <[ACTIVE] ExecuteThread: '1' for queue:
'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <BEA1-0F2A55F8B8D325A5DE0E> <> <1268037088883> <BEA-010051>
<EJB Exception occurred during invocation from home:
com.adobe.idp.um.businesslogic.directoryservices.DirectoryServicesManagerBean_jrc290_LocalHomeImpl@ad9846 threw exception:
com.adobe.idp.common.errors.exception.IDPSystemExceptionorigin: |
[com.adobe.idp.storeprovider.jdbc.DBObjectSet] errorCode:12290 errorCodeHEX:0x3002 message:nextElement failure|
[com.adobe.idp.storeprovider.jdbc.DBResult] errorCode:12290 errorCodeHEX:0x3002 message:object update failure|
[com.adobe.idp.common.infomodel.StoreId] errorCode:12550 errorCodeHEX:0x3106 message:string length wrong
com.adobe.idp.common.errors.exception.IDPSystemExceptionorigin: |
[com.adobe.idp.storeprovider.jdbc.DBObjectSet] errorCode:12290 errorCodeHEX:0x3002 message:nextElement failure|
[com.adobe.idp.storeprovider.jdbc.DBResult] errorCode:12290 errorCodeHEX:0x3002 message:object update failure|
[com.adobe.idp.common.infomodel.StoreId] errorCode:12550 errorCodeHEX:0x3106 message:string length wrong
at com.adobe.idp.common.util.IDPUtil.raiseIDPSystemException(IDPUtil.java:147)
at com.adobe.idp.um.businesslogic.directoryservices.DirectoryServicesManagerBean.findGroupMembers(DirectoryServicesManagerBean.java:4261)
at com.adobe.idp.um.businesslogic.directoryservices.DirectoryServicesManagerBean_jrc290_ELOImpl.findGroupMembers(DirectoryServicesManagerBean_jrc290_ELOImpl.java:1504)
at com.adobe.idp.um.api.impl.DirectoryManagerImpl.findGroupMembers(DirectoryManagerImpl.java:928)
at com.adobe.idp.um.dscservice.DirectoryManagerServiceImpl.findGroupMembers(DirectoryManagerServiceImpl.java:238)
at sun.reflect.GeneratedMethodAccessor1366.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
The most likely cause of this exception is that there is an invalid GroupOID being passed into the search filter used in the findGroupMembers() method. The OID strings are identifiers with 36 characters. You cannot use the standard Group name for the search filter. You can verify the GroupOID and the members of the group are valid by using the following code:
DirectoryManagerServiceClient dmsc = new DirectoryManagerServiceClient(myFactory);
Principal group = dmsc.findPrincipal("9462F437-8669-0D04-24F8-F00CDF80A09E");
System.out.println("Group found: "+group.getCommonName());
GroupMembershipSearchFilter gsf = new GroupMembershipSearchFilter();
gsf.setGroupOid("9462F437-8669-0D04-24F8-F00CDF80A09E");
List<Principal> members = dmsc.findGroupMembers(gsf);
System.out.println("Members found:"+members.size());
for(Principal p : members){
System.out.println("Principal found: " + p.getCommonName());
}
Keywords:
cpsid_83009

