jivejdon运行的问题请教

13-05-12 oleio
jivejdon运行后,保存帖子 后,页面显示一个500的错误,但是后台没有任何错误,而且 帖子也保存成功了,想请教下 banq,该问题可能出在什么地方, 给个提示。


系统的全部log日志: [img index=2]

将log级别调整为debug后,保存帖子输出的log如下:

可以看到没有任何的 ERROR级别的错误出现。

com.jdon.jivejdon.repository.dao.sql.MessageDaoSql.getMessageCore(MessageDaoSql.java:76) >>> getMessage end

[DEBUG] 2013-05-12 11:54:30,875 com.jdon.jivejdon.repository.dao.sql.MessageDaoSql.getMessageCore(MessageDaoSql.java:59) >>> enter getMessage for id:176

[DEBUG] 2013-05-12 11:54:30,876 com.jdon.jivejdon.repository.dao.sql.MessageDaoSql.getMessageCore(MessageDaoSql.java:76) >>> getMessage end

[DEBUG] 2013-05-12 11:54:30,877 com.jdon.jivejdon.repository.builder.MessageBuilder.asyncGetAccount(MessageBuilder.java:151) >>> embed getAccount

[DEBUG] 2013-05-12 11:54:30,878 com.jdon.jivejdon.repository.builder.MessageBuilder.buildPart(MessageBuilder.java:88) >>> Embed embed thread start

[DEBUG] 2013-05-12 11:54:30,878 com.jdon.jivejdon.repository.builder.ForumDirector.getForum(ForumDirector.java:47) >>> enter getForum for forumId=101

[DEBUG] 2013-05-12 11:54:30,878 com.jdon.jivejdon.repository.builder.ThreadDirector.getThread(ThreadDirector.java:53) >>> TH----> enter getThread, threadId=116

[DEBUG] 2013-05-12 11:54:30,879 com.jdon.jivejdon.repository.dao.sql.MessageDaoSql.getThreadCore(MessageDaoSql.java:107) >>> enter getThread for id:116

[DEBUG] 2013-05-12 11:54:30,887 com.jdon.jivejdon.repository.builder.ThreadDirector.construct(ThreadDirector.java:70) >>> ForumThread construct :<Embed ForumThread----> start, threadId=116

[DEBUG] 2013-05-12 11:54:30,888 com.jdon.jivejdon.repository.dao.sql.MessageQueryDaoSql.getTreeModel(MessageQueryDaoSql.java:59) >>> getTreeModel from jdbc for threadId=116

[DEBUG] 2013-05-12 11:54:30,888 com.jdon.jivejdon.repository.builder.ThreadBuilder.buildState(ThreadBuilder.java:129) >>> buildPartyState for forumThread=116

[DEBUG] 2013-05-12 11:54:30,888 com.jdon.jivejdon.repository.dao.sql.MessageQueryDaoSql.getLastPostMessageId(MessageQueryDaoSql.java:115) >>> enter getLastPostMessageId for threadId:116

[DEBUG] 2013-05-12 11:54:30,889 com.jdon.jivejdon.repository.dao.sql.MessageQueryDaoSql.getMessageCount(MessageQueryDaoSql.java:93) >>> enter getMessageCount for threadId:116

[DEBUG] 2013-05-12 11:54:30,890 com.jdon.jivejdon.repository.builder.ThreadBuilder.buildState(ThreadBuilder.java:144) >>> buildPartyState for forumThread=116

[DEBUG] 2013-05-12 11:54:30,890 com.jdon.jivejdon.repository.builder.ThreadDirector.construct(ThreadDirector.java:81) >>> ForumThread construct: ok threadId=116

[DEBUG] 2013-05-12 11:54:30,893 com.jdon.jivejdon.manager.subscription.SubscriptionNotify.onEvent(SubscriptionNotify.java:45) >>> subscribed action 测试

[DEBUG] 2013-05-12 11:54:30,893 com.jdon.jivejdon.repository.dao.sql.SubscriptionDaoSql.getSubscriptionsForsubscribed(SubscriptionDaoSql.java:178) >>> enter getSubscriptions for id:101

