Java JSP在CQ5中不编译?

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/23338390/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-08-13 22:01:41  来源:igfitidea点击:

JSP does not compile in CQ5?

javajspservletsaem

提问by Oliver

I am currently working on Adobe CQ 5.5, few days back I tried connecting to and External Database i.e. Oracle.

我目前正在使用 Adob​​e CQ 5.5,几天前我尝试连接到外部数据库,即 Oracle。

I succedded in that but later on I suddenly started getting weird errors.

我成功了,但后来我突然开始遇到奇怪的错误。

When ever I create new component i.e. JSP , the JSP doesn't get compiled and Classfile is not created under /var/classes/org/apache/jsp/apps

当我创建新组件即 JSP 时,JSP 不会被编译并且 Classfile 不会在 /var/classes/org/apache/jsp/apps 下创建

WHY ?????When I was trying to connect to Database I added dependent OSGi Jars in Felix console, can these jars be reponsible for the Error ??? Just guessing.. I tried removing the jars still JSP doesn't compile . sometimes it say Class cast sometimes something else ....

为什么 ?????当我尝试连接到数据库时,我在 Felix 控制台中添加了依赖的 OSGi 罐子,这些罐子可以对错误负责吗???只是猜测.. 我尝试删除罐子仍然 JSP 不编译。有时它会说 Class cast 有时是别的东西......

Edited:: First It said taglib not found,and now it says something else this is another trace. sometimes it works,sometimes it doesn't what do I do ?? CQ is behaving weird

编辑::首先它说没有找到 taglib,现在它说别的东西,这是另一个跟踪。有时它有效,有时它不起作用我该怎么办??CQ表现得很奇怪

Error during include of component '/apps/xxx/components/loginpage'

Error Message:

org.apache.sling.api.scripting.ScriptEvaluationException: org.apache.sling.scripting.jsp.jasper.JasperException: Unable to compile class for JSP
Processing Info:

