halo-dev / halo

强大易用的开源建站工具。
https://www.halo.run
GNU General Public License v3.0
33.24k stars 9.59k forks source link

halo后台设置--邮件通知功能bug #5454

Closed Orange-AFK closed 6 months ago

Orange-AFK commented 6 months ago

系统信息

使用的哪种方式运行?

Docker Compose

发生了什么?

1.访客及注册账户在自定义模板页面留下评论,邮件提醒未收到,但在文章页面留下评论可以正常收到;评论均会显示在管理后台中,此处显示”未知“位置的评论是在自定义模板页面留下的评论

image_93

2.管理员账户在自定义模板页面以及文章页面留下评论,邮件提醒未收到;评论均会显示在管理后台中

3.额外补充:自定义模板页面留下评论【访客、注册账号、管理员账号】均会在halo日志输出中看到错误日志;管理员账号在文章中留下评论,尽管邮件提醒无法收到,但不会报告错误日志

相关日志输出

2024-03-06T16:01:26.420+08:00 ERROR 7 --- [        task-37] .a.i.SimpleAsyncUncaughtExceptionHandler : Unexpected exception occurred invoking async method: public void run.halo.app.content.comment.CommentNotificationReasonPublisher.onNewComment(run.halo.app.event.post.CommentCreatedEvent)

java.util.NoSuchElementException: No value present
    at java.base/java.util.Optional.orElseThrow(Unknown Source) ~[na:na]
    at run.halo.app.content.comment.CommentNotificationReasonPublisher$NewCommentOnPageReasonPublisher.publishReasonBy(CommentNotificationReasonPublisher.java:161) ~[classes/:2.13.0]
    at run.halo.app.content.comment.CommentNotificationReasonPublisher.onNewComment(CommentNotificationReasonPublisher.java:64) ~[classes/:2.13.0]
    at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(Unknown Source) ~[na:na]
    at java.base/java.lang.reflect.Method.invoke(Unknown Source) ~[na:na]
    at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:351) ~[spring-aop-6.1.4.jar:6.1.4]
    at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:196) ~[spring-aop-6.1.4.jar:6.1.4]
    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163) ~[spring-aop-6.1.4.jar:6.1.4]
    at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:765) ~[spring-aop-6.1.4.jar:6.1.4]
    at org.springframework.aop.interceptor.AsyncExecutionInterceptor.lambda$invoke$0(AsyncExecutionInterceptor.java:113) ~[spring-aop-6.1.4.jar:6.1.4]
    at java.base/java.util.concurrent.FutureTask.run(Unknown Source) ~[na:na]
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) ~[na:na]
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) ~[na:na]
    at java.base/java.lang.Thread.run(Unknown Source) ~[na:na]

附加信息

No response

guqing commented 6 months ago

针对你给出的第一点建议给出一个复现步骤,目前根据你的描述无法得知如何复现

/triage needs-information

Orange-AFK commented 6 months ago

针对你给出的第一点建议给出一个复现步骤,目前根据你的描述无法得知如何复现

/triage needs-information

复现步骤很简单,只需要以访客或则注册账号在自定义模板页面例如友情链接页面https://apoptoxin4869.com/links留下评论,即可复现报告的错误日志

Orange-AFK commented 6 months ago

经网友提醒,更换了几套主题进行测试,最终在使用官方earth主题时该issue的问题得到解决,可以确定是主题的问题,同时也得到比较确定的回复https://github.com/halo-dev/plugin-comment-widget/issues/90 ,关闭issue,我会向hao主题作者报告该问题

guqing commented 6 months ago
image

根据你的描述无法复现,既已即决则无需回复

Orange-AFK commented 6 months ago
image

根据你的描述无法复现

经网友提醒,更换了几套主题进行测试,最终在使用官方earth主题时该issue的问题得到解决,可以确定是主题的问题,同时也得到比较确定的回复https://github.com/halo-dev/plugin-comment-widget/issues/90%EF%BC%8C%E5%85%B3%E9%97%ADissue%EF%BC%8C%E6%88%91%E4%BC%9A%E5%90%91hao%E4%B8%BB%E9%A2%98%E4%BD%9C%E8%80%85%E6%8A%A5%E5%91%8A%E8%AF%A5%E9%97%AE%E9%A2%98