
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
HP ALM | REST API Error ALM-E10004: Failed to load project?
I am using HP ALM Version 11.52.809.
After authenticating, I'm trying to fetch the list of domains using the following REST-API :
http://19.17.16.69:7424/qcbin/rest/domains
I am receiving the following error :
HTTP ERROR 500
Problem accessing /qcbin/rest/domains. Reason:
ALM-E10004: Failed to load project 'null' from domain 'null'.
Caused by:
java.lang.NullPointerException
at com.hp.alm.platform.directory.CProjectsDirectory.getItem(CProjectsDirectory.java:79)
wrapped in com.hp.alm.platform.siteadmin.session.ProjectDoesNotExisatException: ALM-E10004: Failed to load project 'null' from domain 'null'.
at com.hp.alm.platform.directory.CProjectsDirectory.getItem(CProjectsDirectory.java:125)
at org.hp.qc.impl.customization.CustomizationServiceImpl.getCustomization(CustomizationServiceImpl.java:73)
at org.hp.qc.impl.customization.CustomizationServiceImpl.getDefaultCustomization(CustomizationServiceImpl.java:55)
at sun.reflect.GeneratedMethodAccessor173.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:309)
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
at org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:80)
at org.hp.qc.impl.aspects.cache.ReturnValueCachingAspect$CacheResult.get(ReturnValueCachingAspect.java:228)
at org.hp.qc.impl.aspects.cache.ReturnValueCachingAspect.invoke(ReturnValueCachingAspect.java:107)
at sun.reflect.GeneratedMethodAccessor155.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:621)
at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:610)
at org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:65)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:90)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
at $Proxy63.getDefaultCustomization(Unknown Source)
at org.hp.qc.impl.customization.CustomizationServiceImpl.find(CustomizationServiceImpl.java:44)
at sun.reflect.GeneratedMethodAccessor154.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:309)
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:90)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
at $Proxy63.find(Unknown Source)
at org.hp.qc.impl.services.sessionmanagement.AuthenticationImpl.getPrincipal(AuthenticationImpl.java:73)
at com.hp.sw.bto.ast.security.lwsso.authenticator.springSecurity.SpringSecurity2LWSSOIntegrationFilter.createSecurityContext(SpringSecurity2LWSSOIntegrationFilter.java:263)
at com.hp.sw.bto.ast.security.lwsso.authenticator.springSecurity.SpringSecurity2LWSSOIntegrationFilter.creatSecurityContextForNonExistingUser(SpringSecurity2LWSSOIntegrationFilter.java:239)
at com.hp.sw.bto.ast.security.lwsso.authenticator.springSecurity.SpringSecurity2LWSSOIntegrationFilter.doFilter(SpringSecurity2LWSSOIntegrationFilter.java:172)
at org.hp.qc.web.restapi.authentication.QCSpringSecurity2lwssoIntegrationFilter.doFilter(QCSpringSecurity2lwssoIntegrationFilter.java:29)
at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390)
at org.hp.qc.web.restapi.sessionmanagement.ImplicitSessionFilter.doFilter(ImplicitSessionFilter.java:76)
at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390)
at org.springframework.security.intercept.web.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:109)
at org.springframework.security.intercept.web.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83)
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.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)
What is causing this error? Is there is any setting or privilege which needs to be done on ALM Side?
Thanks in advance 🙂

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
http://19.17.16.69:7424/qcbin/rest/domains?login-form-required=y
Can you please try with above URL from web browser?

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
@aRiYuAn Tried on the Web browser and after providing credentials, I got the response but when I used Postman then I got the same error instead of response.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
The version you're using is quite old.
But you can try the following ways to narrow down the issue
1. Try using a different user
2. Check and see if other API works
3. Try to use COM API like OTA and SA instead of Rest API if possible
Since the help documentation for 11.52 is not available online, it's better to check with embedded help doc from your ALM server.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
This is an old version so I will have to do it from memory. If you are using Postman, then first request should still be authentication. Once you have authenticated, then you can proceed to do other queries like getting list of domains.
Example:
1. Create a Login request using basic authentication
Method = GET
URL =
http://19.17.16.69:7424/qcbin/authentication-point/authenticate
Under Authorization tab, select Basic Auth and enter your user name and password.
You should get a 200 response if authentication is successful. You should also get a LWSSO_COOKIE_KEY which will be used in subsequent requests in Postman.
2. Create a request for list of domains
Method= GET
URL =
http://19.17.16.69:7424/qcbin/rest/domains
Alternatively, you can use your browser to query as mentioned before.
http://19.17.16.69:7424/qcbin/rest/domains?login-form-required=y
Once you have login, you should see the list of domains that your account has access to.
Thanks,
Thanh

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
2 .) calls to different APIs also works fine (e.g. /rest/domains/<domain>/projects/<proj>/run/<RunID>/run-steps)

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
This may not be an issue with REST then. Please login to Site Admin, navigate to the Site Users tab, and look up the users with the issue. Check to see if there are any projects that the users belong to that problematic such as failed to be created but still exist in the instance.