Page    =   /content/mywebsite/Login    
Resource Path   =   /content/mywebsite/Login/jcr:content    
Cell    =   loginpage   
Cell Search Path    =   loginpage|page  
Component Path  =   /apps/xxx/components/loginpage  
Sling Request Progress:

      0 (2014-04-29 10:36:22) TIMER_START{Request Processing}
      0 (2014-04-29 10:36:22) COMMENT timer_end format is {<elapsed msec>,<timer name>} <optional message>
      0 (2014-04-29 10:36:22) LOG Method=GET, PathInfo=/content/mywebsite/Login.html
      0 (2014-04-29 10:36:22) TIMER_START{ResourceResolution}
      0 (2014-04-29 10:36:22) TIMER_END{0,ResourceResolution} URI=/content/mywebsite/Login.html resolves to Resource=JcrNodeResource, type=cq:Page, superType=null, path=/content/mywebsite/Login
      0 (2014-04-29 10:36:22) LOG Resource Path Info: SlingRequestPathInfo: path='/content/mywebsite/Login', selectorString='null', extension='html', suffix='null'
      0 (2014-04-29 10:36:22) TIMER_START{ServletResolution}
      0 (2014-04-29 10:36:22) TIMER_START{resolveServlet(JcrNodeResource, type=cq:Page, superType=null, path=/content/mywebsite/Login)}
      0 (2014-04-29 10:36:22) TIMER_END{0,resolveServlet(JcrNodeResource, type=cq:Page, superType=null, path=/content/mywebsite/Login)} Using servlet /libs/foundation/components/primary/cq/Page/Page.jsp
      0 (2014-04-29 10:36:22) TIMER_END{0,ServletResolution} URI=/content/mywebsite/Login.html handled by Servlet=/libs/foundation/components/primary/cq/Page/Page.jsp
      0 (2014-04-29 10:36:22) LOG Applying Requestfilters
      0 (2014-04-29 10:36:22) LOG Calling filter: org.apache.sling.bgservlets.impl.BackgroundServletStarterFilter
      0 (2014-04-29 10:36:22) LOG Calling filter: org.apache.sling.rewriter.impl.RewriterFilter
      0 (2014-04-29 10:36:22) LOG Calling filter: com.day.cq.wcm.core.impl.WCMRequestFilter
      0 (2014-04-29 10:36:22) LOG Calling filter: org.apache.sling.i18n.impl.I18NFilter
      0 (2014-04-29 10:36:22) LOG Calling filter: com.day.cq.theme.impl.ThemeResolverFilter
      0 (2014-04-29 10:36:22) LOG Calling filter: com.day.cq.wcm.foundation.forms.impl.FormsHandlingServlet
      0 (2014-04-29 10:36:22) LOG Calling filter: org.apache.sling.engine.impl.debug.RequestProgressTrackerLogFilter
      0 (2014-04-29 10:36:22) LOG Calling filter: com.day.cq.wcm.mobile.core.impl.redirect.RedirectFilter
      0 (2014-04-29 10:36:22) LOG RedirectFilter did not redirect (MobileUtil.isMobileResource() returns false)
      0 (2014-04-29 10:36:22) LOG Calling filter: com.day.cq.wcm.core.impl.warp.TimeWarpFilter
      0 (2014-04-29 10:36:22) LOG Applying Componentfilters
      0 (2014-04-29 10:36:22) LOG Calling filter: com.day.cq.wcm.core.impl.WCMComponentFilter
      0 (2014-04-29 10:36:22) LOG Calling filter: com.day.cq.wcm.core.impl.WCMDebugFilter
      0 (2014-04-29 10:36:22) TIMER_START{/libs/foundation/components/primary/cq/Page/Page.jsp#0}
      1 (2014-04-29 10:36:22) LOG Including resource JcrNodeResource, type=xxx/components/loginpage, superType=null, path=/content/mywebsite/Login/jcr:content (SlingRequestPathInfo: path='/content/mywebsite/Login/jcr:content', selectorString='null', extension='html', suffix='null')
      1 (2014-04-29 10:36:22) TIMER_START{resolveServlet(JcrNodeResource, type=xxx/components/loginpage, superType=null, path=/content/mywebsite/Login/jcr:content)}
      1 (2014-04-29 10:36:22) TIMER_END{0,resolveServlet(JcrNodeResource, type=xxx/components/loginpage, superType=null, path=/content/mywebsite/Login/jcr:content)} Using servlet /apps/xxx/components/loginpage/loginpage.jsp
      1 (2014-04-29 10:36:22) LOG Applying Includefilters
      1 (2014-04-29 10:36:22) LOG Calling filter: com.day.cq.wcm.core.impl.WCMComponentFilter
      1 (2014-04-29 10:36:22) LOG Calling filter: com.day.cq.wcm.core.impl.WCMDebugFilter
      1 (2014-04-29 10:36:22) TIMER_START{/apps/xxx/components/loginpage/loginpage.jsp#1}
     77 (2014-04-29 10:36:22) LOG SCRIPT ERROR: org.apache.sling.scripting.jsp.jasper.JasperException: Unable to compile class for JSP
     77 (2014-04-29 10:36:22) TIMER_END{76,/apps/xxx/components/loginpage/loginpage.jsp#1}
     78 (2014-04-29 10:36:22) LOG Found processor for post processing ProcessorConfiguration: {contentTypes=[text/html],order=-1, active=true, valid=true, processErrorResponse=true, pipeline=(generator=Config(type=htmlparser, config={}), transformers=(Config(type=linkchecker, config={}), Config(type=mobile, config=org.apache.sling.jcr.resource.JcrPropertyMap@ae983e), Config(type=mobiledebug, config=org.apache.sling.jcr.resource.JcrPropertyMap@8d2f9f), Config(type=contentsync, config=org.apache.sling.jcr.resource.JcrPropertyMap@1317315), serializer=Config(type=htmlwriter, config={}))}
     79 (2014-04-29 10:36:22) TIMER_END{79,Request Processing} Dumping SlingRequestProgressTracker Entries
Full Exception:

org.apache.sling.api.scripting.ScriptEvaluationException: org.apache.sling.scripting.jsp.jasper.JasperException: Unable to compile class for JSP
    at org.apache.sling.scripting.core.impl.DefaultSlingScript.call(DefaultSlingScript.java:385)
    at org.apache.sling.scripting.core.impl.DefaultSlingScript.eval(DefaultSlingScript.java:170)
    at org.apache.sling.scripting.core.impl.DefaultSlingScript.service(DefaultSlingScript.java:456)
    at org.apache.sling.engine.impl.request.RequestData.service(RequestData.java:500)
    at org.apache.sling.engine.impl.filter.SlingComponentFilterChain.render(SlingComponentFilterChain.java:45)
    at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:64)
    at com.day.cq.wcm.core.impl.WCMDebugFilter.doFilterWithErrorHandling(WCMDebugFilter.java:183)
    at com.day.cq.wcm.core.impl.WCMDebugFilter.doFilter(WCMDebugFilter.java:150)
    at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:60)
    at com.day.cq.wcm.core.impl.WCMComponentFilter.doFilter(WCMComponentFilter.java:219)
    at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:60)
    at org.apache.sling.engine.impl.SlingRequestProcessorImpl.processComponent(SlingRequestProcessorImpl.java:257)
    at org.apache.sling.engine.impl.SlingRequestProcessorImpl.dispatchRequest(SlingRequestProcessorImpl.java:297)
    at org.apache.sling.engine.impl.request.SlingRequestDispatcher.dispatch(SlingRequestDispatcher.java:216)
    at org.apache.sling.engine.impl.request.SlingRequestDispatcher.include(SlingRequestDispatcher.java:103)
    at com.day.cq.wcm.core.impl.WCMComponentFilter$ForwardRequestDispatcher.include(WCMComponentFilter.java:381)
    at org.apache.jsp.libs.foundation.components.primary.cq.Page.Page_jsp._jspService(Page_jsp.java:106)
    at org.apache.sling.scripting.jsp.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
    at org.apache.sling.scripting.jsp.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:420)
    at org.apache.sling.scripting.jsp.JspServletWrapperAdapter.service(JspServletWrapperAdapter.java:59)
    at org.apache.sling.scripting.jsp.JspScriptEngineFactory.callJsp(JspScriptEngineFactory.java:233)
    at org.apache.sling.scripting.jsp.JspScriptEngineFactory.access0(JspScriptEngineFactory.java:85)
    at org.apache.sling.scripting.jsp.JspScriptEngineFactory$JspScriptEngine.eval(JspScriptEngineFactory.java:453)
    at org.apache.sling.scripting.core.impl.DefaultSlingScript.call(DefaultSlingScript.java:358)
    at org.apache.sling.scripting.core.impl.DefaultSlingScript.eval(DefaultSlingScript.java:170)
    at org.apache.sling.scripting.core.impl.DefaultSlingScript.service(DefaultSlingScript.java:456)
    at org.apache.sling.engine.impl.request.RequestData.service(RequestData.java:500)
    at org.apache.sling.engine.impl.filter.SlingComponentFilterChain.render(SlingComponentFilterChain.java:45)
    at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:64)
    at com.day.cq.wcm.core.impl.WCMDebugFilter.doFilter(WCMDebugFilter.java:147)
    at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:60)
    at com.day.cq.wcm.core.impl.WCMComponentFilter.filterRootInclude(WCMComponentFilter.java:308)
    at com.day.cq.wcm.core.impl.WCMComponentFilter.doFilter(WCMComponentFilter.java:141)
    at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:60)
    at org.apache.sling.engine.impl.SlingRequestProcessorImpl.processComponent(SlingRequestProcessorImpl.java:257)
    at org.apache.sling.engine.impl.filter.RequestSlingFilterChain.render(RequestSlingFilterChain.java:49)
    at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:64)
    at com.day.cq.wcm.core.impl.warp.TimeWarpFilter.doFilter(TimeWarpFilter.java:106)
    at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:60)
    at com.day.cq.wcm.mobile.core.impl.redirect.RedirectFilter.doFilter(RedirectFilter.java:296)
    at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:60)
    at org.apache.sling.engine.impl.debug.RequestProgressTrackerLogFilter.doFilter(RequestProgressTrackerLogFilter.java:59)
    at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:60)
    at com.day.cq.wcm.foundation.forms.impl.FormsHandlingServlet.doFilter(FormsHandlingServlet.java:220)
    at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:60)
    at com.day.cq.theme.impl.ThemeResolverFilter.doFilter(ThemeResolverFilter.java:76)
    at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:60)
    at org.apache.sling.i18n.impl.I18NFilter.doFilter(I18NFilter.java:117)
    at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:60)
    at com.day.cq.wcm.core.impl.WCMRequestFilter.doFilter(WCMRequestFilter.java:89)
    at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:60)
    at org.apache.sling.rewriter.impl.RewriterFilter.doFilter(RewriterFilter.java:83)
    at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:60)
    at org.apache.sling.bgservlets.impl.BackgroundServletStarterFilter.doFilter(BackgroundServletStarterFilter.java:135)
    at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:60)
    at org.apache.sling.engine.impl.SlingRequestProcessorImpl.processRequest(SlingRequestProcessorImpl.java:153)
    at org.apache.sling.engine.impl.SlingMainServlet.service(SlingMainServlet.java:206)
    at org.apache.felix.http.base.internal.handler.ServletHandler.doHandle(ServletHandler.java:96)
    at org.apache.felix.http.base.internal.handler.ServletHandler.handle(ServletHandler.java:79)
    at org.apache.felix.http.base.internal.dispatch.ServletPipeline.handle(ServletPipeline.java:42)
    at org.apache.felix.http.base.internal.dispatch.InvocationFilterChain.doFilter(InvocationFilterChain.java:49)
    at org.apache.felix.http.base.internal.dispatch.HttpFilterChain.doFilter(HttpFilterChain.java:33)
    at org.apache.sling.i18n.impl.I18NFilter.doFilter(I18NFilter.java:117)
    at org.apache.felix.http.base.internal.handler.FilterHandler.doHandle(FilterHandler.java:88)
    at org.apache.felix.http.base.internal.handler.FilterHandler.handle(FilterHandler.java:76)
    at org.apache.felix.http.base.internal.dispatch.InvocationFilterChain.doFilter(InvocationFilterChain.java:47)
    at org.apache.felix.http.base.internal.dispatch.HttpFilterChain.doFilter(HttpFilterChain.java:33)
    at com.adobe.granite.license.impl.LicenseCheckFilter.doFilter(LicenseCheckFilter.java:179)
    at org.apache.felix.http.base.internal.handler.FilterHandler.doHandle(FilterHandler.java:88)
    at org.apache.felix.http.base.internal.handler.FilterHandler.handle(FilterHandler.java:76)
    at org.apache.felix.http.base.internal.dispatch.InvocationFilterChain.doFilter(InvocationFilterChain.java:47)
    at org.apache.felix.http.base.internal.dispatch.HttpFilterChain.doFilter(HttpFilterChain.java:33)
    at org.apache.sling.security.impl.ReferrerFilter.doFilter(ReferrerFilter.java:238)
    at org.apache.felix.http.base.internal.handler.FilterHandler.doHandle(FilterHandler.java:88)
    at org.apache.felix.http.base.internal.handler.FilterHandler.handle(FilterHandler.java:76)
    at org.apache.felix.http.base.internal.dispatch.InvocationFilterChain.doFilter(InvocationFilterChain.java:47)
    at org.apache.felix.http.base.internal.dispatch.HttpFilterChain.doFilter(HttpFilterChain.java:33)
    at org.apache.sling.engine.impl.log.RequestLoggerFilter.doFilter(RequestLoggerFilter.java:75)
    at org.apache.felix.http.base.internal.handler.FilterHandler.doHandle(FilterHandler.java:88)
    at org.apache.felix.http.base.internal.handler.FilterHandler.handle(FilterHandler.java:76)
    at org.apache.felix.http.base.internal.dispatch.InvocationFilterChain.doFilter(InvocationFilterChain.java:47)
    at org.apache.felix.http.base.internal.dispatch.HttpFilterChain.doFilter(HttpFilterChain.java:33)
    at org.apache.felix.http.base.internal.dispatch.FilterPipeline.dispatch(FilterPipeline.java:48)
    at org.apache.felix.http.base.internal.dispatch.Dispatcher.dispatch(Dispatcher.java:39)
    at org.apache.felix.http.base.internal.DispatcherServlet.service(DispatcherServlet.java:67)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
    at com.day.j2ee.servletengine.ServletRuntimeEnvironment.service(ServletRuntimeEnvironment.java:250)
    at com.day.j2ee.servletengine.RequestDispatcherImpl.doFilter(RequestDispatcherImpl.java:315)
    at com.day.j2ee.servletengine.RequestDispatcherImpl.service(RequestDispatcherImpl.java:334)
    at com.day.j2ee.servletengine.RequestDispatcherImpl.service(RequestDispatcherImpl.java:377)
    at com.day.j2ee.servletengine.ServletHandlerImpl.process(ServletHandlerImpl.java:351)
    at com.day.j2ee.servletengine.HttpListener$Worker.run(HttpListener.java:625)
    at java.lang.Thread.run(Unknown Source)
