Fix (APAR): PK65354 Status: Fix Release: 6.1.0.9,6.1.0.13,6.1.0.11 Operating System: AIX,HP-UX,i5/OS,Linux,Linux pSeries,Linux zSeries,OS/400,Solaris,Windows Supersedes Fixes: CMVC Defect: PK65354 Byte size of APAR: 39023 Date: 2008-07-16 Abstract: Virtual member manager syntax difference of extId attribute will cause an exception. Description/symptom of problem: PK65354 resolves the following problem: ERROR DESCRIPTION: Virtual member manager (VMM) user accounts for IBM Directory Server (IDS) can not be used when Microsoft Active Directory Server is configured before IBM Directory Server in a federated repository. LOCAL FIX: None PROBLEM SUMMARY USERS AFFECTED: All users of WebSphere Application Server v6.1 who use federated repositories (virtual member manager). PROBLEM DESCRIPTION: Virtual member manager syntax difference of extId attribute will cause an exception. RECOMMENDATION: None When configuring multiple LDAP repsitories with different syntax of extId attributes, such as IDS and AD LDAP, virtual member manager (VMM) will throw a NumberFormatException when retrieving the entity. [3/19/08 18:45:14:859 CST] 00000021 LdapAdapter > com.ibm.ws.wim.adapter.ldap.LdapAdapter WIM_SPI get ENTRY [3/19/08 18:45:14:859 CST] 00000021 LdapConnectio > com.ibm.ws.wim.adapter.ldap.LdapConnection getEntityByIdentifier ENTRY null a5c289b6-a81e-4291-8008-05eba2fa7ef7 null null null false false [3/19/08 18:45:14:859 CST] 00000021 LdapConnectio > com.ibm.ws.wim.adapter.ldap.LdapConnection getAttributesByExtId ENTRY a5c289b6-a81e-4291-8008-05eba2fa7ef7 [objectClass, guid] null [3/19/08 18:45:14:859 CST] 00000021 LdapConnectio 2 com.ibm.ws.wim.adapter.ldap.LdapConnection getAttributesByExtId Miss cache: a5c289b6-a81e-4291-8008-05eba2fa7ef7 [3/19/08 18:45:14:859 CST] 00000021 JTAHelper E com.ibm.ws.wim.tx.JTAHelper handleException [3/19/08 18:45:14:875 CST] 00000021 exception 1 com.ibm.websphere.wim.exception.WIMException com.ibm.websphere.wim.exception.WIMException at com.ibm.ws.wim.tx.JTAHelper.handleException(JTAHelper.java:235) at com.ibm.websphere.wim.ServiceProvider.get(ServiceProvider.java:3 49) at com.ibm.websphere.wim.client.LocalServiceProvider.get(LocalServi ceProvider.java:364) at com.ibm.connections.directory.services.util.VMMSearchEngine$1.ru n(VMMSearchEngine.java:179) at com.ibm.ws.security.auth.ContextManagerImpl.runAs(ContextManager Impl.java:3995) at com.ibm.ws.security.auth.ContextManagerImpl.runAsSystem(ContextM anagerImpl.java:4092) at com.ibm.connections.directory.services.util.VMMSearchEngine.runA sSystem(VMMSearchEngine.java:72) at com.ibm.connections.directory.services.util.VMMSearchEngine.sear chVMMObjects(VMMSearchEngine.java:98) at com.ibm.connections.directory.services.util.VMMSearchEngine.sear chVMMObjects(VMMSearchEngine.java:90) at com.ibm.connections.directory.services.provider.VmmServiceProvid er.searchGroupsByMemberId(VmmServiceProvider.java:299) at com.ibm.openactivities.security.auth.subject.SubjectBuilder.buil dNamesList(SubjectBuilder.java:224) at com.ibm.openactivities.security.auth.subject.SubjectBuilder.buil dSubject(SubjectBuilder.java:178) at com.ibm.openactivities.security.auth.subject.SubjectBuilder.buil dSubject(SubjectBuilder.java:124) at com.ibm.openactivities.web.coreui.servlet.AuthenticationFilter.d oFilter(AuthenticationFilter.java:76) at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(Fi lterInstanceWrapper.java:190) at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebApp FilterChain.java:130) at com.ibm.openactivities.web.coreui.servlet.TxnFilter.doFilter(Txn Filter.java:40) at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(Fi lterInstanceWrapper.java:190) at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebApp FilterChain.java:130) at com.ibm.openactivities.web.coreui.servlet.StatisticsFilter.doFil ter(StatisticsFilter.java:50) at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(Fi lterInstanceWrapper.java:190) at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebApp FilterChain.java:130) at com.ibm.openactivities.web.coreui.servlet.RequestStatisticsFilte r.doFilter(RequestStatisticsFilter.java:66) at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(Fi lterInstanceWrapper.java:190) at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebApp FilterChain.java:130) at com.ibm.openactivities.web.coreui.servlet.I18nFilter.doFilter(I1 8nFilter.java:155) at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(Fi lterInstanceWrapper.java:190) at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebApp FilterChain.java:130) at com.ibm.openactivities.web.coreui.servlet.Utf8CharEncodingFilter .doFilter(Utf8CharEncodingFilter.java:44) at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(Fi lterInstanceWrapper.java:190) at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebApp FilterChain.java:130) at com.ibm.openactivities.web.coreui.servlet.InitializedFilter.doFi lter(InitializedFilter.java:121) at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(Fi lterInstanceWrapper.java:190) at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebApp FilterChain.java:130) at com.ibm.ws.webcontainer.filter.WebAppFilterChain._doFilter(WebAp pFilterChain.java:87) at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebA ppFilterManager.java:766) at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebA ppFilterManager.java:674) at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(Ser vletWrapper.java:498) at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.handleRequest(S ervletWrapper.java:464) at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java: 3276) at com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.j ava:267) at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer. java:811) at com.ibm.ws.wswebcontainer.WebContainer.handleRequest(WebContaine r.java:1455) at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLin k.java:113) at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscr imination(HttpInboundLink.java:454) at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewIn formation(HttpInboundLink.java:383) at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.ready(HttpI nboundLink.java:263) at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.sen dToDiscriminators(NewConnectionInitialReadCallback.java:214) at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.com plete(NewConnectionInitialReadCallback.java:113) at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureComp leted(AioReadCompletionListener.java:165) at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyn cFuture.java:217) at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncC hannelFuture.java:161) at com.ibm.io.async.AsyncFuture.completed (AsyncFuture.java:136) at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:195) at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHand ler.java:743) at com.ibm.io.async.ResultHandler$2.run (ResultHandler.java:873) at com.ibm.ws.util.ThreadPool$Worker.run (ThreadPool.java:1469) Caused by: java.lang.NumberFormatException: For input string: "e-" at java.lang.NumberFormatException.forInputString(NumberFormatExcep tion.java:63) at java.lang.Integer.parseInt(Integer.java:490) at com.ibm.ws.wim.adapter.ldap.LdapHelper.getOctetString(LdapHelper .java:296) at com.ibm.ws.wim.adapter.ldap.LdapHelper.getStringLdapValue(LdapHe lper.java:612) at com.ibm.ws.wim.adapter.ldap.LdapConfigManager.getLdapValue(LdapC onfigManager.java:2356) at com.ibm.ws.wim.adapter.ldap.LdapConnection.getAttributesByExtId( LdapConnection.java:1988) at com.ibm.ws.wim.adapter.ldap.LdapConnection.getEntityByIdentifier (LdapConnection.java:2282) at com.ibm.ws.wim.adapter.ldap.LdapConnection.getEntityByIdentifier (LdapConnection.java:2204) at com.ibm.ws.wim.adapter.ldap.LdapAdapter.get(LdapAdapter.java:133 3) at com.ibm.ws.wim.ProfileManager.retrieveEntityFromRepository(Profi leManager.java:2223) at com.ibm.ws.wim.ProfileManager.retrieveEntity(ProfileManager.java :2346) at com.ibm.ws.wim.ProfileManager.getImpl(ProfileManager.java:1242) at com.ibm.ws.wim.ProfileManager.genericProfileManagerMethod(Profil eManager.java:277) at com.ibm.ws.wim.ProfileManager.get (ProfileManager.java:326) at com.ibm.websphere.wim.ServiceProvider.get(ServiceProvider.java:3 45) ... 55 more PROBLEM CONCLUSION: The problem has been fixed, there is no NumberFormatExcption thrown any more. The fix for this APAR is currently targeted for inclusion in fix pack 6.1.0.21. Please refer to the Recommended Updates page for delivery information: http://www.ibm.com/support/docview.wss?rs=180&uid=swg27004980 Directions to apply fix: Fix applies to Editions: Release 6.1 x_ Application Server (Express or BASE) x_ Network Deployment (ND) __ WebSphere Business Integration Server Foundation (WBISF) __ Edge Components __ Developer x_ Extended Deployment (XD) Install Fix to: Method: __ Application Server Nodes __ Deployment Manager Nodes x_ Both NOTE: The user must: * Have Administrative rights in Windows, or be the Actual Root User in a UNIX environments. * Logged in with the same authority level when unpacking a fix, fix pack or refresh pack. * Be at V6.1.0.13 or newer of the Update Installer. This can be checked by reviewing the level of the Update Installer in file /updateinstaller/version.txt. The Update Installer can be downloaded from the following link: http://www.ibm.com/support/docview.wss?rs=180&uid=swg21205991 For detailed instructions to Extract the Update Installer see the following Technote: http://www-1.ibm.com/support/docview.wss?rs=180&uid=swg21205400 1) Copy 6.1.0.13-WS-WAS-IFPK65354.pak file directly to the maintenance directory 2) Shutdown WebSphere Manually execute setupCmdLine.bat in Windows or . ./setupCmdLine.sh in Unix from the WebSphere instance that maintenance is being applied to. 3) Launch Update Installer 4) Enter the installation location of the WebSphere product you want to update. 5) Select the "Install maintenance package" operation. 6) Enter the file name of the maintenance package to install (6.1.0.13-WS-WAS-IFPK65354.pak file which was copied in the maintenance directory). 7) Install the maintenance package. 8) Restart WebSphere Directions to remove fix: NOTE: * The user must have Administrative rights in Windows, or be the Actual Root User in a UNIX environments. * FIXES MUST BE REMOVED IN THE ORDER THEY WERE APPLIED * DO NOT REMOVE A FIX UNLESS ALL FIXES APPLIED AFTER IT HAVE FIRST BEEN REMOVED * YOU MAY REAPPLY ANY REMOVED FIX Example: If your system has fix1, fix2, and fix3 applied in that order and fix2 is to be removed, fix3 must be removed first, fix2 removed, and fix3 re-applied. 1) Shutdown WebSphere Manually execute setupCmdLine.bat in Windows or . ./setupCmdLine.sh in Unix from the WebSphere instance that uninstall is being run against. 2) Start Update Installer 3) Enter the installation location of the WebSphere product you want to remove the fix. 4) Select "Uninstall maintenance package" operation. 5) Enter the file name of the maintenance package to uninstall (6.1.0.13-WS-WAS-IFPK65354.pak). 6) UnInstall maintenance package. 7) Restart WebSphere Directions to re-apply fix: 1) Shutdown WebSphere. 2) Follow the Fix instructions to apply the fix. 3) Restart WebSphere. Additional Information: