Use following [1]. Fix is in [2]. [1]. https://drive.google.com/a/wso2.com/file/d/0B_NmD95Sz0hGV2Rfbk9DZEl2cFE/view?usp=sharing [2]. https://github.com/wso2/carbon-identity/commit/39ec9b89054a46931b9bf21076dc638ed59fc525#diff-7cf878f4a46b550e06061046db38862d
On Mon, Jun 15, 2015 at 12:22 PM, Manoj Gunawardena <man...@wso2.com> wrote: > Hi Prasad, > Can we have a patch to continue our testing. > > Thanks > > On Sun, Jun 14, 2015 at 10:15 PM, Prasad Tissera <pras...@wso2.com> wrote: > >> Fixed this in carbon-identity master branch and will included in the next >> release. Thanks. >> >> Sent from my mobile >> On Jun 12, 2015 9:45 PM, "Prasad Tissera" <pras...@wso2.com> wrote: >> >>> We recreated issu with carbon-identity 4.4.0. Will update you with the >>> progress. Thanks. >>> >>> Sent from my mobile >>> On Jun 11, 2015 2:14 PM, "Prabath Abeysekera" <praba...@wso2.com> wrote: >>> >>>> Guys, >>>> >>>> I appreciate if we can get some help on this. >>>> >>>> Cheers, >>>> Prabath >>>> >>>> On Wed, Jun 10, 2015 at 3:02 PM, Dulitha Wijewantha <duli...@wso2.com> >>>> wrote: >>>> >>>>> Hi Dulanja/Johann, >>>>> I am getting the same error as milan when trying refresh an access >>>>> token with refresh token. Below I have included the stacktrace of the >>>>> error. >>>>> >>>>> Cheers~ >>>>> >>>>> >>>>> 14:58:36,538 org.wso2.carbon.identity.oauth2.dao.TokenMgtDAO - Error >>>>> while getting an Identity Persistence Store instance. >>>>> org.wso2.carbon.identity.oauth2.IdentityOAuth2Exception: Error when >>>>> storing the access token for consumer key : j9vLqqCBHwHYBJhoI4RK7uhzhwwa >>>>> at >>>>> org.wso2.carbon.identity.oauth2.dao.TokenMgtDAO.storeAccessToken(TokenMgtDAO.java:201) >>>>> at >>>>> org.wso2.carbon.identity.oauth2.dao.TokenMgtDAO.invalidateAndCreateNewToken(TokenMgtDAO.java:870) >>>>> at >>>>> org.wso2.carbon.identity.oauth2.token.handlers.grant.RefreshGrantHandler.issue(RefreshGrantHandler.java:210) >>>>> at >>>>> org.wso2.carbon.identity.oauth2.token.AccessTokenIssuer.issue(AccessTokenIssuer.java:187) >>>>> at >>>>> org.wso2.carbon.identity.oauth2.OAuth2Service.issueAccessToken(OAuth2Service.java:176) >>>>> at >>>>> org.wso2.carbon.identity.oauth.endpoint.token.OAuth2TokenEndpoint.getAccessToken(OAuth2TokenEndpoint.java:234) >>>>> at >>>>> org.wso2.carbon.identity.oauth.endpoint.token.OAuth2TokenEndpoint.issueAccessToken(OAuth2TokenEndpoint.java:108) >>>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >>>>> at >>>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) >>>>> at >>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) >>>>> at java.lang.reflect.Method.invoke(Method.java:606) >>>>> at >>>>> org.apache.cxf.service.invoker.AbstractInvoker.performInvocation(AbstractInvoker.java:180) >>>>> at >>>>> org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:96) >>>>> at org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:194) >>>>> at org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:100) >>>>> at >>>>> org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerInterceptor.java:57) >>>>> at >>>>> org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(ServiceInvokerInterceptor.java:93) >>>>> at >>>>> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:271) >>>>> at >>>>> org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121) >>>>> at >>>>> org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:239) >>>>> at >>>>> org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:223) >>>>> at >>>>> org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:203) >>>>> at >>>>> org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:137) >>>>> at >>>>> org.apache.cxf.transport.servlet.CXFNonSpringServlet.invoke(CXFNonSpringServlet.java:159) >>>>> at >>>>> org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:286) >>>>> at >>>>> org.apache.cxf.transport.servlet.AbstractHTTPServlet.doPost(AbstractHTTPServlet.java:206) >>>>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:646) >>>>> at >>>>> org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPServlet.java:262) >>>>> at >>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303) >>>>> at >>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) >>>>> at >>>>> org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) >>>>> at >>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) >>>>> at >>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) >>>>> at >>>>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220) >>>>> at >>>>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122) >>>>> at >>>>> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:504) >>>>> at >>>>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170) >>>>> at >>>>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) >>>>> at >>>>> org.wso2.carbon.tomcat.ext.valves.CompositeValve.continueInvocation(CompositeValve.java:99) >>>>> at >>>>> org.wso2.carbon.tomcat.ext.valves.CarbonTomcatValve$1.invoke(CarbonTomcatValve.java:47) >>>>> at >>>>> org.wso2.carbon.webapp.mgt.TenantLazyLoaderValve.invoke(TenantLazyLoaderValve.java:57) >>>>> at >>>>> org.wso2.carbon.webapp.authenticator.framework.WebappAuthenticatorFrameworkValve.invoke(WebappAuthenticatorFrameworkValve.java:39) >>>>> at >>>>> org.wso2.carbon.tomcat.ext.valves.TomcatValveContainer.invokeValves(TomcatValveContainer.java:47) >>>>> at >>>>> org.wso2.carbon.tomcat.ext.valves.CompositeValve.invoke(CompositeValve.java:62) >>>>> at >>>>> org.wso2.carbon.tomcat.ext.valves.CarbonStuckThreadDetectionValve.invoke(CarbonStuckThreadDetectionValve.java:159) >>>>> at >>>>> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950) >>>>> at >>>>> org.wso2.carbon.tomcat.ext.valves.CarbonContextCreatorValve.invoke(CarbonContextCreatorValve.java:57) >>>>> at >>>>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116) >>>>> at >>>>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:421) >>>>> at >>>>> org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1074) >>>>> at >>>>> org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611) >>>>> at >>>>> org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1739) >>>>> at >>>>> org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1698) >>>>> at >>>>> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) >>>>> at >>>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) >>>>> at >>>>> org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) >>>>> at java.lang.Thread.run(Thread.java:745) >>>>> Caused by: org.h2.jdbc.JdbcSQLException: Unique index or primary key >>>>> violation: "PRIMARY_KEY_F ON >>>>> PUBLIC.IDN_OAUTH2_ACCESS_TOKEN(ACCESS_TOKEN)"; >>>>> SQL statement: >>>>> INSERT INTO IDN_OAUTH2_ACCESS_TOKEN (ACCESS_TOKEN, REFRESH_TOKEN, >>>>> CONSUMER_KEY, AUTHZ_USER, TIME_CREATED, VALIDITY_PERIOD, TOKEN_SCOPE, >>>>> TOKEN_STATE, USER_TYPE) VALUES (?,?,?,?,?,?,?,?,?) [23001-140] >>>>> at org.h2.message.DbException.getJdbcSQLException(DbException.java:327) >>>>> at org.h2.message.DbException.get(DbException.java:167) >>>>> at org.h2.message.DbException.get(DbException.java:144) >>>>> at org.h2.index.BaseIndex.getDuplicateKeyException(BaseIndex.java:157) >>>>> at org.h2.index.PageBtree.find(PageBtree.java:121) >>>>> at org.h2.index.PageBtreeLeaf.addRow(PageBtreeLeaf.java:138) >>>>> at org.h2.index.PageBtreeLeaf.addRowTry(PageBtreeLeaf.java:93) >>>>> at org.h2.index.PageBtreeIndex.addRow(PageBtreeIndex.java:90) >>>>> at org.h2.index.PageBtreeIndex.add(PageBtreeIndex.java:81) >>>>> at org.h2.table.RegularTable.addRow(RegularTable.java:116) >>>>> at org.h2.command.dml.Insert.insertRows(Insert.java:120) >>>>> at org.h2.command.dml.Insert.update(Insert.java:82) >>>>> at org.h2.command.CommandContainer.update(CommandContainer.java:70) >>>>> at org.h2.command.Command.executeUpdate(Command.java:199) >>>>> at >>>>> org.h2.jdbc.JdbcPreparedStatement.execute(JdbcPreparedStatement.java:179) >>>>> at >>>>> org.wso2.carbon.identity.oauth2.dao.TokenMgtDAO.storeAccessToken(TokenMgtDAO.java:191) >>>>> ... 56 more >>>>> 14:58:36,542 org.wso2.carbon.identity.oauth2.OAuth2Service - Error >>>>> occurred while issuing the access token for Client ID : >>>>> j9vLqqCBHwHYBJhoI4RK7uhzhwwa, User ID null, Scope : >>>>> [Ljava.lang.String;@3d9626c5 and Grant Type : refresh_token >>>>> org.wso2.carbon.identity.oauth2.IdentityOAuth2Exception: Error while >>>>> getting an Identity Persistence Store instance. >>>>> at >>>>> org.wso2.carbon.identity.oauth2.dao.TokenMgtDAO.invalidateAndCreateNewToken(TokenMgtDAO.java:877) >>>>> at >>>>> org.wso2.carbon.identity.oauth2.token.handlers.grant.RefreshGrantHandler.issue(RefreshGrantHandler.java:210) >>>>> at >>>>> org.wso2.carbon.identity.oauth2.token.AccessTokenIssuer.issue(AccessTokenIssuer.java:187) >>>>> at >>>>> org.wso2.carbon.identity.oauth2.OAuth2Service.issueAccessToken(OAuth2Service.java:176) >>>>> at >>>>> org.wso2.carbon.identity.oauth.endpoint.token.OAuth2TokenEndpoint.getAccessToken(OAuth2TokenEndpoint.java:234) >>>>> at >>>>> org.wso2.carbon.identity.oauth.endpoint.token.OAuth2TokenEndpoint.issueAccessToken(OAuth2TokenEndpoint.java:108) >>>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >>>>> at >>>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) >>>>> at >>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) >>>>> at java.lang.reflect.Method.invoke(Method.java:606) >>>>> at >>>>> org.apache.cxf.service.invoker.AbstractInvoker.performInvocation(AbstractInvoker.java:180) >>>>> at >>>>> org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:96) >>>>> at org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:194) >>>>> at org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:100) >>>>> at >>>>> org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerInterceptor.java:57) >>>>> at >>>>> org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(ServiceInvokerInterceptor.java:93) >>>>> at >>>>> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:271) >>>>> at >>>>> org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121) >>>>> at >>>>> org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:239) >>>>> at >>>>> org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:223) >>>>> at >>>>> org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:203) >>>>> at >>>>> org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:137) >>>>> at >>>>> org.apache.cxf.transport.servlet.CXFNonSpringServlet.invoke(CXFNonSpringServlet.java:159) >>>>> at >>>>> org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:286) >>>>> at >>>>> org.apache.cxf.transport.servlet.AbstractHTTPServlet.doPost(AbstractHTTPServlet.java:206) >>>>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:646) >>>>> at >>>>> org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPServlet.java:262) >>>>> at >>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303) >>>>> at >>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) >>>>> at >>>>> org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) >>>>> at >>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) >>>>> at >>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) >>>>> at >>>>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220) >>>>> at >>>>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122) >>>>> at >>>>> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:504) >>>>> at >>>>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170) >>>>> at >>>>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) >>>>> at >>>>> org.wso2.carbon.tomcat.ext.valves.CompositeValve.continueInvocation(CompositeValve.java:99) >>>>> at >>>>> org.wso2.carbon.tomcat.ext.valves.CarbonTomcatValve$1.invoke(CarbonTomcatValve.java:47) >>>>> at >>>>> org.wso2.carbon.webapp.mgt.TenantLazyLoaderValve.invoke(TenantLazyLoaderValve.java:57) >>>>> at >>>>> org.wso2.carbon.webapp.authenticator.framework.WebappAuthenticatorFrameworkValve.invoke(WebappAuthenticatorFrameworkValve.java:39) >>>>> at >>>>> org.wso2.carbon.tomcat.ext.valves.TomcatValveContainer.invokeValves(TomcatValveContainer.java:47) >>>>> at >>>>> org.wso2.carbon.tomcat.ext.valves.CompositeValve.invoke(CompositeValve.java:62) >>>>> at >>>>> org.wso2.carbon.tomcat.ext.valves.CarbonStuckThreadDetectionValve.invoke(CarbonStuckThreadDetectionValve.java:159) >>>>> at >>>>> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950) >>>>> at >>>>> org.wso2.carbon.tomcat.ext.valves.CarbonContextCreatorValve.invoke(CarbonContextCreatorValve.java:57) >>>>> at >>>>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116) >>>>> at >>>>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:421) >>>>> at >>>>> org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1074) >>>>> at >>>>> org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611) >>>>> at >>>>> org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1739) >>>>> at >>>>> org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1698) >>>>> at >>>>> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) >>>>> at >>>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) >>>>> at >>>>> org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) >>>>> at java.lang.Thread.run(Thread.java:745) >>>>> Caused by: org.wso2.carbon.identity.oauth2.IdentityOAuth2Exception: >>>>> Error when storing the access token for consumer key : >>>>> j9vLqqCBHwHYBJhoI4RK7uhzhwwa >>>>> at >>>>> org.wso2.carbon.identity.oauth2.dao.TokenMgtDAO.storeAccessToken(TokenMgtDAO.java:201) >>>>> at >>>>> org.wso2.carbon.identity.oauth2.dao.TokenMgtDAO.invalidateAndCreateNewToken(TokenMgtDAO.java:870) >>>>> ... 55 more >>>>> Caused by: org.h2.jdbc.JdbcSQLException: Unique index or primary key >>>>> violation: "PRIMARY_KEY_F ON >>>>> PUBLIC.IDN_OAUTH2_ACCESS_TOKEN(ACCESS_TOKEN)"; >>>>> SQL statement: >>>>> INSERT INTO IDN_OAUTH2_ACCESS_TOKEN (ACCESS_TOKEN, REFRESH_TOKEN, >>>>> CONSUMER_KEY, AUTHZ_USER, TIME_CREATED, VALIDITY_PERIOD, TOKEN_SCOPE, >>>>> TOKEN_STATE, USER_TYPE) VALUES (?,?,?,?,?,?,?,?,?) [23001-140] >>>>> at org.h2.message.DbException.getJdbcSQLException(DbException.java:327) >>>>> at org.h2.message.DbException.get(DbException.java:167) >>>>> at org.h2.message.DbException.get(DbException.java:144) >>>>> at org.h2.index.BaseIndex.getDuplicateKeyException(BaseIndex.java:157) >>>>> at org.h2.index.PageBtree.find(PageBtree.java:121) >>>>> at org.h2.index.PageBtreeLeaf.addRow(PageBtreeLeaf.java:138) >>>>> at org.h2.index.PageBtreeLeaf.addRowTry(PageBtreeLeaf.java:93) >>>>> at org.h2.index.PageBtreeIndex.addRow(PageBtreeIndex.java:90) >>>>> at org.h2.index.PageBtreeIndex.add(PageBtreeIndex.java:81) >>>>> at org.h2.table.RegularTable.addRow(RegularTable.java:116) >>>>> at org.h2.command.dml.Insert.insertRows(Insert.java:120) >>>>> at org.h2.command.dml.Insert.update(Insert.java:82) >>>>> at org.h2.command.CommandContainer.update(CommandContainer.java:70) >>>>> at org.h2.command.Command.executeUpdate(Command.java:199) >>>>> at >>>>> org.h2.jdbc.JdbcPreparedStatement.execute(JdbcPreparedStatement.java:179) >>>>> at >>>>> org.wso2.carbon.identity.oauth2.dao.TokenMgtDAO.storeAccessToken(TokenMgtDAO.java:191) >>>>> ... 56 more >>>>> >>>>> On Thu, May 28, 2015 at 11:41 AM, Milan Perera <mi...@wso2.com> wrote: >>>>> >>>>>> Hi, >>>>>> >>>>>> Sorry for the inconvenience that made due to above incomplete reply. >>>>>> These are the steps which I have followed in order to reproduce the >>>>>> error. >>>>>> >>>>>> I used following curl command to obtain access token: >>>>>> >>>>>> curl -k -d "grant_type=password&username=admin&password=admin" -H >>>>>> "Authorization: Basic >>>>>> OEVYclJMTVlQRlNEN2pKdWJ3R3JFS29LSjJZYTprQnBIdW9YOWdJdkRSZXdZQ2ZmY3JYMkZnVFVh, >>>>>> Content-Type: application/x-www-form-urlencoded" >>>>>> https://localhost:9443/oauth2/token >>>>>> >>>>>> Then I got the reply as, >>>>>> >>>>>> >>>>>> {"scope":"default","token_type":"Bearer","expires_in":3600,"refresh_token":"20bd85edc1986d8679745ae11b2289","access_token":"eb19fe9bfe66ac2fb8623c2ee9a387d"} >>>>>> >>>>>> So I took the refresh token value from above response and used >>>>>> following curl command to get the new access token: >>>>>> >>>>>> curl -k -d >>>>>> "grant_type=refresh_token&refresh_token=20bd85edc1986d8679745ae11b2289&scope=PRODUCTION" >>>>>> -H "Authorization: Basic >>>>>> OEVYclJMTVlQRlNEN2pKdWJ3R3JFS29LSjJZYTprQnBIdW9YOWdJdkRSZXdZQ2ZmY3JYMkZnVFVh, >>>>>> Content-Type: application/x-www-form-urlencoded" >>>>>> https://localhost:9443/oauth2/token >>>>>> >>>>>> Then I got the response as >>>>>> {"error":"server_error","error_description":"Server >>>>>> Error"} with above mentioned exception in the server side. >>>>>> >>>>>> Regards, >>>>>> >>>>>> On Thu, May 28, 2015 at 11:23 AM, Milan Perera <mi...@wso2.com> >>>>>> wrote: >>>>>> >>>>>>> Hi Thilini, >>>>>>> >>>>>>> I was not able to resolve this >>>>>>> >>>>>>> On Mon, May 25, 2015 at 9:33 AM, Thilini Cooray <thili...@wso2.com> >>>>>>> wrote: >>>>>>> >>>>>>>> Hi Milan, >>>>>>>> >>>>>>>> Were you able to resolve this issue? >>>>>>>> It seems to be a primary key constraint violation, trying to insert >>>>>>>> an access token which is already in the database. >>>>>>>> Are you getting this continuously or is this an intermittent issue? >>>>>>>> >>>>>>>> Thanks. >>>>>>>> >>>>>>>> On Sun, May 24, 2015 at 1:57 PM, Milan Perera <mi...@wso2.com> >>>>>>>> wrote: >>>>>>>> >>>>>>>>> Hi, >>>>>>>>> >>>>>>>>> I'm getting following exception when the android client >>>>>>>>> application tries to obtain a token after the expiration time. >>>>>>>>> >>>>>>>>> [2015-05-24 13:07:39,483] ERROR >>>>>>>>> {org.wso2.carbon.identity.oauth2.OAuth2Service} - Error occurred >>>>>>>>> while >>>>>>>>> issuing the access token for Client ID : >>>>>>>>> wmDGttgLFP3r0iQe54F3YMJTGFQa, User >>>>>>>>> ID null, Scope : [Ljava.lang.String;@33f9a5f1 and Grant Type : >>>>>>>>> refresh_token >>>>>>>>> org.wso2.carbon.identity.oauth2.IdentityOAuth2Exception: Error >>>>>>>>> while getting an Identity Persistence Store instance. >>>>>>>>> at >>>>>>>>> org.wso2.carbon.identity.oauth2.dao.TokenMgtDAO.invalidateAndCreateNewToken(TokenMgtDAO.java:877) >>>>>>>>> at >>>>>>>>> org.wso2.carbon.identity.oauth2.token.handlers.grant.RefreshGrantHandler.issue(RefreshGrantHandler.java:210) >>>>>>>>> at >>>>>>>>> org.wso2.carbon.identity.oauth2.token.AccessTokenIssuer.issue(AccessTokenIssuer.java:187) >>>>>>>>> at >>>>>>>>> org.wso2.carbon.identity.oauth2.OAuth2Service.issueAccessToken(OAuth2Service.java:176) >>>>>>>>> at >>>>>>>>> org.wso2.carbon.identity.oauth.endpoint.token.OAuth2TokenEndpoint.getAccessToken(OAuth2TokenEndpoint.java:234) >>>>>>>>> at >>>>>>>>> org.wso2.carbon.identity.oauth.endpoint.token.OAuth2TokenEndpoint.issueAccessToken(OAuth2TokenEndpoint.java:108) >>>>>>>>> at sun.reflect.GeneratedMethodAccessor108.invoke(Unknown >>>>>>>>> Source) >>>>>>>>> at >>>>>>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) >>>>>>>>> at java.lang.reflect.Method.invoke(Method.java:601) >>>>>>>>> at >>>>>>>>> org.apache.cxf.service.invoker.AbstractInvoker.performInvocation(AbstractInvoker.java:180) >>>>>>>>> at >>>>>>>>> org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:96) >>>>>>>>> at >>>>>>>>> org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:194) >>>>>>>>> at >>>>>>>>> org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:100) >>>>>>>>> at >>>>>>>>> org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerInterceptor.java:57) >>>>>>>>> at >>>>>>>>> org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(ServiceInvokerInterceptor.java:93) >>>>>>>>> at >>>>>>>>> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:271) >>>>>>>>> at >>>>>>>>> org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121) >>>>>>>>> at >>>>>>>>> org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:239) >>>>>>>>> at >>>>>>>>> org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:223) >>>>>>>>> at >>>>>>>>> org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:203) >>>>>>>>> at >>>>>>>>> org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:137) >>>>>>>>> at >>>>>>>>> org.apache.cxf.transport.servlet.CXFNonSpringServlet.invoke(CXFNonSpringServlet.java:159) >>>>>>>>> at >>>>>>>>> org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:286) >>>>>>>>> at >>>>>>>>> org.apache.cxf.transport.servlet.AbstractHTTPServlet.doPost(AbstractHTTPServlet.java:206) >>>>>>>>> at >>>>>>>>> javax.servlet.http.HttpServlet.service(HttpServlet.java:646) >>>>>>>>> at >>>>>>>>> org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPServlet.java:262) >>>>>>>>> at >>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303) >>>>>>>>> at >>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) >>>>>>>>> at >>>>>>>>> org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) >>>>>>>>> at >>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) >>>>>>>>> at >>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) >>>>>>>>> at >>>>>>>>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220) >>>>>>>>> at >>>>>>>>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122) >>>>>>>>> at >>>>>>>>> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:504) >>>>>>>>> at >>>>>>>>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170) >>>>>>>>> at >>>>>>>>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) >>>>>>>>> at >>>>>>>>> org.wso2.carbon.tomcat.ext.valves.CompositeValve.continueInvocation(CompositeValve.java:99) >>>>>>>>> at >>>>>>>>> org.wso2.carbon.tomcat.ext.valves.CarbonTomcatValve$1.invoke(CarbonTomcatValve.java:47) >>>>>>>>> at >>>>>>>>> org.wso2.carbon.webapp.mgt.TenantLazyLoaderValve.invoke(TenantLazyLoaderValve.java:57) >>>>>>>>> at >>>>>>>>> org.wso2.carbon.webapp.authenticator.framework.WebappAuthenticatorFrameworkValve.invoke(WebappAuthenticatorFrameworkValve.java:39) >>>>>>>>> at >>>>>>>>> org.wso2.carbon.tomcat.ext.valves.TomcatValveContainer.invokeValves(TomcatValveContainer.java:47) >>>>>>>>> at >>>>>>>>> org.wso2.carbon.tomcat.ext.valves.CompositeValve.invoke(CompositeValve.java:62) >>>>>>>>> at >>>>>>>>> org.wso2.carbon.tomcat.ext.valves.CarbonStuckThreadDetectionValve.invoke(CarbonStuckThreadDetectionValve.java:159) >>>>>>>>> at >>>>>>>>> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950) >>>>>>>>> at >>>>>>>>> org.wso2.carbon.tomcat.ext.valves.CarbonContextCreatorValve.invoke(CarbonContextCreatorValve.java:57) >>>>>>>>> at >>>>>>>>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116) >>>>>>>>> at >>>>>>>>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:421) >>>>>>>>> at >>>>>>>>> org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1074) >>>>>>>>> at >>>>>>>>> org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611) >>>>>>>>> at >>>>>>>>> org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1739) >>>>>>>>> at >>>>>>>>> org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1698) >>>>>>>>> at >>>>>>>>> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) >>>>>>>>> at >>>>>>>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) >>>>>>>>> at >>>>>>>>> org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) >>>>>>>>> at java.lang.Thread.run(Thread.java:722) >>>>>>>>> Caused by: >>>>>>>>> org.wso2.carbon.identity.oauth2.IdentityOAuth2Exception: Error when >>>>>>>>> storing >>>>>>>>> the access token for consumer key : wmDGttgLFP3r0iQe54F3YMJTGFQa >>>>>>>>> at >>>>>>>>> org.wso2.carbon.identity.oauth2.dao.TokenMgtDAO.storeAccessToken(TokenMgtDAO.java:201) >>>>>>>>> at >>>>>>>>> org.wso2.carbon.identity.oauth2.dao.TokenMgtDAO.invalidateAndCreateNewToken(TokenMgtDAO.java:870) >>>>>>>>> ... 54 more >>>>>>>>> Caused by: org.h2.jdbc.JdbcSQLException: Unique index or primary >>>>>>>>> key violation: "PRIMARY_KEY_F ON >>>>>>>>> PUBLIC.IDN_OAUTH2_ACCESS_TOKEN(ACCESS_TOKEN)"; SQL statement: >>>>>>>>> INSERT INTO IDN_OAUTH2_ACCESS_TOKEN (ACCESS_TOKEN, REFRESH_TOKEN, >>>>>>>>> CONSUMER_KEY, AUTHZ_USER, TIME_CREATED, VALIDITY_PERIOD, TOKEN_SCOPE, >>>>>>>>> TOKEN_STATE, USER_TYPE) VALUES (?,?,?,?,?,?,?,?,?) [23001-140] >>>>>>>>> at >>>>>>>>> org.h2.message.DbException.getJdbcSQLException(DbException.java:327) >>>>>>>>> at org.h2.message.DbException.get(DbException.java:167) >>>>>>>>> at org.h2.message.DbException.get(DbException.java:144) >>>>>>>>> at >>>>>>>>> org.h2.index.BaseIndex.getDuplicateKeyException(BaseIndex.java:157) >>>>>>>>> at org.h2.index.PageBtree.find(PageBtree.java:121) >>>>>>>>> at >>>>>>>>> org.h2.index.PageBtreeLeaf.addRow(PageBtreeLeaf.java:138) >>>>>>>>> at >>>>>>>>> org.h2.index.PageBtreeLeaf.addRowTry(PageBtreeLeaf.java:93) >>>>>>>>> at >>>>>>>>> org.h2.index.PageBtreeIndex.addRow(PageBtreeIndex.java:90) >>>>>>>>> at org.h2.index.PageBtreeIndex.add(PageBtreeIndex.java:81) >>>>>>>>> at org.h2.table.RegularTable.addRow(RegularTable.java:116) >>>>>>>>> at org.h2.command.dml.Insert.insertRows(Insert.java:120) >>>>>>>>> at org.h2.command.dml.Insert.update(Insert.java:82) >>>>>>>>> at >>>>>>>>> org.h2.command.CommandContainer.update(CommandContainer.java:70) >>>>>>>>> at org.h2.command.Command.executeUpdate(Command.java:199) >>>>>>>>> at >>>>>>>>> org.h2.jdbc.JdbcPreparedStatement.execute(JdbcPreparedStatement.java:179) >>>>>>>>> at >>>>>>>>> org.wso2.carbon.identity.oauth2.dao.TokenMgtDAO.storeAccessToken(TokenMgtDAO.java:191) >>>>>>>>> ... 55 more >>>>>>>>> >>>>>>>>> Any help on this matter would be appreciated. >>>>>>>>> >>>>>>>>> Regards, >>>>>>>>> >>>>>>>>> -- >>>>>>>>> Milan Harindu Perera >>>>>>>>> Software Engineer >>>>>>>>> *WSO2, Inc* >>>>>>>>> (+94) 77 309 7088 >>>>>>>>> lean . enterprise . middleware >>>>>>>>> <http://lk.linkedin.com/in/milanharinduperera> >>>>>>>>> >>>>>>>>> _______________________________________________ >>>>>>>>> Dev mailing list >>>>>>>>> Dev@wso2.org >>>>>>>>> http://wso2.org/cgi-bin/mailman/listinfo/dev >>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> -- >>>>>>>> Best Regards, >>>>>>>> >>>>>>>> *Thilini Cooray* >>>>>>>> Software Engineer >>>>>>>> Mobile : +94 (0) 774 570 112 <%2B94%20%280%29%20773%20451194> >>>>>>>> E-mail : thili...@wso2.com >>>>>>>> >>>>>>>> WSO2 Inc. www.wso2.com >>>>>>>> lean.enterprise.middleware >>>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> Milan Harindu Perera >>>>>>> Software Engineer >>>>>>> *WSO2, Inc* >>>>>>> (+94) 77 309 7088 >>>>>>> lean . enterprise . middleware >>>>>>> <http://lk.linkedin.com/in/milanharinduperera> >>>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> Milan Harindu Perera >>>>>> Software Engineer >>>>>> *WSO2, Inc* >>>>>> (+94) 77 309 7088 >>>>>> lean . enterprise . middleware >>>>>> <http://lk.linkedin.com/in/milanharinduperera> >>>>>> >>>>>> _______________________________________________ >>>>>> Dev mailing list >>>>>> Dev@wso2.org >>>>>> http://wso2.org/cgi-bin/mailman/listinfo/dev >>>>>> >>>>>> >>>>> >>>>> >>>>> -- >>>>> Dulitha Wijewantha (Chan) >>>>> Software Engineer - Mobile Development >>>>> WSO2 Inc >>>>> Lean.Enterprise.Middleware >>>>> * ~Email duli...@wso2.com <duli...@wso2mobile.com>* >>>>> * ~Mobile +94712112165 <%2B94712112165>* >>>>> * ~Website dulitha.me <http://dulitha.me>* >>>>> * ~Twitter @dulitharw <https://twitter.com/dulitharw>* >>>>> *~Github @dulichan <https://github.com/dulichan>* >>>>> *~SO @chan <http://stackoverflow.com/users/813471/chan>* >>>>> >>>> >>>> >>>> >>>> -- >>>> Prabath Abeysekara >>>> Technical Lead >>>> WSO2 Inc. >>>> Email: praba...@wso2.com >>>> Mobile: +94774171471 >>>> >>> > > > -- > Manoj Gunawardena > Tech Lead > WSO2, Inc.: http://wso2.com > lean.enterprise.middleware > Mobile : +94 77 2291643 > -- Prasad Tissera Software Engineer. Mobile : +94777223444
_______________________________________________ Dev mailing list Dev@wso2.org http://wso2.org/cgi-bin/mailman/listinfo/dev