It's all about the answers!

Ask a question

CLM under Websphere showing errors when LDAP is switched


Lewis Tsao (2174963) | asked Feb 22 '12, 12:07 p.m.
I am at a customer with CLM configured to run under WAS.
Originally for testing WAS was configured to use LDAP1. Things work fine. Logging in as "clmadmin" with jazzadmin role is fine and can create project, etc.

Now, customer says LDAP1 is not complete, so we swtiched to using LDAP2. LDAP2 contains all users in LDAP1 and other users. Groups have to be created with different names in LDAP2.

In WAS, the LDAP2 jazz groups are mapped to roles.

WAS, apps etc restarted to make sure.

Now, using LDAP2, I can log in as "clmadmin" and RTC page shows me as "ADMIN". But there are lots of things I can't do like create projects etc.

Any advice on what may be happening is much appreciated.

Looking at ccm.log I get:

2012-02-22 16:41:57,235 ERROR net.jazz.ajax.service.internal.http.ThemingHandler - ERROR : GET https://wwwqa2.pd-dv.jlrint.com/ccm/_theming/allThemeCSS HTTP/1.1
org.apache.http.HttpException: Problem initializing theme namespace: The user "CLMADMIN" does not exist in the database
at net.jazz.ajax.service.internal.http.ThemingHandler.getHttpException(ThemingHandler.java:1353)
at net.jazz.ajax.service.internal.http.ThemingHandler.initMetadata(ThemingHandler.java:1343)
at net.jazz.ajax.service.internal.http.ThemingHandler.init(ThemingHandler.java:299)
at net.jazz.ajax.service.internal.http.ThemingHandler.handle(ThemingHandler.java:245)
at com.ibm.team.server.httpcore.bridge.AbstractHandlerWrapperServlet.doWrappedService(AbstractHandlerWrapperServlet.java:136)
at net.jazz.ajax.service.internal.EndpointRegistrar$1.doWrappedService(EndpointRegistrar.java:83)
at com.ibm.team.server.httpcore.bridge.AbstractHandlerWrapperServlet.service(AbstractHandlerWrapperServlet.java:109)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:831)
at org.eclipse.equinox.http.servlet.internal.ServletRegistration.handleRequest(ServletRegistration.java:90)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:111)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:67)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:831)
at org.eclipse.equinox.servletbridge.BridgeServlet.service(BridgeServlet.java:120)
at com.ibm.team.repository.server.servletbridge.JazzServlet.service(JazzServlet.java:76)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:831)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1657)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:939)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:502)
at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:179)
at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:3935)
at com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:276)
at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:931)
at com.ibm.ws.webcontainer.WSWebContainer.handleRequest(WSWebContainer.java:1592)
at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:186)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:452)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewRequest(HttpInboundLink.java:511)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.processRequest(HttpInboundLink.java:305)
at com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:83)
at com.ibm.ws.ssl.channel.impl.SSLReadServiceContext$SSLReadCompletedCallback.complete(SSLReadServiceContext.java:1784)
at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:165)
at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161)
at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:138)
at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:204)
at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:775)
at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:905)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1604)
Caused by:
net.oauth.OAuthException: The user "CLMADMIN" does not exist in the database
at com.ibm.team.repository.service.internal.oauth.OAuthServiceProvider.runAsUser(OAuthServiceProvider.java:1752)
at com.ibm.team.repository.service.internal.oauth.OAuthServiceProvider.getKeyAndSecret(OAuthServiceProvider.java:1794)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
at java.lang.reflect.Method.invoke(Method.java:611)
at org.eclipse.soda.sat.core.internal.record.ExportProxyServiceRecord.invoke(ExportProxyServiceRecord.java:370)
at org.eclipse.soda.sat.core.internal.record.ExportProxyServiceRecord.access$0(ExportProxyServiceRecord.java:356)
at org.eclipse.soda.sat.core.internal.record.ExportProxyServiceRecord$ExportedServiceInvocationHandler.invoke(ExportProxyServiceRecord.java:56)
at $Proxy267.getKeyAndSecret(Unknown Source)
at net.jazz.ajax.service.internal.http.ThemingHandler.sendLocalRequest(ThemingHandler.java:1508)
at net.jazz.ajax.service.internal.http.ThemingHandler.sendJfsRequest(ThemingHandler.java:1493)
at net.jazz.ajax.service.internal.http.ThemingHandler.sendBasicJFSGet(ThemingHandler.java:468)
at net.jazz.ajax.service.internal.http.ThemingHandler.createRootNamespace(ThemingHandler.java:1362)
at net.jazz.ajax.service.internal.http.ThemingHandler.initMetadata(ThemingHandler.java:1322)
... 35 more
2012-02-22 16:41:57,243 ERROR net.jazz.ajax.service.internal.http.ThemingHandler - ERROR : GET https://wwwqa2.pd-dv.jlrint.com/ccm/_theming/allThemeJS?dojo.preventCache=1329928914339 HTTP/1.1
org.apache.http.HttpException: Problem initializing theme namespace: The user "CLMADMIN" does not exist in the database
at net.jazz.ajax.service.internal.http.ThemingHandler.getHttpException(ThemingHandler.java:1353)
at net.jazz.ajax.service.internal.http.ThemingHandler.initMetadata(ThemingHandler.java:1343)
at net.jazz.ajax.service.internal.http.ThemingHandler.init(ThemingHandler.java:299)
at net.jazz.ajax.service.internal.http.ThemingHandler.handle(ThemingHandler.java:245)
at com.ibm.team.server.httpcore.bridge.AbstractHandlerWrapperServlet.doWrappedService(AbstractHandlerWrapperServlet.java:136)
at net.jazz.ajax.service.internal.EndpointRegistrar$1.doWrappedService(EndpointRegistrar.java:83)
at com.ibm.team.server.httpcore.bridge.AbstractHandlerWrapperServlet.service(AbstractHandlerWrapperServlet.java:109)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:831)
at org.eclipse.equinox.http.servlet.internal.ServletRegistration.handleRequest(ServletRegistration.java:90)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:111)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:67)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:831)
at org.eclipse.equinox.servletbridge.BridgeServlet.service(BridgeServlet.java:120)
at com.ibm.team.repository.server.servletbridge.JazzServlet.service(JazzServlet.java:76)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:831)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1657)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:939)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:502)
at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:179)
at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:3935)
at com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:276)
at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:931)
at com.ibm.ws.webcontainer.WSWebContainer.handleRequest(WSWebContainer.java:1592)
at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:186)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:452)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewRequest(HttpInboundLink.java:511)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.processRequest(HttpInboundLink.java:305)
at com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:83)
at com.ibm.ws.ssl.channel.impl.SSLReadServiceContext$SSLReadCompletedCallback.complete(SSLReadServiceContext.java:1784)
at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:165)
at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161)
at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:138)
at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:204)
at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:775)
at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:905)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1604)
Caused by:
net.oauth.OAuthException: The user "CLMADMIN" does not exist in the database
at com.ibm.team.repository.service.internal.oauth.OAuthServiceProvider.runAsUser(OAuthServiceProvider.java:1752)
at com.ibm.team.repository.service.internal.oauth.OAuthServiceProvider.getKeyAndSecret(OAuthServiceProvider.java:1794)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
at java.lang.reflect.Method.invoke(Method.java:611)
at org.eclipse.soda.sat.core.internal.record.ExportProxyServiceRecord.invoke(ExportProxyServiceRecord.java:370)
at org.eclipse.soda.sat.core.internal.record.ExportProxyServiceRecord.access$0(ExportProxyServiceRecord.java:356)
at org.eclipse.soda.sat.core.internal.record.ExportProxyServiceRecord$ExportedServiceInvocationHandler.invoke(ExportProxyServiceRecord.java:56)
at $Proxy267.getKeyAndSecret(Unknown Source)
at net.jazz.ajax.service.internal.http.ThemingHandler.sendLocalRequest(ThemingHandler.java:1508)
at net.jazz.ajax.service.internal.http.ThemingHandler.sendJfsRequest(ThemingHandler.java:1493)
at net.jazz.ajax.service.internal.http.ThemingHandler.sendBasicJFSGet(ThemingHandler.java:468)
at net.jazz.ajax.service.internal.http.ThemingHandler.createRootNamespace(ThemingHandler.java:1362)
at net.jazz.ajax.service.internal.http.ThemingHandler.initMetadata(ThemingHandler.java:1322)
... 35 more

