首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  程序员

问一下一个关于 kotlin 的问题,最近刚上手,求大佬帮忙

  •  1
     
  •   blackccc · 287 天前 · 946 次点击
    这是一个创建于 287 天前的主题,其中的信息可能已经有所发展或是发生改变。

    最近项目重构,我原本写 java 的,被拉去写 kotlin,然后借口写完一直报下面的错,请求接口一直超时 { "code": 500, "message": "Timed out after waiting 30000(ms) for a reply. address: bb4e46a1-3cf2-4783-bbce-8a933a30b501, repliedAddress: com.byhealth.scrm.yygj.http.api.rank.GetAllPopupContents", "description": null } 求大佬看看,是什么问题

    14 回复  |  直到 2019-01-29 14:54:29 +08:00
        1
    gz911122   287 天前
    看起来这个问题和 kotlin 毫无关系
        2
    unmois   287 天前
    这是 app 报的错还是服务器接口的错误?
        3
    blackccc   287 天前
    @unmois 服务接口
        4
    gz911122   287 天前
    @blackccc 项目框架是啥之类的简单介绍下啊
    不然别人看着一个超时错误怎么帮你猜
        5
    hongch   287 天前
    问服务端这个 reponse 是什么意思
        6
    blackccc   287 天前
    @gz911122 框架用的是 vertx,我看他的错误是代理抛出来的,其实我也不是很懂 kotlin,写代码就复制粘贴,跟 java 还是有很大区别的,
    我复制一下接口代码给你看看吧

    /**
    * 获取所有弹窗
    * @author ccc
    * @date 2019/1/28 14:43
    */
    @API(path = "/yygj/rank/getAllPopupContents", method = "POST" )
    class GetAllPopupContents(vertx: Vertx, eventZone: String) : AbstractRestHandler(vertx, eventZone) {

    @Autowired
    private lateinit var rankService: RankService

    override fun handleRequest(resource: EBProxyResource) {
    val json = resource.getBodyAsJson()

    rankService.getAllPopupContents(json) {
    if (it.succeeded()) {
    resource.replyCheckNullJson(it.result())
    } else {
    resource.replyErrorJson(it.cause())
    }
    }
    }
    }
        7
    gz911122   287 天前
    @blackccc 如果是 vert.x 的话 ,。。你是不是阻塞主线程了?

    你们什么公司啊。。还这么高级玩 vert.x。感觉国内这些 java 开发天天就知道 spring。。。
        8
    gz911122   287 天前   ♥ 1
    @blackccc 如果你确认是 kotlin 问题的话你这个接口文件换成 java 写试试。我觉得跟 kotlin 没有任何关系。
    再说 kt 很好上手啊。我也是 java 开发,看下 kotlin 官方文档就会写了。
        9
    micean   287 天前
    vertx 的 eventBus 请求某个 address 超时了
    可能是那边没有捕获异常
        10
    blackccc   287 天前
    @gz911122 我觉得应该是我接口我问题吧,我访问其他接口没问题,不是互联网公司,就一个普通的上市公司,kt 还好吧,我都没接触过,而且项目都是写好的,我在上面写新功能,还是有点懵逼的
        11
    blackccc   287 天前
    @micean 我感觉请求都没进去,我用 postman 调试,一直在等响应,然后响应的都是抛出错误 500 超时
        12
    micean   287 天前   ♥ 1
    先 debug 目标业务代码有没有调用,再检查 vertx 的封装有没有捕获异常并处理返回
        13
    blackccc   287 天前
    @micean 我 debug 失效了,打断点,不能用,我是用 debug 启动的
        14
    blackccc   287 天前
    @micean com.byhealth.scrm.apigateway.handler.proxy.EventBusProxyHandler.lambda$null$0(EventBusProxyHandler.java:96)
    抛出了这个错,好像跟你说的 eventBus 有关
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2695 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 28ms · UTC 13:19 · PVG 21:19 · LAX 05:19 · JFK 08:19
    ♥ Do have faith in what you're doing.