flink使用fastjson在flatmap中解析Json,在idea中正常,但生产环境失败。-问答-阿里云开发者社区-阿里云

开发者社区> 我有一个梦想> 正文

flink使用fastjson在flatmap中解析Json,在idea中正常,但生产环境失败。

2020-11-23 09:26:44 442 1

./bin/flink run -p2 -c com.ydx.streaming.StreamingGoodsDetailJob /opt/module/flink-1.11.2/examples/batch/StreamingRecommender-1.0-SNAPSHOT.jar

源码

class GoodsDetailPageFlatMapFunction extends FlatMapFunction[String, GoodsDetailPage] {
override def flatMap(t: String, collector: Collector[GoodsDetailPage]): Unit = {
if (t.nonEmpty){
  if(t.contains("\"page\":")) {
    val pageObj = JSON.parseObject(JSON.parseObject(t).getString("page"))
    if(pageObj.getString("page_id") == "good_detail"){
      if(pageObj.getString("item").nonEmpty){
        val jsonOBJ :JSONObject  = JSON.parseObject(t)
        val comObj = JSON.parseObject(jsonOBJ.getString("common"))
        if(comObj.getString("uid").nonEmpty){
          collector.collect(
            GoodsDetailPage(
              uid = comObj.getString("uid"),
              item_type = pageObj.getString("item_type"),
              item = pageObj.getString("item"),
              during_time = pageObj.getString("during_time").toInt,
              ts = jsonOBJ.getString("ts").toLong,
              time_server = jsonOBJ.getString("server_time").toLong,
              first_time = jsonOBJ.getString("server_time").toLong,
              reason = "得分:" + 0
            )
          )
        }

      }
    }
  }
}
}
}

生产报错信息如下:

  • Caused by: java.lang.ClassNotFoundException: com.alibaba.fastjson.JSON (val pageObj = JSON.parseObject(JSON.parseObject(t).getString("page"))) idea中正常,但生产环境中就报错
取消 提交回答
全部回答(1)
  • 我有一个梦想
    2020-11-23 09:30:45
    • 要是不在算子里面使用fastjson是正常的,除非使用scala原生解析json,否则在转换算子中生产环境就找不到类。但算子外使用都是正常的。
    0 0
相关问答

4

回答

Spark 【问答合集】

社区小助手 2019-05-29 14:13:40 123636浏览量 回答数 4

37

回答

阿里官方Java代码规范标准《阿里巴巴Java开发手册》下载

管理贝贝 2017-02-10 15:14:36 74851浏览量 回答数 37

28

回答

钉钉开放平台“常见问题常见问题常见问题“重要请关注

竹梅 2015-12-03 00:39:14 92803浏览量 回答数 28

3

回答

Logstash采集文件名称以及自定义格式的日志文件采集

Snorlax 2019-06-18 11:51:28 114616浏览量 回答数 3

1

回答

在flink集群模式下,能不能指定某个节点的solt来执行一个task?

孙goku 2019-07-01 15:19:09 113327浏览量 回答数 1

7

回答

flink sql 支持checkpoints吗?

游客izljdlkgbdwfc 2019-07-10 17:46:37 121088浏览量 回答数 7

1

回答

出现这个问题求解决This XML file does not appear to have any

淘合肥 2017-04-08 21:07:00 88788浏览量 回答数 1

41

回答

【精品问答集锦】Python热门问题

小六码奴 2019-05-30 15:27:34 135445浏览量 回答数 41

2

回答

Apache Flink常见问题汇总【精品问答】

黄一刀 2020-05-19 17:51:47 45610浏览量 回答数 2

24

回答

【精品问答】python技术1000问(1)

问问小秘 2019-11-15 13:25:00 471161浏览量 回答数 24
0
文章
4
问答
问答排行榜
最热
最新
推荐问答
相关电子书
更多
文娱运维技术
立即下载
《SaaS模式云原生数据仓库应用场景实践》
立即下载
《看见新力量:二》电子书
立即下载