Rational Quality Manager with Rational ClearQuest Bridge Integration throws invalid_expired_token Error during setup

Technote (troubleshooting)


Problem(Abstract)

When setting up the IBM Rational Quality Manager integration with IBM Rational ClearQuest using the IBM Rational ClearQuest Bridge, a "net.oauth.OAuthProblemException: invalid_expired_token" error is thrown when attempting to set up the link between the Rational ClearQuest User Database and the Rational Quality Manager Project Area, as in step 3d of the documentation below.
http://publib.boulder.ibm.com/infocenter/rqmhelp/v2r0/topic/com.ibm.rational.test.qm.doc/topics/t_defect_cq.html

Symptom

The following error is thrown:


net.oauth.OAuthProblemException: invalid_expired_token
      at com.ibm.rational.cm.rest.oauth.CqOAuthToken.parseInternal(CqOAuthToken.java:109)
      at com.ibm.rational.cm.rest.oauth.CqRequestToken.parse(CqRequestToken.java:51)
      at com.ibm.rational.cm.rest.oauth.servlet.CqOAuthServlet.validateRequestToken(CqOAuthServlet.java:102)
      at com.ibm.rational.cm.rest.oauth.servlet.OAuthAuthorizationServlet.process(OAuthAuthorizationServlet.java:62)
      at com.ibm.rational.cm.rest.oauth.servlet.CqOAuthServlet.process(CqOAuthServlet.java:61)
      at com.ibm.rational.cm.rest.oauth.servlet.CqOAuthServlet.doGet(CqOAuthServlet.java:91)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:743)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
      at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1152)
      at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1087)
      at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:145)
      at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:78)
      at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:77)
      at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:190)
      at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:130)
      at com.ibm.ws.webcontainer.filter.WebAppFilterChain._doFilter(WebAppFilterChain.java:87)
      at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:837)
      at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:680)
      at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:588)
      at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:481)
      at com.ibm.ws.webcontainer.servlet.CacheServletWrapper.handleRequest(CacheServletWrapper.java:90)
      at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:748)
      at com.ibm.ws.wswebcontainer.WebContainer.handleRequest(WebContainer.java:1466)
      at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:122)
      at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:458)
      at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(HttpInboundLink.java:387)
      at com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:102)
      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:136)
      at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:196)
      at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:792)
      at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:881)
      at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1497)

When on the "Add Links" page of the Rational Quality Manager WebUI, the Rational ClearQuest Target Server is displayed, but when clicking it, the above "Invalid expired token" error displays.



Cause

This is caused by an unauthorized security setting, which must be defined on the Rational ClearQuest Server side.

Environment

Rational Quality Manager 2.0.1.1

Rational ClearQuest 7.1.2

Rational ClearQuest Bridge


Resolving the problem

There are two possible solutions for this issue.

  1. 1) Verify that you have authorized the consumer key on Rational ClearQuest server.
    You can check this on the Rational ClearQuest side easily by logging in as an Administrator, then navigating to "Site Administration" > "Oauth Consumer Management"
  2. 2) If the key is authorized, remove the external friend, then re-add it.
    You will need to click the grant access to the provisional key link when adding Rational ClearQuest as an external friend.

Once complete, you should be able to add the Rational ClearQuest target server in the Rational Quality Manager WebUI, and successfully implement the Rational ClearQuest Bridge integration.

Rate this page:

(0 users)Average rating

Add comments

Document information


More support for:

Rational Quality Manager
Integrations: IBM

Software version:

2.0.1.1

Operating system(s):

Linux, Windows

Reference #:

1461666

Modified date:

2011-02-11

Translate my page

Machine Translation

Content navigation