博客后台评论管理获取失败

本贴最后更新于 2025 天前,其中的信息可能已经物是人非

版本信息

操作系统 CentOS 7.3

image.png

Linux version 3.10.0-514.26.2.el7.x86_64 (builder@kbuilder.dev.centos.org) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-11) (GCC) ) #1 SMP Tue Jul 4 15:04:05 UTC 2017

MySQL 版本 5.6.42

image.png

Solo 版本 3.5.0

image.png

报错截图

后台管理截图

image.png

前端 F12 调试截图

image.png

docker 日志截图

image.png

尝试分析问题所在

docker 日志的关键部分是

[ERROR]-[2019-05-10 17:45:45]-[org.b3log.solo.processor.console.CommentConsole:203]: org.json.JSONException: JSONObject["commentOnType"] not a string.

org.b3log.latke.service.ServiceException: org.json.JSONException: JSONObject["commentOnType"] not a string.
	at org.b3log.solo.service.CommentQueryService.getComments(CommentQueryService.java:222)
	at org.b3log.solo.service.CommentQueryService_$$_jvsteda_43._d6getComments(CommentQueryService_$$_jvsteda_43.java)

报错位置在 CommentQueryService.java 222 行

到 github 上找到对应版本的源码查看

image.png
链接:https://github.com/b3log/solo/blob/v3.5.0/src/main/java/org/b3log/solo/service/CommentQueryService.java

观察日志报错信息

org.b3log.latke.service.ServiceException: org.json.JSONException: JSONObject["commentOnType"] not a string.

观察 try 语句里的部分

image.png
177 行的确解析了该字段

final  String onType = comment.getString(Comment.COMMENT_ON_TYPE);

到对应的 model 实体类去找对应的字段

image.png

public  static  final  String  COMMENT_ON_TYPE  =  "commentOnType";

实体类 Comment 中确实有该字段

查看数据库 b3_solo_comment 表结构:

image.png
发现没有 commentOnType 字段
问题可能是出在这里

问题的补充

solo 安装信息

安装方式:docker

安装版本:3.5.0

升级操作:无

部署方式:docker + nginx

昨天最后一次正常使用该功能到今天发现该功能不可用作了如下几个操作

  1. 将我的一篇文章更新并同步到社区
  2. 有一些人评论回帖
  3. 在社区上编辑帖子内容并提交,主要做了如下更改:
  • 删除文章内的全部内容,替换为新的内容
  • 设置同步为关闭
  • 设置不可回帖,而后又立马改为可回帖
  • 编辑了帖子内容之后社区上的帖子内容跟个人博客上的内容是不一致的

如果有需要提供其他信息,请在评论中告知与我,我会尽快量补充完全

  • Q&A

    提问之前请先看《提问的智慧》,好的问题比好的答案更有价值。

    8140 引用 • 37100 回帖 • 160 关注
  • Solo

    Solo 是一款小而美的开源博客系统,专为程序员设计。Solo 有着非常活跃的社区,可将文章作为帖子推送到社区,来自社区的回帖将作为博客评论进行联动(具体细节请浏览 B3log 构思 - 分布式社区网络)。

    这是一种全新的网络社区体验,让热爱记录和分享的你不再感到孤单!

    1434 引用 • 10054 回帖 • 489 关注
  • Bug

    Bug 本意是指臭虫、缺陷、损坏、犯贫、窃听器、小虫等。现在人们把在程序中一些缺陷或问题统称为 bug(漏洞)。

    75 引用 • 1737 回帖 • 1 关注

相关帖子

被采纳的回答
  • 88250 1

    这个问题在 v3.6.0 中已经修复,请升级一下,谢谢你细致的反馈。

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • 88250 1

    这个问题在 v3.6.0 中已经修复,请升级一下,谢谢你细致的反馈。

    1 回复
  • 其他回帖
  • 升级完成后如果还有问题请艾特我。

    1 回复
  • someone45057
    作者

    好的,我来升级一下

    1 回复
  • nobt

    我大致看了下,你说的发现没有 commentOnType 字段

    我并没有一直升级,之前玩了段时间没管了,想问你代码和数据库版本是否对应呢?他升级的时候有的版本会改表结构,一般都有说明啊

    1 回复
  • 查看全部回帖