Caused by: org.apache.sling.api.SlingException: org.apache.sling.scripting.jsp.jasper.JasperException: Unable to compile class for JSP
    at org.apache.sling.scripting.jsp.jasper.servlet.JspServletWrapper.handleJspExceptionInternal(JspServletWrapper.java:582)
    at org.apache.sling.scripting.jsp.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:499)
    at org.apache.sling.scripting.jsp.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:399)
    at org.apache.sling.scripting.jsp.JspServletWrapperAdapter.service(JspServletWrapperAdapter.java:59)
    at org.apache.sling.scripting.jsp.JspScriptEngineFactory.callJsp(JspScriptEngineFactory.java:233)
    at org.apache.sling.scripting.jsp.JspScriptEngineFactory.access0(JspScriptEngineFactory.java:85)
    at org.apache.sling.scripting.jsp.JspScriptEngineFactory$JspScriptEngine.eval(JspScriptEngineFactory.java:453)
    at org.apache.sling.scripting.core.impl.DefaultSlingScript.call(DefaultSlingScript.java:358)
    ... 93 more
Caused by: java.lang.ClassCastException: com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl cannot be cast to javax.xml.parsers.SAXParserFactory
    at javax.xml.parsers.SAXParserFactory.newInstance(Unknown Source)
    at org.apache.taglibs.standard.tlv.JstlBaseTLV.validate(JstlBaseTLV.java:152)
    at org.apache.taglibs.standard.tlv.JstlFmtTLV.validate(JstlFmtTLV.java:96)
    at org.apache.sling.scripting.jsp.jasper.compiler.TagLibraryInfoImpl.validate(TagLibraryInfoImpl.java:761)
    at org.apache.sling.scripting.jsp.jasper.compiler.Validator.validateXmlView(Validator.java:1774)
    at org.apache.sling.scripting.jsp.jasper.compiler.Validator.validate(Validator.java:1743)
    at org.apache.sling.scripting.jsp.jasper.compiler.Compiler.generateJava(Compiler.java:179)
    at org.apache.sling.scripting.jsp.jasper.compiler.Compiler.compile(Compiler.java:311)
    at org.apache.sling.scripting.jsp.jasper.compiler.Compiler.compile(Compiler.java:291)
    at org.apache.sling.scripting.jsp.jasper.compiler.Compiler.compile(Compiler.java:278)
    at org.apache.sling.scripting.jsp.jasper.JspCompilationContext.compile(JspCompilationContext.java:599)
    at org.apache.sling.scripting.jsp.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:355)
    ... 98 more

