LdapAdapter getDateString(Object) WIMSystemException CWWIM1998E Unparseable date
After LDAP integration in toolkit environment while testing integration we came across following exception.
com.ibm.ws.wim.adapter.ldap.LdapAdapter getDateString(Object)
com.ibm.websphere.wim.exception.WIMSystemException: CWWIM1998E Durante l'elaborazione si รจ verificato il seguente errore di sistema: 'java.text.ParseException: Unparseable date: "20190610101654.793-0000Z"'.
at com.ibm.ws.wim.adapter.ldap.LdapAdapter.getDateString(LdapAdapter.java:4000)
at com.ibm.ws.wim.adapter.ldap.LdapAdapter.setPropertyValue(LdapAdapter.java:4047)
at com.ibm.ws.wim.adapter.ldap.LdapAdapter.populateEntity(LdapAdapter.java:3906)
at com.ibm.ws.wim.adapter.ldap.LdapAdapter.createEntityFromLdapEntry(LdapAdapter.java:1527)
at com.ibm.ws.wim.adapter.ldap.LdapAdapter.get(LdapAdapter.java:1629)
at com.ibm.ws.wim.ProfileManager.getImpl(ProfileManager.java:1756)
at com.ibm.ws.wim.ProfileManager.genericProfileManagerMethod(ProfileManager.java:374)
at com.ibm.ws.wim.ProfileManager.get(ProfileManager.java:427)
at com.ibm.websphere.wim.ServiceProvider.get(ServiceProvider.java:410)
at com.ibm.websphere.wim.client.LocalServiceProvider.get(LocalServiceProvider.java:364)
at com.ibm.commerce.member.syncbeans.VMMProxy$3.run(VMMProxy.java:1080)
at com.ibm.ws.security.auth.ContextManagerImpl.runAs(ContextManagerImpl.java:5487)
at com.ibm.ws.security.auth.ContextManagerImpl.runAsSystem(ContextManagerImpl.java:5613)
at com.ibm.commerce.member.syncbeans.VMMProxy.getMemberByDNWithRoot(VMMProxy.java:1089)
at com.ibm.commerce.member.syncbeans.VMMProxy.getMemberByDN(VMMProxy.java:908)
at com.ibm.commerce.member.syncbeans.SyncBeanBase.createInLDAP(SyncBeanBase.java:804)
at com.ibm.commerce.member.syncbeans.SyncBeanBase.refresh(SyncBeanBase.java:1338)
at com.ibm.commerce.member.syncbeans.OrganizationSyncBean.<init>(OrganizationSyncBean.java:435)
at com.ibm.commerce.member.syncbeans.OrganizationSyncBean.findByMemberId(OrganizationSyncBean.java:596)'
Found the solution mentioned at this link: https://www-01.ibm.com/support/docview.wss?uid=swg1PM54864 but the timestamp format to use was not clear.
We executed the following command to fix the issue:
$AdminTask setIdMgrCustomProperty {-id <LDAP_REPO_ID> -name ldapTimestampFormat -value "yyyyMMddHHmmss.SSSZ" }
$AdminConfig save
where <LDAP_REPO_ID> we can find from
WAS console -> Security -> Global security -> Federated repositories
check the 'Repository Identifier'.
OR we can also check wimconfig.xml 'config:repositories' tag id value corresponding to config:LdapRepositoryType.
and yyyyMMddHHmmss.SSSZ you can use if you are getting error for the timestamp in the same format as in the above error, otherwise you may have to use different value as per LDAP's date format.
com.ibm.ws.wim.adapter.ldap.LdapAdapter getDateString(Object)
com.ibm.websphere.wim.exception.WIMSystemException: CWWIM1998E Durante l'elaborazione si รจ verificato il seguente errore di sistema: 'java.text.ParseException: Unparseable date: "20190610101654.793-0000Z"'.
at com.ibm.ws.wim.adapter.ldap.LdapAdapter.getDateString(LdapAdapter.java:4000)
at com.ibm.ws.wim.adapter.ldap.LdapAdapter.setPropertyValue(LdapAdapter.java:4047)
at com.ibm.ws.wim.adapter.ldap.LdapAdapter.populateEntity(LdapAdapter.java:3906)
at com.ibm.ws.wim.adapter.ldap.LdapAdapter.createEntityFromLdapEntry(LdapAdapter.java:1527)
at com.ibm.ws.wim.adapter.ldap.LdapAdapter.get(LdapAdapter.java:1629)
at com.ibm.ws.wim.ProfileManager.getImpl(ProfileManager.java:1756)
at com.ibm.ws.wim.ProfileManager.genericProfileManagerMethod(ProfileManager.java:374)
at com.ibm.ws.wim.ProfileManager.get(ProfileManager.java:427)
at com.ibm.websphere.wim.ServiceProvider.get(ServiceProvider.java:410)
at com.ibm.websphere.wim.client.LocalServiceProvider.get(LocalServiceProvider.java:364)
at com.ibm.commerce.member.syncbeans.VMMProxy$3.run(VMMProxy.java:1080)
at com.ibm.ws.security.auth.ContextManagerImpl.runAs(ContextManagerImpl.java:5487)
at com.ibm.ws.security.auth.ContextManagerImpl.runAsSystem(ContextManagerImpl.java:5613)
at com.ibm.commerce.member.syncbeans.VMMProxy.getMemberByDNWithRoot(VMMProxy.java:1089)
at com.ibm.commerce.member.syncbeans.VMMProxy.getMemberByDN(VMMProxy.java:908)
at com.ibm.commerce.member.syncbeans.SyncBeanBase.createInLDAP(SyncBeanBase.java:804)
at com.ibm.commerce.member.syncbeans.SyncBeanBase.refresh(SyncBeanBase.java:1338)
at com.ibm.commerce.member.syncbeans.OrganizationSyncBean.<init>(OrganizationSyncBean.java:435)
at com.ibm.commerce.member.syncbeans.OrganizationSyncBean.findByMemberId(OrganizationSyncBean.java:596)'
Found the solution mentioned at this link: https://www-01.ibm.com/support/docview.wss?uid=swg1PM54864 but the timestamp format to use was not clear.
We executed the following command to fix the issue:
$AdminTask setIdMgrCustomProperty {-id <LDAP_REPO_ID> -name ldapTimestampFormat -value "yyyyMMddHHmmss.SSSZ" }
$AdminConfig save
where <LDAP_REPO_ID> we can find from
WAS console -> Security -> Global security -> Federated repositories
check the 'Repository Identifier'.
OR we can also check wimconfig.xml 'config:repositories' tag id value corresponding to config:LdapRepositoryType.
and yyyyMMddHHmmss.SSSZ you can use if you are getting error for the timestamp in the same format as in the above error, otherwise you may have to use different value as per LDAP's date format.
Comments
Post a Comment