HP ALM | REST API | Error 500 Invalid context key

Hi,

I am using HP ALM Version 11.52.

I'm trying to authenticate using the following REST API's:

URL: http://{ALM_URL}/qcbin/rest/site-session

Method: GET

URL: http://{ALM_URL}/qcbin/rest/site-session

Method: POST

I am receiving the following error :

<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/> <title>Error 500 Invalid context key</title> </head> <body><h2>HTTP ERROR 500</h2> <p>Problem accessing /qcbin/authentication-point/authenticate. Reason: <pre> Invalid context key</pre></p><h3>Caused by:</h3><pre>com.hp.alm.platform.exception.CTdException: Invalid context key at com.hp.alm.platform.ldap.CLdapCommandFactory$CAbsLdapCommand.getContextValue(CLdapCommandFactory.java:295) at com.hp.alm.platform.ldap.CLdapCommandFactory$CLdapMacroCommand.execute(CLdapCommandFactory.java:1058) at com.hp.alm.platform.siteadmin.api.logics.CTdUserLogic.performLdapAuthentication(CTdUserLogic.java:2307) at com.hp.alm.platform.siteadmin.api.logics.CTdUserLogic.performLdapAuthentication(CTdUserLogic.java:2147) at com.hp.alm.platform.siteadmin.api.logics.CTdUserLogic.authenticateUserAgainstNetDomain(CTdUserLogic.java:2191) at com.hp.alm.platform.siteadmin.api.logics.CTdUserLogic.isUserPasswordValid(CTdUserLogic.java:1772) at com.hp.alm.platform.siteadmin.api.logics.CTdUserLogic.checkUserNonEncryptedPassword(CTdUserLogic.java:1733) at org.hp.qc.impl.adapters.AuthenticationAdapter.authenticateUser(AuthenticationAdapter.java:25) at org.hp.qc.impl.authentication.QcAuthentication.authenticateUser(QcAuthentication.java:40) at org.hp.qc.impl.services.AuthenticationServiceImpl.authenticateUser(AuthenticationServiceImpl.java:31) at org.hp.qc.web.restapi.authentication.QCAuthenticationProvider.authenticate(QCAuthenticationProvider.java:42) at org.springframework.security.providers.ProviderManager.doAuthentication(ProviderManager.java:188) at org.springframework.security.AbstractAuthenticationManager.authenticate(AbstractAuthenticationManager.java:46) at org.springframework.security.ui.basicauth.BasicProcessingFilter.doFilterHttp(BasicProcessingFilter.java:139) at org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53) at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390) at org.hp.qc.web.restapi.authentication.QC2SpringIntegrationFilter.LWSSO2SpringSecurityIntegrationFilterDoFilter(QC2SpringIntegrationFilter.java:350) at org.hp.qc.web.restapi.authentication.QC2SpringIntegrationFilter.doFilter(QC2SpringIntegrationFilter.java:71) at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390) at org.springframework.security.ui.ExceptionTranslationFilter.doFilterHttp(ExceptionTranslationFilter.java:101) at org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53) at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390) at org.springframework.security.context.HttpSessionContextIntegrationFilter.doFilterHttp(HttpSessionContextIntegrationFilter.java:235) at org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53) at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390) at org.hp.qc.web.restapi.authentication.LoginSslModeFilter.doFilter(LoginSslModeFilter.java:49) at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390) at org.springframework.security.util.FilterChainProxy.doFilter(FilterChainProxy.java:175) at org.hp.qc.web.restapi.authentication.FilterChainProxyWrapper.doFilter(FilterChainProxyWrapper.java:80) at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237) at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1330) at com.mercury.optane.core.state.ServerStatusFilter.doFilter(ServerStatusFilter.java:37) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1330) at org.hp.qc.web.restapi.authentication.LwssoRedirectFilter.doFilter(LwssoRedirectFilter.java:28) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1330) at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:478) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:119) at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:520) at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:227) at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:941) at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:409) at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:186) at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:875) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117) at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:250) at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:149) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:110) at org.eclipse.jetty.rewrite.handler.RewriteHandler.handle(RewriteHandler.java:312) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:110) at org.eclipse.jetty.server.Server.handle(Server.java:345) at org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:441) at org.eclipse.jetty.server.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:919) at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:582) at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:218) at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:51) at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:586) at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:44) at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:598) at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:533) at java.lang.Thread.run(Thread.java:662) </pre> <hr /><i><small>Powered by Jetty://</small></i><br/> <br/> <br/> <br/> <br/> <br/> <br/> <br/> <br/> <br/> <br/> <br/> <br/> <br/> <br/> <br/> <br/> <br/> <br/> <br/> </body> </html>

What is causing this error? Is there any setting or privilege that needs to be done on the ALM Side/Rest API?

