重启后,Liferay卡在100%cpu

时间:2015-11-24 11:43:48

标签: java garbage-collection liferay tomcat7 liferay-6

我在Lifecat 6上安装了一个问题,在Tomcat 7上运行:昨天它的cpu使用量飙升到100%,并开始记录几个异常;查看线程转储显示两个gc线程(gc任务线程#0(并行gc))负责此高CPU使用率。

我重启tomcat几次,但每次使用gc线程再次回到100%cpu时,记录大量异常。这些例外情况涉及范围非常广泛,并且被Liferay核心课程抛出,我不明白为什么。一些例外引用了Lucene,我已经尝试通过portal-ext禁用索引,但没有效果。

一些例子:


    11:34:01,607 ERROR [RuntimePageImpl-3][IncludeTag:129] Current URL null generates exception: null
    java.lang.NullPointerException
            at com.liferay.portal.security.auth.SessionAuthToken.getSessionAuthenticationToken(SessionAuthToken.java:137)
            at com.liferay.portal.security.auth.SessionAuthToken.getToken(SessionAuthToken.java:96)
            at com.liferay.portal.security.auth.AuthTokenWrapper.getToken(AuthTokenWrapper.java:56)
            at com.liferay.portal.security.auth.AuthTokenUtil.getToken(AuthTokenUtil.java:56)
            at com.liferay.portlet.PortletURLImpl.addPortletAuthToken(PortletURLImpl.java:833)
            at com.liferay.portlet.PortletURLImpl.generateToString(PortletURLImpl.java:947)
    
<pre>
11:36:41,876 ERROR [RuntimePageImpl-17][IncludeTag:129] Current URL null generates exception: java.lang.IllegalStateException: Page needs a session and none is available
java.lang.IllegalStateException: Page needs a session and none is available
        at org.apache.jasper.runtime.PageContextImpl._initialize(PageContextImpl.java:148)
        at org.apache.jasper.runtime.PageContextImpl.initialize(PageContextImpl.java:125)
        at org.apache.jasper.runtime.JspFactoryImpl.internalGetPageContext(JspFactoryImpl.java:112)
        at org.apache.jasper.runtime.JspFactoryImpl.getPageContext(JspFactoryImpl.java:65)
        at com.liferay.portal.kernel.servlet.JspFactoryWrapper.getPageContext(JspFactoryWrapper.java:63)
        at org.apache.jsp.html.portlet.asset_005fpublisher.display.full_005fcontent_jsp._jspService(full_005fcontent_jsp.java:486)
        at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
        at com.liferay.portal.servlet.DirectRequestDispatcher.include(DirectRequestDispatcher.java:57)
        at com.liferay.portal.servlet.ClassLoaderRequestDispatcherWrapper.doDispatch(ClassLoaderRequestDispatcherWrapper.java:78)
        at com.liferay.portal.servlet.ClassLoaderRequestDispatcherWrapper.include(ClassLoaderRequestDispatcherWrapper.java:53)
        at com.liferay.taglib.util.IncludeTag.include(IncludeTag.java:295)
        at com.liferay.taglib.util.IncludeTag.doInclude(IncludeTag.java:192)
        at com.liferay.taglib.util.IncludeTag.doEndTag(IncludeTag.java:83)
        at org.apache.jsp.html.portlet.asset_005fpublisher.view_jsp._jspService(view_jsp.java:2001)
        at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
        at com.liferay.portal.servlet.DirectRequestDispatcher.include(DirectRequestDispatcher.java:57)
        at com.liferay.portal.servlet.ClassLoaderRequestDispatcherWrapper.doDispatch(ClassLoaderRequestDispatcherWrapper.java:78)
        at com.liferay.portal.servlet.ClassLoaderRequestDispatcherWrapper.include(ClassLoaderRequestDispatcherWrapper.java:53)


    11:36:39,654 WARN  [RuntimePageImpl-8][ProxyMessageListener:81] com.liferay.portal.kernel.search.SearchException: org.apache.lucene.util.ThreadInterruptedException: java.lang.InterruptedException: sleep interrupted
    com.liferay.portal.kernel.search.SearchException: org.apache.lucene.util.ThreadInterruptedException: java.lang.InterruptedException: sleep interrupted
            at com.liferay.portal.search.lucene.LuceneIndexSearcher.search(LuceneIndexSearcher.java:308)
            at sun.reflect.GeneratedMethodAccessor1044.invoke(Unknown Source)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
            at java.lang.reflect.Method.invoke(Method.java:606)
            at com.liferay.portal.kernel.messaging.proxy.ProxyRequest.execute(ProxyRequest.java:85)
            at com.liferay.portal.kernel.messaging.proxy.ProxyMessageListener.receive(ProxyMessageListener.java:51)
            at com.liferay.portal.kernel.messaging.InvokerMessageListener.receive(InvokerMessageListener.java:72)
            at com.liferay.portal.kernel.messaging.SynchronousDestination.send(SynchronousDestination.java:41)
            at com.liferay.portal.kernel.messaging.sender.DirectSynchronousMessageSender.send(DirectSynchronousMessageSender.java:54)
            at com.liferay.portal.kernel.messaging.proxy.BaseMultiDestinationProxyBean.synchronousSend(BaseMultiDestinationProxyBean.java:48)
            at com.liferay.portal.messaging.proxy.MultiDestinationMessagingProxyInvocationHandler.invoke(MultiDestinationMessagingProxyInvocationHandler.java:50)
            at com.sun.proxy.$Proxy274.search(Unknown Source)
            at com.liferay.portal.kernel.search.SearchEngineUtil.search(SearchEngineUtil.java:575)
            at com.liferay.portal.kernel.search.BaseIndexer.search(BaseIndexer.java:506)
            at com.liferay.portlet.asset.util.AssetUtil.search(AssetUtil.java:590)
            at com.liferay.portlet.asset.util.AssetUtil.search(AssetUtil.java:535)
            at org.apache.jsp.html.portlet.asset_005fpublisher.view_jsp._jspService(view_jsp.java:1859)
            at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
            at com.liferay.portal.servlet.DirectRequestDispatcher.include(DirectRequestDispatcher.java:57)
            at com.liferay.portal.servlet.ClassLoaderRequestDispatcherWrapper.doDispatch(ClassLoaderRequestDispatcherWrapper.java:78)
            at com.liferay.portal.servlet.ClassLoaderRequestDispatcherWrapper.include(ClassLoaderRequestDispatcherWrapper.java:53)
            at com.liferay.taglib.util.IncludeTag.include(IncludeTag.java:295)
            at com.liferay.taglib.util.IncludeTag.doInclude(IncludeTag.java:192)
            at com.liferay.taglib.util.IncludeTag.doEndTag(IncludeTag.java:83)
            at org.apache.jsp.html.common.themes.portlet_jsp._jspService(portlet_jsp.java:4607)
            at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
            at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
            at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
            at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
            at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
            at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilter.doFilter(InvokerFilter.java:96)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
            at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:749)
            at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:605)
            at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:544)
            at com.liferay.portlet.PortletRequestDispatcherImpl.dispatch(PortletRequestDispatcherImpl.java:331)
            at com.liferay.portlet.PortletRequestDispatcherImpl.include(PortletRequestDispatcherImpl.java:128)
            at com.liferay.portal.struts.PortletRequestProcessor.doInclude(PortletRequestProcessor.java:370)
            at com.liferay.portal.struts.PortletRequestProcessor.doForward(PortletRequestProcessor.java:338)
            at org.apache.struts.tiles.TilesRequestProcessor.processTilesDefinition(TilesRequestProcessor.java:239)
            at org.apache.struts.tiles.TilesRequestProcessor.processForwardConfig(TilesRequestProcessor.java:302)
            at com.liferay.portal.struts.PortletRequestProcessor.processForwardConfig(PortletRequestProcessor.java:478)
            at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:241)
            at com.liferay.portal.struts.PortletRequestProcessor.process(PortletRequestProcessor.java:234)
            at com.liferay.portlet.StrutsPortlet.include(StrutsPortlet.java:296)
            at com.liferay.portlet.StrutsPortlet.doView(StrutsPortlet.java:157)
            at com.liferay.portal.kernel.portlet.LiferayPortlet.doDispatch(LiferayPortlet.java:213)
            at javax.portlet.GenericPortlet.render(GenericPortlet.java:233)
            at com.liferay.portlet.FilterChainImpl.doFilter(FilterChainImpl.java:103)
            at com.liferay.portlet.ScriptDataPortletFilter.doFilter(ScriptDataPortletFilter.java:55)
            at com.liferay.portlet.FilterChainImpl.doFilter(FilterChainImpl.java:100)
            at com.liferay.portal.kernel.portlet.PortletFilterUtil.doFilter(PortletFilterUtil.java:64)
            at com.liferay.portlet.InvokerPortletImpl.invoke(InvokerPortletImpl.java:618)
            at com.liferay.portlet.InvokerPortletImpl.invokeRender(InvokerPortletImpl.java:677)
            at com.liferay.portlet.InvokerPortletImpl.render(InvokerPortletImpl.java:379)
            at org.apache.jsp.html.portal.render_005fportlet_jsp._jspService(render_005fportlet_jsp.java:1230)
            at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
            at com.liferay.portal.servlet.DirectRequestDispatcher.include(DirectRequestDispatcher.java:57)
            at com.liferay.portal.servlet.ClassLoaderRequestDispatcherWrapper.doDispatch(ClassLoaderRequestDispatcherWrapper.java:78)
            at com.liferay.portal.servlet.ClassLoaderRequestDispatcherWrapper.include(ClassLoaderRequestDispatcherWrapper.java:53)
            at com.liferay.portlet.PortletContainerImpl._doRender(PortletContainerImpl.java:655)
            at com.liferay.portlet.PortletContainerImpl.render(PortletContainerImpl.java:138)
            at com.liferay.portlet.SecurityPortletContainerWrapper.render(SecurityPortletContainerWrapper.java:141)
            at com.liferay.portlet.RestrictPortletContainerWrapper.render(RestrictPortletContainerWrapper.java:126)
            at com.liferay.portal.kernel.portlet.PortletContainerUtil.render(PortletContainerUtil.java:156)
            at com.liferay.portal.layoutconfiguration.util.PortletRenderer._render(PortletRenderer.java:120)
            at com.liferay.portal.layoutconfiguration.util.PortletRenderer.render(PortletRenderer.java:72)
            at com.liferay.portal.layoutconfiguration.util.RuntimePageImpl.doProcessTemplate(RuntimePageImpl.java:460)
            at com.liferay.portal.layoutconfiguration.util.RuntimePageImpl.doDispatch(RuntimePageImpl.java:284)
            at com.liferay.portal.layoutconfiguration.util.RuntimePageImpl.processTemplate(RuntimePageImpl.java:113)
            at com.liferay.portal.layoutconfiguration.util.RuntimePageImpl.processTemplate(RuntimePageImpl.java:124)
            at com.liferay.portal.layoutconfiguration.util.RuntimePageUtil.processTemplate(RuntimePageUtil.java:69)
            at org.apache.jsp.html.portlet.nested_005fportlets.view_jsp._jspService(view_jsp.java:633)
            at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
            at com.liferay.portal.servlet.DirectRequestDispatcher.include(DirectRequestDispatcher.java:57)
            at com.liferay.portal.servlet.ClassLoaderRequestDispatcherWrapper.doDispatch(ClassLoaderRequestDispatcherWrapper.java:78)
            at com.liferay.portal.servlet.ClassLoaderRequestDispatcherWrapper.include(ClassLoaderRequestDispatcherWrapper.java:53)
            at com.liferay.taglib.util.IncludeTag.include(IncludeTag.java:295)
            at com.liferay.taglib.util.IncludeTag.doInclude(IncludeTag.java:192)
            at com.liferay.taglib.util.IncludeTag.doEndTag(IncludeTag.java:83)
            at org.apache.jsp.html.common.themes.portlet_jsp._jspService(portlet_jsp.java:4607)
            at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
            at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
            at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
            at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
            at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
            at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilter.doFilter(InvokerFilter.java:96)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
            at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:749)
            at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:605)
            at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:544)
            at com.liferay.portlet.PortletRequestDispatcherImpl.dispatch(PortletRequestDispatcherImpl.java:331)
            at com.liferay.portlet.PortletRequestDispatcherImpl.include(PortletRequestDispatcherImpl.java:128)
            at com.liferay.portal.struts.PortletRequestProcessor.doInclude(PortletRequestProcessor.java:370)
            at com.liferay.portal.struts.PortletRequestProcessor.doForward(PortletRequestProcessor.java:338)
            at org.apache.struts.tiles.TilesRequestProcessor.processTilesDefinition(TilesRequestProcessor.java:239)
            at org.apache.struts.tiles.TilesRequestProcessor.processForwardConfig(TilesRequestProcessor.java:302)
            at com.liferay.portal.struts.PortletRequestProcessor.processForwardConfig(PortletRequestProcessor.java:478)
            at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:241)
            at com.liferay.portal.struts.PortletRequestProcessor.process(PortletRequestProcessor.java:234)
            at com.liferay.portlet.StrutsPortlet.include(StrutsPortlet.java:296)
            at com.liferay.portlet.StrutsPortlet.doView(StrutsPortlet.java:157)
            at com.liferay.portal.kernel.portlet.LiferayPortlet.doDispatch(LiferayPortlet.java:213)
            at javax.portlet.GenericPortlet.render(GenericPortlet.java:233)
            at com.liferay.portlet.FilterChainImpl.doFilter(FilterChainImpl.java:103)
            at com.liferay.portlet.ScriptDataPortletFilter.doFilter(ScriptDataPortletFilter.java:55)
            at com.liferay.portlet.FilterChainImpl.doFilter(FilterChainImpl.java:100)
            at com.liferay.portal.kernel.portlet.PortletFilterUtil.doFilter(PortletFilterUtil.java:64)
            at com.liferay.portlet.InvokerPortletImpl.invoke(InvokerPortletImpl.java:618)
            at com.liferay.portlet.InvokerPortletImpl.invokeRender(InvokerPortletImpl.java:677)
            at com.liferay.portlet.InvokerPortletImpl.render(InvokerPortletImpl.java:379)
            at org.apache.jsp.html.portal.render_005fportlet_jsp._jspService(render_005fportlet_jsp.java:1230)
            at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
            at com.liferay.portal.servlet.DirectRequestDispatcher.include(DirectRequestDispatcher.java:57)
            at com.liferay.portal.servlet.ClassLoaderRequestDispatcherWrapper.doDispatch(ClassLoaderRequestDispatcherWrapper.java:78)
            at com.liferay.portal.servlet.ClassLoaderRequestDispatcherWrapper.include(ClassLoaderRequestDispatcherWrapper.java:53)
            at com.liferay.portlet.PortletContainerImpl._doRender(PortletContainerImpl.java:655)
            at com.liferay.portlet.PortletContainerImpl.render(PortletContainerImpl.java:138)
            at com.liferay.portlet.SecurityPortletContainerWrapper.render(SecurityPortletContainerWrapper.java:141)
            at com.liferay.portlet.RestrictPortletContainerWrapper.render(RestrictPortletContainerWrapper.java:126)
            at com.liferay.portal.kernel.portlet.PortletContainerUtil.render(PortletContainerUtil.java:156)
            at com.liferay.portal.layoutconfiguration.util.PortletRenderer._render(PortletRenderer.java:120)
            at com.liferay.portal.layoutconfiguration.util.PortletRenderer.access$4(PortletRenderer.java:107)
            at com.liferay.portal.layoutconfiguration.util.PortletRenderer$PortletRendererCallable.doCall(PortletRenderer.java:174)
            at com.liferay.portal.layoutconfiguration.util.PortletRenderer$PortletRendererCallable.doCall(PortletRenderer.java:1)
            at com.liferay.portal.kernel.executor.CopyThreadLocalCallable.call(CopyThreadLocalCallable.java:69)
            at java.util.concurrent.FutureTask.run(FutureTask.java:262)
            at com.liferay.portal.kernel.concurrent.ThreadPoolExecutor$WorkerTask._runTask(ThreadPoolExecutor.java:682)
            at com.liferay.portal.kernel.concurrent.ThreadPoolExecutor$WorkerTask.run(ThreadPoolExecutor.java:593)
            at java.lang.Thread.run(Thread.java:744)
    Caused by: org.apache.lucene.util.ThreadInterruptedException: java.lang.InterruptedException: sleep interrupted
            at org.apache.lucene.index.SegmentInfos$FindSegmentsFile.run(SegmentInfos.java:696)
            at org.apache.lucene.index.DirectoryReader.open(DirectoryReader.java:75)
            at org.apache.lucene.index.IndexReader.open(IndexReader.java:462)
            at org.apache.lucene.index.IndexReader.open(IndexReader.java:322)
            at com.liferay.portal.search.lucene.LuceneHelperImpl.getSearcher(LuceneHelperImpl.java:524)
            at com.liferay.portal.search.lucene.LuceneHelperUtil.getSearcher(LuceneHelperUtil.java:341)
            at com.liferay.portal.search.lucene.LuceneIndexSearcher.search(LuceneIndexSearcher.java:108)
            ... 143 more
    Caused by: java.lang.InterruptedException: sleep interrupted
            at java.lang.Thread.sleep(Native Method)
            at org.apache.lucene.index.SegmentInfos$FindSegmentsFile.run(SegmentInfos.java:694)
            ... 149 more


    11:33:07,718 ERROR [RuntimePageImpl-10][runtime:96] Template processing error: "Method public java.lang.String com.liferay.portlet.assetpublisher.util.AssetPublisherHelperImpl.getAssetViewURL(com.liferay.portal.kernel.portlet.LiferayPortletRequest,com.liferay.portal.kernel.portlet.LiferayPortletResponse,com.liferay.portlet.asset.model.AssetEntry) threw an exception when invoked on com.liferay.portlet.assetpublisher.util.AssetPublisherHelperImpl@3fca83b9"

    Method public java.lang.String com.liferay.portlet.assetpublisher.util.AssetPublisherHelperImpl.getAssetViewURL(com.liferay.portal.kernel.portlet.LiferayPortletRequest,com.liferay.portal.kernel.portlet.LiferayPortletResponse,com.liferay.portlet.asset.model.AssetEntry) threw an exception when invoked on com.liferay.portlet.assetpublisher.util.AssetPublisherHelperImpl@3fca83b9
    The problematic instruction:
    ----------
    ==> assignment: link=assetPublisherHelper.getAssetViewURL(renderRequest, renderResponse, entry) [on line 140, column 33 in 10157#10197#137154]
    ----------

    Java backtrace for programmers:
    ----------
    freemarker.template.TemplateModelException: Method public java.lang.String com.liferay.portlet.assetpublisher.util.AssetPublisherHelperImpl.getAssetViewURL(com.liferay.portal.kernel.portlet.LiferayPortletRequest,com.liferay.portal.kernel.portlet.LiferayPortletResponse,com.liferay.portlet.asset.model.AssetEntry) threw an exception when invoked on com.liferay.portlet.assetpublisher.util.AssetPublisherHelperImpl@3fca83b9
            at freemarker.ext.beans.SimpleMethodModel.exec(SimpleMethodModel.java:130)
            at freemarker.core.MethodCall._getAsTemplateModel(MethodCall.java:93)
            at freemarker.core.Expression.getAsTemplateModel(Expression.java:89)
            at freemarker.core.Assignment.accept(Assignment.java:90)
            at freemarker.core.Environment.visit(Environment.java:221)
            at freemarker.core.MixedContent.accept(MixedContent.java:92)
            at freemarker.core.Environment.visit(Environment.java:221)
            at freemarker.core.ConditionalBlock.accept(ConditionalBlock.java:79)
            at freemarker.core.Environment.visit(Environment.java:221)
            at freemarker.core.MixedContent.accept(MixedContent.java:92)
            at freemarker.core.Environment.visit(Environment.java:221)
            at freemarker.core.ConditionalBlock.accept(ConditionalBlock.java:79)
            at freemarker.core.Environment.visit(Environment.java:221)
            at freemarker.core.MixedContent.accept(MixedContent.java:92)
            at freemarker.core.Environment.visit(Environment.java:221)
            at freemarker.core.IteratorBlock$Context.runLoop(IteratorBlock.java:179)
            at freemarker.core.Environment.visit(Environment.java:428)
            at freemarker.core.IteratorBlock.accept(IteratorBlock.java:102)
            at freemarker.core.Environment.visit(Environment.java:221)
            at freemarker.core.MixedContent.accept(MixedContent.java:92)
            at freemarker.core.Environment.visit(Environment.java:221)
            at freemarker.core.ConditionalBlock.accept(ConditionalBlock.java:79)
            at freemarker.core.Environment.visit(Environment.java:221)
            at freemarker.core.MixedContent.accept(MixedContent.java:92)
            at freemarker.core.Environment.visit(Environment.java:221)
            at freemarker.core.Environment.process(Environment.java:199)
            at freemarker.template.Template.process(Template.java:237)
            at com.liferay.portal.freemarker.FreeMarkerTemplate.processTemplate(FreeMarkerTemplate.java:122)
            at com.liferay.portal.template.AbstractTemplate.processTemplate(AbstractTemplate.java:127)
            at com.liferay.portal.template.RestrictedTemplate.processTemplate(RestrictedTemplate.java:55)
            at com.liferay.portal.templateparser.Transformer.mergeTemplate(Transformer.java:637)
            at com.liferay.portal.templateparser.Transformer.transform(Transformer.java:168)
            at com.liferay.portlet.portletdisplaytemplate.util.PortletDisplayTemplateImpl.renderDDMTemplate(PortletDisplayTemplateImpl.java:351)
            at com.liferay.portlet.portletdisplaytemplate.util.PortletDisplayTemplateUtil.renderDDMTemplate(PortletDisplayTemplateUtil.java:85)
            at org.apache.jsp.html.portlet.asset_005fpublisher.view_jsp._jspService(view_jsp.java:1903)
            at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
            at com.liferay.portal.servlet.DirectRequestDispatcher.include(DirectRequestDispatcher.java:57)
            at com.liferay.portal.servlet.ClassLoaderRequestDispatcherWrapper.doDispatch(ClassLoaderRequestDispatcherWrapper.java:78)
            at com.liferay.portal.servlet.ClassLoaderRequestDispatcherWrapper.include(ClassLoaderRequestDispatcherWrapper.java:53)
            at com.liferay.taglib.util.IncludeTag.include(IncludeTag.java:295)
            at com.liferay.taglib.util.IncludeTag.doInclude(IncludeTag.java:192)
            at com.liferay.taglib.util.IncludeTag.doEndTag(IncludeTag.java:83)
            at org.apache.jsp.html.common.themes.portlet_jsp._jspService(portlet_jsp.java:4607)
            at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
            at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
            at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
            at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
           [...]
            at com.liferay.portlet.PortletContainerImpl.render(PortletContainerImpl.java:138)
            at com.liferay.portlet.SecurityPortletContainerWrapper.render(SecurityPortletContainerWrapper.java:141)
            at com.liferay.portlet.RestrictPortletContainerWrapper.render(RestrictPortletContainerWrapper.java:126)
            at com.liferay.portal.kernel.portlet.PortletContainerUtil.render(PortletContainerUtil.java:156)
            at com.liferay.portal.layoutconfiguration.util.PortletRenderer._render(PortletRenderer.java:120)
            at com.liferay.portal.layoutconfiguration.util.PortletRenderer.access$4(PortletRenderer.java:107)
            at com.liferay.portal.layoutconfiguration.util.PortletRenderer$PortletRendererCallable.doCall(PortletRenderer.java:174)
            at com.liferay.portal.layoutconfiguration.util.PortletRenderer$PortletRendererCallable.doCall(PortletRenderer.java:1)
            at com.liferay.portal.kernel.executor.CopyThreadLocalCallable.call(CopyThreadLocalCallable.java:69)
            at java.util.concurrent.FutureTask.run(FutureTask.java:262)
            at com.liferay.portal.kernel.concurrent.ThreadPoolExecutor$WorkerTask._runTask(ThreadPoolExecutor.java:682)
            at com.liferay.portal.kernel.concurrent.ThreadPoolExecutor$WorkerTask.run(ThreadPoolExecutor.java:593)
            at java.lang.Thread.run(Thread.java:744)
    Caused by: java.lang.IllegalArgumentException
            at com.liferay.portlet.PortletURLImpl.setParameter(PortletURLImpl.java:550)
            at com.liferay.portlet.PortletURLImpl.setParameter(PortletURLImpl.java:544)
            at com.liferay.portlet.assetpublisher.util.AssetPublisherHelperImpl.getAssetViewURL(AssetPublisherHelperImpl.java:43)
            at sun.reflect.GeneratedMethodAccessor1192.invoke(Unknown Source)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
            at java.lang.reflect.Method.invoke(Method.java:606)
            at freemarker.ext.beans.BeansWrapper.invokeMethod(BeansWrapper.java:866)
            at freemarker.ext.beans.SimpleMethodModel.exec(SimpleMethodModel.java:106)
            ... 161 more

我也有几次这样的行:

PortalException: No JournalArticle exists with the key {groupId=10184, articleId=/1832648, status=-1}

更新

最后,我们通过将Lucene索引设置为只读(将index.read.only=true置于portal-ext.properties),删除每个portlet并一次重新启用它们,设法让Liferay重新启动并再次运行。几天后,我们再次在写入模式下启用了索引。但是我们发现索引中存在一些不一致之处,我们可能会重新生成它们。

1 个答案:

答案 0 :(得分:1)

这两个例外:

11:34:01,607 ERROR [RuntimePageImpl-3][IncludeTag:129] Current URL null generates exception: null

java.lang.IllegalStateException: Page needs a session and none is available

是因为您打开旧会话(在重启服务器之前)。

stacktrace

freemarker.template.TemplateModelException: Method public java.lang.String com.liferay.portlet.assetpublisher.util.AssetPublisherHelperImpl.getAssetViewURL(com.liferay.portal.kernel.portlet.LiferayPortletRequest,com.liferay.portal.kernel.portlet.LiferayPortletResponse,com.liferay.portlet.asset.model.AssetEntry) threw an exception when invoked on com.liferay.portlet.assetpublisher.util.AssetPublisherHelperImpl@3fca83b9

PortalException: No JournalArticle exists with the key {groupId=10184, articleId=/1832648, status=-1}

已关联。如果认为你的freemarker例外是因为Liferay找不到你的JournalArticle。

最后,我认为找不到你的JournalArticle,因为你的lucene索引有问题。

您可以删除lucene索引并重新启动完整索引吗?