Saturday 25 July 2015

ATG-Endeca Integration | Property 'contentItem' not found on type atg.servlet.DynamoHttpServletRequest

While trying to access contentItem returned by InvokeAssembler. Got below exception trace on server console.
========================================================================
javax.el.PropertyNotFoundException: Property 'contentItem' not found on type atg.servlet.DynamoHttpServletRequest
        at javax.el.BeanELResolver$BeanProperties.get(BeanELResolver.java:193)
        at javax.el.BeanELResolver$BeanProperties.access$400(BeanELResolver.java:170)
        at javax.el.BeanELResolver.property(BeanELResolver.java:279)
        at javax.el.BeanELResolver.getValue(BeanELResolver.java:60)
        at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:54)
        at org.apache.el.parser.AstValue.getValue(AstValue.java:118)
        at org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186)
        at org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate(PageContextImpl.java:925)
        at org.apache.jsp.cartridges.ContentSlot.ContentSlot_jsp._jspx_meth_dsp_005fgetvalueof_005f0(ContentSlot_jsp.java:255)
        at org.apache.jsp.cartridges.ContentSlot.ContentSlot_jsp._jspx_meth_dsp_005fpage_005f1(ContentSlot_jsp.java:197)
        at org.apache.jsp.cartridges.ContentSlot.ContentSlot_jsp._jspService(ContentSlot_jsp.java:107)
        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:369)
        at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:322)
        at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:249)
        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:638)
        at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:543)
        at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:480)
        at atg.servlet.WrappingRequestDispatcher.include(WrappingRequestDispatcher.java:123)
        at atg.taglib.dspjsp.IncludeTag.doEndTag(IncludeTag.java:883)
        at atg.taglib.dspjsp.DelegatingTag.doEndTag(DelegatingTag.java:147)
        at atg.taglib.dspjsp.AbstractRenderContentItem.doEndTag(AbstractRenderContentItem.java:234)
        at atg.taglib.dspjsp.DelegatingTag.doEndTag(DelegatingTag.java:147)
        at org.apache.jsp.index_jsp._jspx_meth_dsp_005frenderContentItem_005f0(index_jsp.java:410)
        at org.apache.jsp.index_jsp._jspx_meth_c_005fif_005f0(index_jsp.java:381)
        at org.apache.jsp.index_jsp._jspx_meth_dsp_005fpage_005f1(index_jsp.java:203)
        at org.apache.jsp.index_jsp._jspService(index_jsp.java:112)
        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:369)
        at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:322)
        at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:249)
        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 atg.service.configuration.ResponseWrappingConfiguration.invokeFilterChainWithPossibleWrapping(ResponseWrappingConfiguration.java:458)
        at atg.servlet.pipeline.TailPipelineServlet.service(TailPipelineServlet.java:174)
        at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
        at atg.servlet.pipeline.DispatcherPipelineServletImpl.service(DispatcherPipelineServletImpl.java:275)
        at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
        at atg.endeca.assembler.AssemblerPipelineServlet.service(AssemblerPipelineServlet.java:458)
        at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
        at atg.servlet.http.CookieBufferServlet.service(CookieBufferServlet.java:119)
        at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
        at atg.userprofiling.ExpiredPasswordServlet.service(ExpiredPasswordServlet.java:383)
        at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
        at atg.servlet.pipeline.MimeTyperPipelineServlet.service(MimeTyperPipelineServlet.java:228)
        at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
        at atg.droplet.DropletEventServlet.service(DropletEventServlet.java:696)
        at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
        at atg.commerce.order.CommerceCommandServlet.service(CommerceCommandServlet.java:150)
        at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
        at atg.commerce.promotion.PromotionServlet.service(PromotionServlet.java:213)
        at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
        at atg.userprofiling.AccessControlServlet.service(AccessControlServlet.java:696)
        at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
        at atg.servlet.sessionsaver.SessionSaverServlet.service(SessionSaverServlet.java:2452)
        at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
        at atg.userprofiling.PageEventTriggerPipelineServlet.service(PageEventTriggerPipelineServlet.java:191)
        at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
        at atg.search.servlet.SearchClickThroughServlet.service(SearchClickThroughServlet.java:418)
        at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
        at atg.multisite.SiteSessionEventTriggerPipelineServlet.service(SiteSessionEventTriggerPipelineServlet.java:161)
        at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
        at atg.userprofiling.SessionEventTrigger.service(SessionEventTrigger.java:512)
        at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
        at atg.userprofiling.ProfilePropertyServlet.service(ProfilePropertyServlet.java:230)
        at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
        at atg.userprofiling.ProfileRequestServlet.service(ProfileRequestServlet.java:461)
        at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
        at atg.servlet.pipeline.DynamoPipelineServlet.service(DynamoPipelineServlet.java:491)
        at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
        at atg.servlet.pipeline.URLArgumentPipelineServlet.service(URLArgumentPipelineServlet.java:298)
        at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
        at atg.servlet.pipeline.PathAuthenticationPipelineServlet.service(PathAuthenticationPipelineServlet.java:392)
        at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
        at atg.servlet.security.ThreadUserBinderServlet.service(ThreadUserBinderServlet.java:113)
        at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
        at atg.dtm.TransactionPipelineServlet.service(TransactionPipelineServlet.java:234)
        at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
        at atg.servlet.pipeline.SecurityServlet.service(SecurityServlet.java:196)
        at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
        at atg.multisite.SiteContextPipelineServlet.service(SiteContextPipelineServlet.java:441)
        at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
        at atg.servlet.pipeline.HeadPipelineServlet.passRequest(HeadPipelineServlet.java:1252)
        at atg.servlet.pipeline.HeadPipelineServlet.service(HeadPipelineServlet.java:930)
        at atg.servlet.pipeline.PipelineableServletImpl.service(PipelineableServletImpl.java:272)
        at atg.filter.dspjsp.PageFilter.innerDoFilter(PageFilter.java:348)
        at atg.filter.dspjsp.PageFilter.doFilter(PageFilter.java:206)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:235)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
        at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:190)
        at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:92)
        at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.process(SecurityContextEstablishmentValve.java:126)
        at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:70)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
        at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:158)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:330)
        at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:829)
        at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:598)
        at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
        at java.lang.Thread.run(Thread.java:662)


========================================================================

Here is the solution to this issue.


Configure below listener in the web.xml of your web application.

========================================================================
  <listener>
          <listener-class>atg.taglib.dspjsp.RegisterELResolverServletContextListener</listener-class>
    </listener>

========================================================================

To use this listener your web application must use the servlet 2.5 schema or greater.
 

No comments:

Post a Comment