首页 文章

java.net.SocketTimeoutException:读取WSO2 Identity Server OAuth令牌验证超时

提问于
浏览
0

尝试从WSO2 ESB到WSO2 IS的LDAP用户OAuth令牌验证时,ESB发生了以下错误 .

{org.apache.axis2.transport.http.HTTPSender} -  Unable to sendViaPost to url
    [https://identityserver.com/services/OAuth2TokenValidationService] 
    {org.apache.axis2.transport.http.HTTPSender} java.net.SocketTimeoutException: 
    Read timed out

OAuth令牌验证成功运行在服务器启动后以及发生上述错误后的几次 .

上述错误的原因是什么?怎么解决这个问题?

Update

身份服务器日志同时显示以下错误 .

TID: [0] [IS] [2013-12-19 05:04:52,904] ERROR {java.lang.Class} - 
 Access Denied. Failed authorization attempt to access service 'OAuth2TokenValidationService' operation 'validate' by 'LDAP/admin' {java.lang.Class}
    TID: [0] [IS] [2013-12-19 05:04:52,904] ERROR {org.apache.axis2.engine.AxisEngine} -  Access Denied. {org.apache.axis2.engine.AxisEngine}
    org.apache.axis2.AxisFault: Access Denied.
        at org.wso2.carbon.server.admin.module.handler.AuthorizationHandler.doAuthorization(AuthorizationHandler.java:124)
        at org.wso2.carbon.server.admin.module.handler.AuthorizationHandler.invoke(AuthorizationHandler.java:88)
        at org.apache.axis2.engine.Phase.invokeHandler(Phase.java:340)
        at org.apache.axis2.engine.Phase.invoke(Phase.java:313)
        at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:261)
        at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:167)
        at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:172)

为什么这个Access Denied错误有时候 . 它成功登录其他时间 .

1 回答

  • 1

    根据错误,似乎ESB无法将消息发送到以下url . 有时这项服务需要很长时间才能回复ESB(超过30秒) . 然后我们可以猜测,问题可能在WSO2IS方面 . 你能看到WSO2IS方面的任何错误或任何日志吗?如果没有,您可以在WSO2IS中启用调试日志并查看 . 你可以使用log4j.properties文件 . 如果响应迟到,通过查看log4j日志中的时间戳,我们可以了解瓶颈发生的位置 .

    https://identityserver.com/services/OAuth2TokenValidationService

相关问题