点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
创建accessToken后无法生成refreshToken。 这种情况很少发生,我们无法找到根本原因。 后端的异常指出索引P_AuthenticationID的唯一约束已失败。 在这种情况下,refreshToken条目存在于OAUTHREFRESHTOKEN中,但相应的条目已在OAUTHACCESSTOKEN中被删除。
PFB堆栈跟踪。 在这里, AUTHENTICATIONIDIDX_6228 在P_AuthenticationId上建立了索引。 在此先感谢您的帮助。
" detailMessage":" org.springframework.dao.DuplicateKeyException:查询; SQL []; ORA-00001:违反了唯一约束(MPLUATCOM.AUTHENTICATIONIDIDX_6228)\ n;嵌套的异常是java.sql.SQLIntegrityConstraintViolationException:ORA-00001: 违反唯一约束(MPLUATCOM.AUTHENTICATIONIDIDX_6228)\ n","原因":{" detailMessage":" org.springframework.dao.DuplicateKeyException:query; SQL []; ORA-00001:违反唯一约束(MPLUATCOM.AUTHENTICATIONIDIDX_6228)\ n ;嵌套的异常是java.sql.SQLIntegrityConstraintViolationException:ORA-00001:唯一约束(MPLUATCOM.AUTHENTICATIONIDIDX_6228)被违反\ n"," cause":{" detailMessage":" org.springframework.dao.DuplicateKeyException:query; SQL []; ORA-00001:违反了唯一约束(MPLUATCOM.AUTHENTICATIONIDIDX_6228)\ n;嵌套异常是java.sql.SQLIntegrityConstraintViolationException:ORA-00001:违反了唯一约束(MPLUATCOM.AUTHENTICATIONIDIDX_6228)\ n","原因":{" detailMessage":" org.springframework.da o.DuplicateKeyException:查询; SQL []; ORA-00001:违反了唯一约束(MPLUATCOM.AUTHENTICATIONIDIDX_6228)\ n; 嵌套异常是java.sql.SQLIntegrityConstraintViolationException:ORA-00001:违反了唯一约束(MPLUATCOM.AUTHENTICATIONIDIDX_6228)\ n"," cause":{" detailMessage":"查询; SQL []; ORA-00001:违反了唯一约束(MPLUATCOM.AUTHENTICATIONIDIDX_6228)\ n"," cause":{" detailMessage":" ORA-00001:违反了唯一约束(MPLUATCOM.AUTHENTICATIONIDIDX_6228)\ n"," stackTrace":[" oracle。 jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:450)"," oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:399)"," oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java: 1059)"," oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:522)"," oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:257)"," oracle.jdbc.driver.T4C8Oall .doOALL(T4C8Oall.java:587)"," oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:225)"," oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:53)"," oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedStatement.java:943)"," oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1150)"," oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement。 的java:4 798)"," oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:4875)"," oracle.jdbc.driver.OraclePreparedStatementWrapper.executeUpdate(OraclePreparedStatementWrapper.java:1361)"," de.hybris.platform.jdbcwrapper .PreparedStatementImpl.executeUpdate(PreparedStatementImpl.java:270)"," de.hybris.platform.persistence.GenericBMPBean $ GenericItemEntityState.createEntity(GenericBMPBean.java:1758)"," de.hybris.platform.persistence.GenericBMPBean.ejbCreate(GenericBMPBean .java:360)"," sun.reflect.GeneratedMethodAccessor324.invoke(未知源)"," sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)"," java.lang.reflect.Method.invoke(Method .java:497)"," de.hybris.platform.util.Utilities.callMethod(Utilities.java:1069)"," de.hybris.platform.util.Utilities.callMethod(Utilities.java:1059)"," de.hybris.platform.persistence.framework.HomeInvocationHandler.invoke(HomeInvocationHandler.java:63)"," com.sun.proxy。$ Proxy73.create(未知源 e)"," de.hybris.platform.persistence.GenericItemEJBImpl.createGenericItem(GenericItemEJBImpl.java:119)"," de.hybris.platform.jalo.GenericItem.createItem(GenericItem.java:88)"," de.hybris .platform.commercewebservicescommons.jalo.OAuthAccessTo 03-01 15:30:52.356 27284-27432/com.tul.tatacliq D/Retrofit:ken.createItem(OAuthAccessToken.java:32)"," de.hybris.platform.jalo。 Item.newInstanceInternal(Item.java:4023)"," de.hybris.platform.jalo.Item.access $ 6(Item.java:3964)"," de.hybris.platform.jalo.Item $ 19.execute(Item。 java:3942)"," de.hybris.platform.tx.Transaction.execute(Transaction.java:1195)"," de.hybris.platform.tx.Transaction.execute(Transaction.java:1160)"," de .hybris.platform.jalo.Item.newInstance(Item.java:3937)"," de.hybris.platform.jalo.type.ComposedType.newInstance(ComposedType.java:1340)"," de.hybris.platform.jalo .type.ComposedType.newInstance(ComposedType.java:1260)"," de.hybris.platform.servicelayer.internal.converter.impl.ItemModelConverter.createNewItem(ItemModelConverter.java :2022)"," de.hybris.platform.servicelayer.internal.converter.impl.ItemModelConverter.save(ItemModelConverter.java:717)"," de.hybris.platform.servicelayer.internal.model.impl.wrapper.ModelWrapper .save(ModelWrapper.java:336)"," de.hybris.platform.servicelayer.internal.model.impl.ResolvingModelPersister.saveNewOnes(ResolvingModelPersister.java:80)"," de.hybris.platform.servicelayer.internal.model .impl.ResolvingModelPersister.persist(ResolvingModelPersister.java:48)"," de.hybris.platform.servicelayer.internal.model.impl.DefaultModelService.saveViaJalo(DefaultModelService.java:1059)"," de.hybris.platform.servicelayer .internal.model.impl.DefaultModelService.doJaloPersistence(DefaultModelService.java:648)"," de.hybris.platform.servicelayer.internal.model.impl.DefaultModelService.persistWrappers(DefaultModelService.java:1002)"," de.hybris .platform.servicelayer.internal.model.impl.DefaultModelService.performPersistenceOperations(DefaultModelService.java:626)"," de.hybris.platform.servicelayer.i nternal.model.impl.DefaultModelService.saveAllInternal(DefaultModelService.java:620)"," de.hybris.platform.servicelayer.internal.model.impl.DefaultModelService.saveAll(DefaultModelService.java:600)"," de.hybris。 platform.servicelayer.internal.model.impl.DefaultModelService.save(DefaultModelService.java:548)"," de.hybris.platform.commercewebservicescommons.oauth2.token.impl.DefaultOAuthTokenService $ 12.execute(DefaultOAuthTokenService.java:307)", " de.hybris.platform.servicelayer.session.impl.DefaultSessionService.executeInLocalView(DefaultSessionService.java:91)"," de.hybris.platform.commercewebservicescommons.oauth2.token.impl.DefaultOAuthTokenService.saveAccessToken(DefaultOAuthTokenService.java:284) "," com.tisl.mpl.oauth2.token.provider.HybrisOAuthTokenStore.storeAccessToken(HybrisOAuthTokenStore.java:101)"," org.springframework.security.oauth2.provider.token.DefaultTokenServices.refreshAccessToken(DefaultTokenServices.java:162) "," org.springframework.security.oauth2.provider.refresh.R efreshTokenGranter.getAccessToken(RefreshTokenGranter.java:42)"," org.springframework.security.oauth2.provider.token.AbstractTokenGranter.grant(AbstractTokenGranter.java:65)"," org.springframework.security.oauth2.provider.CompositeTokenGranter。 grant(CompositeTokenGranter.java:38)"," org.springframework.security.oauth2.provider.endpoint.TokenEndpoint.getAccessToken(TokenEndpoint.java:122)"," sun.reflect.GeneratedMethodAccessor4791.invoke(未知源)"," sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)"," java.lang.reflect.Method.invoke(Method.java:497)"," org.springframework.web.method.support.InvocableHandlerMethod.doInvoke( InvocableHandlerMethod.java:221)"," org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:137)",03-01 15:30:52.356 27284-27432/com.tul.tatacliq D/改进:" org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableH andlerMethod.java:110)"," org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandleMethod(RequestMappingHandlerAdapter.java:777)"," org.springframework.web.servlet.mvc.method.annotation。 RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:706)"," org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:85)",
这里没有解决方案,但是我们有同样的问题。 目前,我的猜测是与几乎同一时间针对同一用户的多个类似请求有关。 经常发生,但直到现在尝试重现都没有成功。
编辑:"双重请求"时可以复制。 现在,我们通过处理异常(在捕获异常时返回有效令牌而不是创建新令牌)来防止这种情况。
一周热门 更多>