3 answers



permanent link
Anthony Kesterton (7.5k9180136) | answered Feb 22 '12, 6:26 p.m.
JAZZ DEVELOPER
Hi Lewis

Random thought - are the licenses still correctly assigned to the users? Or can you try unassigning and reassigning the license to your clmadmin user?

anthony

permanent link
Lewis Tsao (2174963) | answered Feb 23 '12, 9:04 a.m.
Sudden flash of inspiratin.

In LDAP1, user id's are in lower case (so happens), so the original "clmadmin" user in RTC is also lower case.

In LDAP2, user id's are in upper case.

So I can log in since WAS does (and LDAPx) authenticate case insensitive. But I can' do anything useful in RTC because of case sensitive user id matching.

Arrrrrrrrrrrrrrrr.

When will RTC implement case insesitive user id matching (or at least allow user to chose).

permanent link
Sean G Wilbur (87222421) | answered Feb 28 '12, 1:48 p.m.
JAZZ DEVELOPER
That is already implemented, check your advanced server configurations for a property.

Use case insensitive user ID matching
http://publib.boulder.ibm.com/infocenter/rtc/v2r0m0/index.jsp?topic=/com.ibm.jazz.install.doc/topics/t_s_server_installation_setup_WAS.html

Also the container can do this for via a setting in WAS.

-Sean

Your answer


Register or to post your answer.


Dashboards and work items are no longer publicly available, so some links may be invalid. We now provide similar information through other means. Learn more here.