采纳答案by Oliver

My Team Lead solved it, THIS is a BUG in CQ 5.5.Sometimes when everything is right and you haven't done anything wrong the problem could be with CQ.

我的团队负责人解决了它,这是 CQ 5.5 中的一个 BUG。有时,当一切正常并且您没有做错任何事情时,问题可能出在 CQ 上。

Solution Steps:

解决步骤:

  1. Shut Down CQ
  2. Delete the launchpad folder
  3. Restart CQ
  1. 关闭 CQ
  2. 删除启动板文件夹
  3. 重启CQ

Tada it works !!

多田它有效!!

回答by anotherdave

Your error mentions that it can't resolve the Sling tag library. Are you including a reference to it in your JSP (either directly or via the global.jsp script that references it?). I.e. within your JSP:

您的错误提到它无法解析 Sling 标签库。您是否在 JSP 中包含对它的引用(直接或通过引用它的 global.jsp 脚本?)。即在您的 JSP 中:

<%@taglib prefix="sling" uri="http://sling.apache.org/taglibs/sling/1.0" %>

<%@taglib prefix="sling" uri="http://sling.apache.org/taglibs/sling/1.0" %>

or

或者

<%@include file="/libs/foundation/global.jsp" %>

<%@include file="/libs/foundation/global.jsp" %>