这是我尝试在Liferay Portal 6.0.6中运行portlet时得到的堆栈跟踪。
任何人都知道发生了什么事吗?
12:40:00,146错误[PortletServlet:96] javax.portlet.PortletException:javax.servlet.ServletException:javax.servlet.jsp .JspException:com.liferay.taglib.aui.LayoutTag无法转换为javax.servlet.jsp.tagext.Tag javax.portlet.PortletException:javax.servlet.ServletException:javax.servlet.jsp.JspException:com.liferay.taglib.aui.L 无法将ayoutTag强制转换为javax.servlet.jsp.tagext.Tag 在com.liferay.portlet.PortletRequestDispatcherImpl.include(PortletRequestDispatcherImpl.java:110) 在org.springframework.web.portlet.DispatcherPortlet.doRender(DispatcherPortlet.java:1137) 在org.springframework.web.portlet.DispatcherPortlet.render(DispatcherPortlet.java:1092) 在org.springframework.web.portlet.DispatcherPortlet.doRenderService(DispatcherPortlet.java:755) 在org.springframework.web.portlet.FrameworkPortlet.processRequest(FrameworkPortlet.java:522) 在org.springframework.web.portlet.FrameworkPortlet.doDispatch(FrameworkPortlet.java:470) 在javax.portlet.GenericPortlet.render(GenericPortlet.java:233) 在com.liferay.portlet.FilterChainImpl.doFilter(FilterChainImpl.java:101) 在com.liferay.portal.kernel.portlet.PortletFilterUtil.doFilter(PortletFilterUtil.java:64) 在com.liferay.portal.kernel.servlet.PortletServlet.service(PortletServlet.java:92) 在javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 在org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) 在org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 在org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646) 在org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:551) 在org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:488) 在com.liferay.portlet.InvokerPortletImpl.invoke(InvokerPortletImpl.java:638) 在com.liferay.portlet.InvokerPortletImpl.invokeRender(InvokerPortletImpl.java:723) 在com.liferay.portlet.InvokerPortletImpl.render(InvokerPortletImpl.java:425) 在org.apache.jsp.html.portal.render_005fportlet_jsp._jspService(render_005fportlet_jsp.java:1440) 在org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) 在javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 在org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377) 在org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313) 在org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260) 在javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 在org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) 在org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 在org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646) 在org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:551) 在org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:488) 在com.liferay.portal.util.PortalImpl.renderPortlet(PortalImpl.java:3740) 在com.liferay.portal.util.PortalUtil.renderPortlet(PortalUtil.java:1180) 在com.liferay.portlet.layoutconfiguration.util.RuntimePortletUtil.processPortlet(RuntimePortletUtil.java:160) 在com.liferay.portlet.layoutconfiguration.util.RuntimePortletUtil.processPortlet(RuntimePortletUtil.java:94) 在com.liferay.portlet.layoutconfiguration.util.RuntimePortletUtil.processTemplate(RuntimePortletUtil.java:256) 在com.liferay.portlet.layoutconfiguration.util.RuntimePortletUtil.processTemplate(RuntimePortletUtil.java:181) 在org.apache.jsp.html.portal.layout.view.portlet_jsp._jspService(portlet_jsp.java:821) 在org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) 在javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 在org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377) 在org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313) 在org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260) 在javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 在org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) 在org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 在org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646) 在org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:551) 在org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:488) 在com.liferay.portal.action.LayoutAction.includeLayoutContent(LayoutAction.java:370) 在com.liferay.portal.action.LayoutAction.processLayout(LayoutAction.java:629) 在com.liferay.portal.action.LayoutAction.execute(LayoutAction.java:232) 在org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431) 在org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236) 在com.liferay.portal.struts.PortalRequestProcessor.process(PortalRequestProcessor.java:153) 在org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196) 在org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414) 在javax.servlet.http.HttpServlet.service(HttpServlet.java:617) 在com.liferay.portal.servlet.MainServlet.callParentService(MainServlet.java:508)
问题已经解决了。如上所述,问题是100%的类路径问题。尽管我用jarscan扫描了所有目录,但我找不到任何冗余。事实证明,我的同事使用了许多不必要的JAR,将它们不必要地添加到了我的WAR中。
现在正在工作!
谢谢大家;-)