[DEBUG] 2013-05-12 11:54:30,896 com.jdon.jivejdon.repository.dao.sql.UserconnectorSql.loadSinaWeiboUserconn(UserconnectorSql.java:97) >>> enter loadForum for id:201

[DEBUG] 2013-05-12 11:54:30,897 com.jdon.jivejdon.repository.dao.sql.ShortMessageDaoSql.getShortMessages(ShortMessageDaoSql.java:249) >>> enter getShortMessages ..

[DEBUG] 2013-05-12 11:54:30,900 com.jdon.jivejdon.manager.subscription.SubscriptionNotify.onEvent(SubscriptionNotify.java:45) >>> subscribed action oleio

[DEBUG] 2013-05-12 11:54:30,900 com.jdon.jivejdon.repository.dao.sql.SubscriptionDaoSql.getSubscriptionsForsubscribed(SubscriptionDaoSql.java:178) >>> enter getSubscriptions for id:201

[DEBUG] 2013-05-12 11:54:30,902 com.jdon.jivejdon.repository.dao.sql.AccountDaoSql.getAccountByName(AccountDaoSql.java:120) >>> enter getAccountByName for username=oleio

[DEBUG] 2013-05-12 11:54:30,903 com.jdon.jivejdon.repository.dao.sql.AccountDaoSql.fetchAccount(AccountDaoSql.java:81) >>> found the account

[DEBUG] 2013-05-12 11:54:30,903 com.jdon.jivejdon.repository.dao.sql.AccountSSOSql.getRoleNameFByusername(AccountSSOSql.java:46) >>> enter getAccountByName for username=oleio

[DEBUG] 2013-05-12 11:54:30,904 com.jdon.jivejdon.repository.dao.sql.AccountSSOSql.getRoleNameFByusername(AccountSSOSql.java:56) >>> found the role

[DEBUG] 2013-05-12 11:54:30,905 com.jdon.jivejdon.repository.dao.sql.AccountSSOSql.embedPasswordassit(AccountSSOSql.java:75) >>> found the passwordassit

[DEBUG] 2013-05-12 11:54:30,905 com.jdon.jivejdon.repository.dao.sql.ShortMessageDaoSql.sendShortMessage(ShortMessageDaoSql.java:127) >>> enter createShortMessage

[DEBUG] 2013-05-12 11:54:36,853 com.jdon.jivejdon.manager.throttle.hitkey.CustomizedThrottleImp.fetchClient(CustomizedThrottleImp.java:106) >>> HIT com.jdon.jivejdon.manager.throttle.hitkey.HitKeyDiff@1050034

[DEBUG] 2013-05-12 11:54:36,854 com.jdon.jivejdon.manager.throttle.hitkey.CustomizedThrottleImp.fetchClient(CustomizedThrottleImp.java:111) >>> EXPIRED com.jdon.jivejdon.manager.throttle.hitkey.HitKeyDiff@1050034

[DEBUG] 2013-05-12 11:54:36,855 com.jdon.jivejdon.manager.throttle.hitkey.CustomizedThrottleImp.initClient(CustomizedThrottleImp.java:119) >>> NEW com.jdon.jivejdon.manager.throttle.hitkey.HitKeyDiff@1050034

[DEBUG] 2013-05-12 11:54:36,858 com.jdon.jivejdon.auth.PermissionInterceptor.invoke(PermissionInterceptor.java:74) >>> enter PermissionInterceptor

[DEBUG] 2013-05-12 11:54:36,859 com.jdon.jivejdon.auth.CUDInputInterceptor.invoke(CUDInputInterceptor.java:75) >>> enter PermissionInterceptor

[DEBUG] 2013-05-12 11:54:36,860 com.jdon.jivejdon.auth.PermissionInterceptor.invoke(PermissionInterceptor.java:74) >>> enter PermissionInterceptor

[DEBUG] 2013-05-12 11:54:36,861 com.jdon.jivejdon.auth.CUDInputInterceptor.invoke(CUDInputInterceptor.java:75) >>> enter PermissionInterceptor

[DEBUG] 2013-05-12 11:54:36,910 com.jdon.jivejdon.manager.throttle.hitkey.CustomizedThrottleImp.fetchClient(CustomizedThrottleImp.java:106) >>> HIT com.jdon.jivejdon.manager.throttle.hitkey.HitKeySame@1c90a78

