对于不听取别人意见的人来说,他们工作很轻松,随意而为;但老司机得随时给他们搽屁股救火;
这给了我们一个警示:招聘新人必须考量这个人的性格特质
废话不多说,我们看问题
问题: 站内聊天不能打开,提示登录失败
bm站内聊天, 使用的是openfire
查看日志报错:
1. 空指针异常
2019.07.30 08:44:04 org.jivesoftware.openfire.container.PluginServlet -
java.lang.NullPointerException
由于使用了openjdk11(迁移人员挖的坑没有使用旧环境版本),旧环境使用的是openjdk8,更换旧jdk后异常消失
该错误并不容易排查,因为NullPointerException可触发的情况比较多,openfire又无法直接检视源码,根据Java开发经验,因为旧环境无问题,新环境有问题,大概率是jdk版本问题
2. 插件异常
2019.07.30 09:32:18 org.jivesoftware.openfire.container.PluginManager - An exception occurred while loading plugin 'broadcast':
java.lang.ClassNotFoundException: org.jivesoftware.openfire.plugin.BroadcastPlugin
下载更换最新版broadcast.jar插件,重启后,异常消失
3. restAPI异常
2019.07.30 08:50:51 org.jivesoftware.openfire.container.PluginServlet - org.codehaus.jackson.map.exc.UnrecognizedPropertyException: Unrecognized field "groups" (Class org.jivesoftware.openfire.plugin.rest.entity.UserEntity), not marked as ignorable
Caused by: org.codehaus.jackson.map.exc.UnrecognizedPropertyException: Unrecognized field "groups" (Class org.jivesoftware.openfire.plugin.rest.entity.UserEntity), not marked as ignorable
更换restAPI版本为旧的版本,重启服务后异常消失
完结
关键点需要会查看错误日志,判断哪些jar包不匹配,这一点上新人确实经验欠缺,尤其与开发业务相关的点