freemarker issue undeclared throwable:java.lang.reflect.InvocationTargetException

时间:2014-09-23 13:43:03

标签: struts2 freemarker

我们正在使用FreeMarker模板文件构建HTML的Web应用程序中遇到问题。一切正常但在某个时刻freemarker模板自定义文件开始导致下面的异常,我们无法确定错误的原因,因为它很少出现,但一旦出现,它将继续出现,直到我们重新部署我们的网站应用

因此,由于应用程序的重新部署解决了错误,原因可能是.ftl文件定义在缓存中被破坏。

我们正在使用template_update_delay=60000来延迟每次调用时重新加载模板。

我们正在使用freemarker2.3.16.jar

感谢任何帮助

Undeclared throwable:java.lang.reflect.InvocationTargetException at 
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at 
java.lang.reflect.Method.invoke(Method.java:601) at 
freemarker.ext.jsp.PageContextFactory.getCurrentPageContext(PageContextFactory.java:54) at 
freemarker.ext.jsp.TagTransformModel.getWriter(TagTransformModel.java:99) at 
freemarker.core.Environment.visit(Environment.java:286) at 
freemarker.core.UnifiedCall.accept(UnifiedCall.java:130) at 
freemarker.core.Environment.visit(Environment.java:210) at 
freemarker.core.IfBlock.accept(IfBlock.java:82) at 
freemarker.core.Environment.visit(Environment.java:210) at 
freemarker.core.MixedContent.accept(MixedContent.java:92) at 
freemarker.core.Environment.visit(Environment.java:210) at 
freemarker.core.IfBlock.accept(IfBlock.java:82) at 
freemarker.core.Environment.visit(Environment.java:210) at 
freemarker.core.IfBlock.accept(IfBlock.java:82) at 
freemarker.core.Environment.visit(Environment.java:210) at 
freemarker.core.MixedContent.accept(MixedContent.java:92) at 
freemarker.core.Environment.visit(Environment.java:210) at 
freemarker.core.Environment.visit(Environment.java:299) at 
freemarker.core.UnifiedCall.accept(UnifiedCall.java:130) at 
freemarker.core.Environment.visit(Environment.java:210) at 
freemarker.core.MixedContent.accept(MixedContent.java:92) at 
freemarker.core.Environment.visit(Environment.java:210) at 
freemarker.core.Environment.process(Environment.java:190) at 
freemarker.template.Template.process(Template.java:237) at 
org.apache.struts2.views.freemarker.FreemarkerResult.doExecute(FreemarkerResult.java:201) at 
org.apache.struts2.dispatcher.StrutsResultSupport.execute(StrutsResultSupport.java:186) at 
com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:374) at 
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:278) at 
com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java:138) at 
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249) at 
com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:211) at 
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98) at 
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249) at 
com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:211) at 
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98) at 
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249) at 
org.apache.struts2.interceptor.MultiselectInterceptor.intercept(MultiselectInterceptor.java:75) at 
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249) at 
org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:90) at 
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249) at 
com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:100) at 
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249) at 
com.opensymphony.xwork2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:176) at 
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249) at 
org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:164) at 
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249) at 
com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:187) at 
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249) at 
com.path.lib.common.interceptor.PathSessionInterceptor.intercept(PathSessionInterceptor.java:72) at 
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249) at 
org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:54) at 
org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:511) at 
org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:77) at 
org.apache.struts2.dispatcher.ng.filter.StrutsExecuteFilter.doFilter(StrutsExecuteFilter.java:88) at 
weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:74) at 
com.opensymphony.sitemesh.webapp.SiteMeshFilter.obtainContent(SiteMeshFilter.java:129) at 
com.opensymphony.sitemesh.webapp.SiteMeshFilter.doFilter(SiteMeshFilter.java:77) at 
weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:74) at 
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareFilter.doFilter(StrutsPrepareFilter.java:82) at 
weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:74) at 
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:256) at 
org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:117) at 
org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83) at 
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:268) at 
org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:95) at 
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:268) at 
org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:100) at 
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:268) at 
org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:79) at 
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:268) at 
org.springframework.security.web.authentication.rememberme.RememberMeAuthenticationFilter.doFilter(RememberMeAuthenticationFilter.java:119) at 
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:268) at 
org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:54) at 
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:268) at 
org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:35) at 
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:268) at 
org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:187) at 
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:268) at 
org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:105) at 
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:268) at 
org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) at 
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:268) at 
org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:121) at 
org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237) at 
org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167) at 
weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:74) at 
weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3288) at 
weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3254) at 
weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321) at 
weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120) at 
weblogic.servlet.provider.WlsSubjectHandle.run(WlsSubjectHandle.java:57) at 
weblogic.servlet.internal.WebAppServletContext.doSecuredExecute(WebAppServletContext.java:2163) at 
weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2089) at 
weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2074) at 
weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1513) at 
weblogic.servlet.provider.ContainerSupportProviderImpl$WlsRequestExecutor.run(ContainerSupportProviderImpl.java:254) at 
weblogic.work.ExecuteThread.execute(ExecuteThread.java:256) at 
weblogic.work.ExecuteThread.run(ExecuteThread.java:221) Caused by: java.lang.NullPointerException at 
freemarker.ext.jsp.FreeMarkerPageContext.(FreeMarkerPageContext.java:159) at 
freemarker.ext.jsp.FreeMarkerPageContext21.(FreeMarkerPageContext21.java:36) at 
freemarker.ext.jsp.FreeMarkerPageContext21.create(FreeMarkerPageContext21.java:40) ... 100 more

0 个答案:

没有答案