[DEBUG] 2013-05-12 11:54:36,910 com.jdon.jivejdon.manager.throttle.hitkey.CustomizedThrottleImp.fetchClient(CustomizedThrottleImp.java:111) >>> EXPIRED com.jdon.jivejdon.manager.throttle.hitkey.HitKeySame@1c90a78

[DEBUG] 2013-05-12 11:54:36,910 com.jdon.jivejdon.manager.throttle.hitkey.CustomizedThrottleImp.initClient(CustomizedThrottleImp.java:119) >>> NEW com.jdon.jivejdon.manager.throttle.hitkey.HitKeySame@1c90a78

[DEBUG] 2013-05-12 11:54:36,911 com.jdon.jivejdon.auth.PermissionInterceptor.invoke(PermissionInterceptor.java:74) >>> enter PermissionInterceptor

[DEBUG] 2013-05-12 11:54:36,911 com.jdon.jivejdon.auth.CUDInputInterceptor.invoke(CUDInputInterceptor.java:75) >>> enter PermissionInterceptor

[该贴被oleio于2013-05-12 12:04修改过]

[该贴被oleio于2013-05-12 12:12修改过]
attachment:


jdon.txt
    

banq
2013-05-12 12:21
可能是JSP方面错误,查看tomcat/logs/localhost_accessXXXX日志是否有错。

oleio
2013-05-12 12:29
谢谢 banq 的回复, 看了下日志,是有错误:

Cannot find bean: "threadTag" in any scope

请问 可能是什么原因导致的。

五月 12, 2013 12:24:30 下午 org.apache.catalina.core.StandardWrapperValve invoke

SEVERE: Servlet.service() for servlet action threw exception

javax.servlet.jsp.JspException: Cannot find bean: "threadTag" in any scope

at org.apache.struts.taglib.TagUtils.lookup(TagUtils.java:864)

at org.apache.struts.taglib.bean.WriteTag.doStartTag(WriteTag.java:233)

at org.apache.jsp.query.approvedThreadListTags_jsp._jspx_meth_bean_005fwrite_005f18(approvedThreadListTags_jsp.java:1169)

at org.apache.jsp.query.approvedThreadListTags_jsp._jspService(approvedThreadListTags_jsp.java:452)

at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:388)

at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)

at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)

at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646)

at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436)

at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374)

at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)

at org.apache.struts.chain.commands.servlet.PerformForward.handleAsForward(PerformForward.java:113)

at org.apache.struts.chain.commands.servlet.PerformForward.perform(PerformForward.java:96)

at org.apache.struts.chain.commands.AbstractPerformForward.execute(AbstractPerformForward.java:54)

at org.apache.struts.chain.commands.ActionCommandBase.execute(ActionCommandBase.java:51)

at org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190)

at org.apache.commons.chain.generic.LookupCommand.execute(LookupCommand.java:304)

at org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190)

at org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:283)

at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)

at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:449)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)

at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646)

at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436)

at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374)

[该贴被oleio于2013-05-12 12:30修改过]
attachment:


newLog.txt

banq
2013-05-12 12:34
定位错误是哪个Jsp,比如根据approvedThreadListTags_jsp.java:1169可以认为是approvedThreadListTags_jsp.java的1169行出错,可以在tomcat/work目录下找到approvedThreadListTags_jsp.java这个文件,实际是approvedThreadListTags_jsp的Java文件。

approvedThreadListTags_jsp是一个辅助Jsp,不够健壮估计有一个标签数据,可以删除不执行。

javax.servlet.jsp.JspException: Cannot find bean: "threadTag" in any scope

at org.apache.struts.taglib.TagUtils.lookup(TagUtils.java:864)

at org.apache.struts.taglib.bean.WriteTag.doStartTag(WriteTag.java:233)

at org.apache.jsp.query.approvedThreadListTags_jsp._jspx_meth_bean_005fwrite_005f18(approvedThreadListTags_jsp.java:1169)

at org.apache.jsp.query.approvedThreadListTags_jsp._jspService(approvedThreadListTags_jsp.java:452)

at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)

猜你喜欢