分享一波大数据&Java的学习视频和书籍:
### Java与大数据资源分享
使用Ebean框架作为ORM框架,在发送请求后遇到如下服务端500错误。
看到错误提示说user is null? 怀疑是配置文件加载有问题。
于是开始根据调用栈,在createServer方法上打断点进行debug,一步一步追踪,发现到最后真的是获取配置的问题。
根据提示,在resources目录下的applicationyaml中把配置以dataSource为前缀进行填写,成功解决数据块配置找不到的问题。
可以看到能够加载数据库了,但是遇到了一个新的问题:
程序抛出BeanNotEnhancedException异常。异常信息如下:
11:11:17.850 [http-nio-8080-exec-1] ERROR o.a.c.c.C.[.[.[.[.b.h.h.c.HiveTTLConfig] - Servlet.service() for servlet [sg.bigo.hdfs.hivettl.config.HiveTTLConfig] in context with path [] threw exception [org.glassfish.jersey.server.ContainerException: java.lang.ExceptionInInitializerError] with root cause
io.ebean.config.BeanNotEnhancedException: Super type class sg.bigo.hdfs.hivettl.entity.ResourceBase is not enhanced? Check the packages specified in ebean.mf See https://ebean.io/docs/trouble-shooting#not-enhanced
于是到官网中的trouble-shooting看原因,发现要在plugin里面加上如下插件:
最终终于成功:
总结:
- 遇到开源框架的各种奇怪问题,要习惯用断点debug,看每一步的变量值以及调用过程。
- 常做思考和总结,下次遇到这种问题就不用再debug了,凭借经验就能知道大概是什么问题。
网友评论