I appreciate any help you can provide.

  • 0

    ALM Error: 

    <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/> <title>Error 500 Invalid context key</title> </head> <body><h2>HTTP ERROR 500</h2> <p>Problem accessing /qcbin/authentication-point/authenticate. Reason: <pre> Invalid context key</pre></p><h3>Caused by:</h3><pre>com.hp.alm.platform.exception.CTdException: Invalid context key at com.hp.alm.platform.ldap.CLdapCommandFactory$CAbsLdapCommand.getContextValue(CLdapCommandFactory.java:295) at com.hp.alm.platform.ldap.CLdapCommandFactory$CLdapMacroCommand.execute(CLdapCommandFactory.java:1058) at com.hp.alm.platform.siteadmin.api.logics.CTdUserLogic.performLdapAuthentication(CTdUserLogic.java:2307) at com.hp.alm.platform.siteadmin.api.logics.CTdUserLogic.performLdapAuthentication(CTdUserLogic.java:2147) at com.hp.alm.platform.siteadmin.api.logics.CTdUserLogic.authenticateUserAgainstNetDomain(CTdUserLogic.java:2191) at com.hp.alm.platform.siteadmin.api.logics.CTdUserLogic.isUserPasswordValid(CTdUserLogic.java:1772) at com.hp.alm.platform.siteadmin.api.logics.CTdUserLogic.checkUserNonEncryptedPassword(CTdUserLogic.java:1733) at org.hp.qc.impl.adapters.AuthenticationAdapter.authenticateUser(AuthenticationAdapter.java:25) at org.hp.qc.impl.authentication.QcAuthentication.authenticateUser(QcAuthentication.java:40) at org.hp.qc.impl.services.AuthenticationServiceImpl.authenticateUser(AuthenticationServiceImpl.java:31) at org.hp.qc.web.restapi.authentication.QCAuthenticationProvider.authenticate(QCAuthenticationProvider.java:42) at org.springframework.security.providers.ProviderManager.doAuthentication(ProviderManager.java:188) at org.springframework.security.AbstractAuthenticationManager.authenticate(AbstractAuthenticationManager.java:46) at org.springframework.security.ui.basicauth.BasicProcessingFilter.doFilterHttp(BasicProcessingFilter.java:139) at org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53) at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390) at org.hp.qc.web.restapi.authentication.QC2SpringIntegrationFilter.LWSSO2SpringSecurityIntegrationFilterDoFilter(QC2SpringIntegrationFilter.java:350) at org.hp.qc.web.restapi.authentication.QC2SpringIntegrationFilter.doFilter(QC2SpringIntegrationFilter.java:71) at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390) at org.springframework.security.ui.ExceptionTranslationFilter.doFilterHttp(ExceptionTranslationFilter.java:101) at org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53) at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390) at org.springframework.security.context.HttpSessionContextIntegrationFilter.doFilterHttp(HttpSessionContextIntegrationFilter.java:235) at org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53) at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390) at org.hp.qc.web.restapi.authentication.LoginSslModeFilter.doFilter(LoginSslModeFilter.java:49) at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390) at org.springframework.security.util.FilterChainProxy.doFilter(FilterChainProxy.java:175) at org.hp.qc.web.restapi.authentication.FilterChainProxyWrapper.doFilter(FilterChainProxyWrapper.java:80) at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237) at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1330) at com.mercury.optane.core.state.ServerStatusFilter.doFilter(ServerStatusFilter.java:37) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1330) at org.hp.qc.web.restapi.authentication.LwssoRedirectFilter.doFilter(LwssoRedirectFilter.java:28) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1330) at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:478) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:119) at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:520) at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:227) at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:941) at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:409) at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:186) at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:875) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117) at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:250) at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:149) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:110) at org.eclipse.jetty.rewrite.handler.RewriteHandler.handle(RewriteHandler.java:312) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:110) at org.eclipse.jetty.server.Server.handle(Server.java:345) at org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:441) at org.eclipse.jetty.server.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:919) at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:582) at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:218) at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:51) at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:586) at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:44) at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:598) at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:533) at java.lang.Thread.run(Thread.java:662) </pre> <hr /><i><small>Powered by Jetty://</small></i><br/> <br/> <br/> <br/> <br/> <br/> <br/> <br/> <br/> <br/> <br/> <br/> <br/> <br/> <br/> <br/> <br/> <br/> <br/> <br/> </body> </html>

  • Suggested Answer

    0  

    Given the ALM version (11.52), it is quite challenging to find supported documentation for the REST API in this older version.

    You can try using the examples provided in the latest documentation Authenticate (microfocus.com) though I cannot guarantee they will work as expected due to the age of your ALM version.

    The best recommendation is to upgrade to a more recent and supported version of ALM. This will ensure you have access to up-to-date documentation for the REST API, and you can receive assistance from the support team if any issues arise.

    Best regards,


    Bernal Salzar

    OpenText Customer Support Agent | ALM

    Although I am an OpenText employee, I am speaking for myself and not for OpenText.
    If you found this post useful, give it a “Like” or click on "Verify Answer" under the "More" button.