Uploaded image for project: 'Bamboo Data Center'
  1. Bamboo Data Center
  2. BAM-9116

Freemarker becomes unable to read plugin bean fields when the plugin is reloaded with atlas-cli pi

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • Medium
    • 3.3 M4, 3.3
    • 3.1.3
    • Plugins
    • None
    • Bamboo 3.1.2 (loaded with atlas-debug)
      Ubuntu 10.04 LTS
      Open JDK 1.6.0_20
      Atlassian Plugin SDK 3.3.4

    Description

      Developing a plugin with the SDK I modify a .ftl file. This file references a simple bean that looks like:

      public class TSValue<T> {
      	private final T        value;
      	private final DateTime time;
      	
      	public TSValue(T value, DateTime time) {
      		this.value = value;
      		this.time  = time;
      	}
      	
      	public T getValue() {
      		return value;
      	}
      	
      	public DateTime getTime() {
      		return time;
      	}
      	
      	public String getHumanTime() {
      		return DurationUtils.getRelativeDate(time.toDate(), new Date()) + " ago";
      	}
      }
      
      default.ftl
      <#list releasedPatchBranches as version>
      	<li>${version.value} (<span alt="${version.time}">${version.humanTime}</span>)</li>
      </#list>
      

      On the initial load of the plugin, the FTL renders correctly. When I invoke pi in atlas-cli the values are no longer shown (though the correct number of li are rendered). The following exception is thrown

      [INFO] [talledLocalContainer] 2011-06-24 13:03:27,710 ERROR [http-6990-1] [runtime] get(humanTime) failed on instance of com.company.release.TSValue
      [INFO] [talledLocalContainer] 
      [INFO] [talledLocalContainer] get(humanTime) failed on instance of com.company.release.TSValue
      [INFO] [talledLocalContainer] The problematic instruction:
      [INFO] [talledLocalContainer] ----------
      [INFO] [talledLocalContainer] ==> ${version.humanTime} [on line 10, column 75 in templates/patchesAndReleases/default.ftl]
      [INFO] [talledLocalContainer] ----------
      [INFO] [talledLocalContainer] 
      [INFO] [talledLocalContainer] Java backtrace for programmers:
      [INFO] [talledLocalContainer] ----------
      [INFO] [talledLocalContainer] freemarker.template.TemplateModelException: get(humanTime) failed on instance of com.company.release.TSValue
      [INFO] [talledLocalContainer] 	at freemarker.ext.beans.BeanModel.get(BeanModel.java:210)
      [INFO] [talledLocalContainer] 	at freemarker.core.Dot._getAsTemplateModel(Dot.java:76)
      [INFO] [talledLocalContainer] 	at freemarker.core.Expression.getAsTemplateModel(Expression.java:89)
      [INFO] [talledLocalContainer] 	at freemarker.core.Expression.getStringValue(Expression.java:93)
      [INFO] [talledLocalContainer] 	at freemarker.core.DollarVariable.accept(DollarVariable.java:76)
      [INFO] [talledLocalContainer] 	at freemarker.core.Environment.visit(Environment.java:210)
      [INFO] [talledLocalContainer] 	at freemarker.core.MixedContent.accept(MixedContent.java:92)
      [INFO] [talledLocalContainer] 	at freemarker.core.Environment.visit(Environment.java:210)
      [INFO] [talledLocalContainer] 	at freemarker.core.IteratorBlock$Context.runLoop(IteratorBlock.java:167)
      [INFO] [talledLocalContainer] 	at freemarker.core.Environment.visit(Environment.java:417)
      [INFO] [talledLocalContainer] 	at freemarker.core.IteratorBlock.accept(IteratorBlock.java:102)
      [INFO] [talledLocalContainer] 	at freemarker.core.Environment.visit(Environment.java:210)
      [INFO] [talledLocalContainer] 	at freemarker.core.MixedContent.accept(MixedContent.java:92)
      [INFO] [talledLocalContainer] 	at freemarker.core.Environment.visit(Environment.java:210)
      [INFO] [talledLocalContainer] 	at freemarker.core.Environment.process(Environment.java:190)
      [INFO] [talledLocalContainer] 	at freemarker.template.Template.process(Template.java:289)
      [INFO] [talledLocalContainer] 	at freemarker.template.Template.process(Template.java:243)
      [INFO] [talledLocalContainer] 	at com.opensymphony.webwork.views.freemarker.FreemarkerResult.doExecute(FreemarkerResult.java:214)
      [INFO] [talledLocalContainer] 	at com.opensymphony.webwork.dispatcher.WebWorkResultSupport.execute(WebWorkResultSupport.java:143)
      [INFO] [talledLocalContainer] 	at com.opensymphony.xwork.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:313)
      [INFO] [talledLocalContainer] 	at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:208)
      [INFO] [talledLocalContainer] 	at com.opensymphony.xwork.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:175)
      [INFO] [talledLocalContainer] 	at com.atlassian.bamboo.ww2.interceptors.BambooWorkflowInterceptor.doIntercept(BambooWorkflowInterceptor.java:37)
      [INFO] [talledLocalContainer] 	at com.opensymphony.xwork.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86)
      [INFO] [talledLocalContainer] 	at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
      [INFO] [talledLocalContainer] 	at com.opensymphony.xwork.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:116)
      [INFO] [talledLocalContainer] 	at com.atlassian.bamboo.ww2.interceptors.BambooValidationInterceptor.doIntercept(BambooValidationInterceptor.java:33)
      [INFO] [talledLocalContainer] 	at com.opensymphony.xwork.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86)
      [INFO] [talledLocalContainer] 	at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
      [INFO] [talledLocalContainer] 	at com.atlassian.bamboo.ww2.interceptors.JSONValidationInterceptor.intercept(JSONValidationInterceptor.java:78)
      [INFO] [talledLocalContainer] 	at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
      [INFO] [talledLocalContainer] 	at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
      [INFO] [talledLocalContainer] 	at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
      [INFO] [talledLocalContainer] 	at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
      [INFO] [talledLocalContainer] 	at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
      [INFO] [talledLocalContainer] 	at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
      [INFO] [talledLocalContainer] 	at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
      [INFO] [talledLocalContainer] 	at com.opensymphony.webwork.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:174)
      [INFO] [talledLocalContainer] 	at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
      [INFO] [talledLocalContainer] 	at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
      [INFO] [talledLocalContainer] 	at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
      [INFO] [talledLocalContainer] 	at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
      [INFO] [talledLocalContainer] 	at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
      [INFO] [talledLocalContainer] 	at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
      [INFO] [talledLocalContainer] 	at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
      [INFO] [talledLocalContainer] 	at com.opensymphony.xwork.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:151)
      [INFO] [talledLocalContainer] 	at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
      [INFO] [talledLocalContainer] 	at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
      [INFO] [talledLocalContainer] 	at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
      [INFO] [talledLocalContainer] 	at com.atlassian.bamboo.security.acegi.intercept.web.WebworkSecurityInterceptor.intercept(WebworkSecurityInterceptor.java:63)
      [INFO] [talledLocalContainer] 	at com.atlassian.bamboo.security.acegi.intercept.web.WebworkSecurityInterceptorProxy.intercept(WebworkSecurityInterceptorProxy.java:30)
      [INFO] [talledLocalContainer] 	at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
      [INFO] [talledLocalContainer] 	at com.atlassian.bamboo.ww2.interceptors.PaginationAwareInterceptor.intercept(PaginationAwareInterceptor.java:81)
      [INFO] [talledLocalContainer] 	at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
      [INFO] [talledLocalContainer] 	at com.atlassian.bamboo.ww2.interceptors.StatisticsAwareInterceptor.intercept(StatisticsAwareInterceptor.java:42)
      [INFO] [talledLocalContainer] 	at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
      [INFO] [talledLocalContainer] 	at com.atlassian.bamboo.ww2.interceptors.ResultsListAwareInterceptor.intercept(ResultsListAwareInterceptor.java:45)
      [INFO] [talledLocalContainer] 	at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
      [INFO] [talledLocalContainer] 	at com.atlassian.bamboo.ww2.interceptors.NavigationAwareInterceptor.intercept(NavigationAwareInterceptor.java:44)
      [INFO] [talledLocalContainer] 	at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
      [INFO] [talledLocalContainer] 	at com.atlassian.bamboo.ww2.interceptors.BuildResultsSummaryAwareInteceptor.intercept(BuildResultsSummaryAwareInteceptor.java:66)
      [INFO] [talledLocalContainer] 	at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
      [INFO] [talledLocalContainer] 	at com.atlassian.bamboo.ww2.interceptors.ResultsSummaryAwareInteceptor.intercept(ResultsSummaryAwareInteceptor.java:73)
      [INFO] [talledLocalContainer] 	at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
      [INFO] [talledLocalContainer] 	at com.atlassian.bamboo.ww2.interceptors.ChainAwareInterceptor.intercept(ChainAwareInterceptor.java:112)
      [INFO] [talledLocalContainer] 	at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
      [INFO] [talledLocalContainer] 	at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
      [INFO] [talledLocalContainer] 	at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
      [INFO] [talledLocalContainer] 	at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
      [INFO] [talledLocalContainer] 	at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
      [INFO] [talledLocalContainer] 	at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
      [INFO] [talledLocalContainer] 	at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
      [INFO] [talledLocalContainer] 	at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
      [INFO] [talledLocalContainer] 	at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
      [INFO] [talledLocalContainer] 	at com.opensymphony.xwork.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:186)
      [INFO] [talledLocalContainer] 	at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
      [INFO] [talledLocalContainer] 	at com.opensymphony.xwork.DefaultActionProxy.execute(DefaultActionProxy.java:116)
      [INFO] [talledLocalContainer] 	at com.opensymphony.webwork.dispatcher.DispatcherUtils.serviceAction(DispatcherUtils.java:274)
      [INFO] [talledLocalContainer] 	at com.opensymphony.webwork.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:202)
      [INFO] [talledLocalContainer] 	at com.atlassian.bamboo.ww2.BambooFilterDispatcher.doFilter(BambooFilterDispatcher.java:30)
      [INFO] [talledLocalContainer] 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      [INFO] [talledLocalContainer] 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      [INFO] [talledLocalContainer] 	at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46)
      [INFO] [talledLocalContainer] 	at com.atlassian.plugin.servlet.filter.DelegatingPluginFilter$1.doFilter(DelegatingPluginFilter.java:66)
      [INFO] [talledLocalContainer] 	at com.atlassian.applinks.core.rest.context.ContextFilter.doFilter(ContextFilter.java:25)
      [INFO] [talledLocalContainer] 	at com.atlassian.plugin.servlet.filter.DelegatingPluginFilter.doFilter(DelegatingPluginFilter.java:74)
      [INFO] [talledLocalContainer] 	at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:42)
      [INFO] [talledLocalContainer] 	at com.atlassian.plugin.servlet.filter.DelegatingPluginFilter$1.doFilter(DelegatingPluginFilter.java:66)
      [INFO] [talledLocalContainer] 	at com.atlassian.labs.httpservice.resource.ResourceFilter.doFilter(ResourceFilter.java:59)
      [INFO] [talledLocalContainer] 	at com.atlassian.plugin.servlet.filter.DelegatingPluginFilter.doFilter(DelegatingPluginFilter.java:74)
      [INFO] [talledLocalContainer] 	at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:42)
      [INFO] [talledLocalContainer] 	at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:77)
      [INFO] [talledLocalContainer] 	at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:63)
      [INFO] [talledLocalContainer] 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      [INFO] [talledLocalContainer] 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      [INFO] [talledLocalContainer] 	at com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:118)
      [INFO] [talledLocalContainer] 	at com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:52)
      [INFO] [talledLocalContainer] 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      [INFO] [talledLocalContainer] 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      [INFO] [talledLocalContainer] 	at com.opensymphony.webwork.dispatcher.ActionContextCleanUp.doFilter(ActionContextCleanUp.java:88)
      [INFO] [talledLocalContainer] 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      [INFO] [talledLocalContainer] 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      [INFO] [talledLocalContainer] 	at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46)
      [INFO] [talledLocalContainer] 	at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:77)
      [INFO] [talledLocalContainer] 	at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:63)
      [INFO] [talledLocalContainer] 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      [INFO] [talledLocalContainer] 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      [INFO] [talledLocalContainer] 	at com.atlassian.bamboo.filter.AccessLogFilter.doFilter(AccessLogFilter.java:66)
      [INFO] [talledLocalContainer] 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      [INFO] [talledLocalContainer] 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      [INFO] [talledLocalContainer] 	at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:265)
      [INFO] [talledLocalContainer] 	at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
      [INFO] [talledLocalContainer] 	at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
      [INFO] [talledLocalContainer] 	at com.atlassian.bamboo.filter.SeraphLoginFilter.doFilter(SeraphLoginFilter.java:74)
      [INFO] [talledLocalContainer] 	at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
      [INFO] [talledLocalContainer] 	at org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:149)
      [INFO] [talledLocalContainer] 	at org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98)
      [INFO] [talledLocalContainer] 	at com.atlassian.bamboo.filter.BambooAcegiProxyFilter.doFilter(BambooAcegiProxyFilter.java:25)
      [INFO] [talledLocalContainer] 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      [INFO] [talledLocalContainer] 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      [INFO] [talledLocalContainer] 	at com.atlassian.bamboo.filter.LicenseFilter.doFilter(LicenseFilter.java:73)
      [INFO] [talledLocalContainer] 	at com.atlassian.core.filters.AbstractHttpFilter.doFilter(AbstractHttpFilter.java:31)
      [INFO] [talledLocalContainer] 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      [INFO] [talledLocalContainer] 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      [INFO] [talledLocalContainer] 	at com.atlassian.johnson.filters.AbstractJohnsonFilter.doFilter(AbstractJohnsonFilter.java:71)
      [INFO] [talledLocalContainer] 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      [INFO] [talledLocalContainer] 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      [INFO] [talledLocalContainer] 	at com.atlassian.seraph.filter.SecurityFilter.doFilter(SecurityFilter.java:211)
      [INFO] [talledLocalContainer] 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      [INFO] [talledLocalContainer] 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      [INFO] [talledLocalContainer] 	at com.atlassian.seraph.filter.BaseLoginFilter.doFilter(BaseLoginFilter.java:150)
      [INFO] [talledLocalContainer] 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      [INFO] [talledLocalContainer] 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      [INFO] [talledLocalContainer] 	at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46)
      [INFO] [talledLocalContainer] 	at com.atlassian.plugin.servlet.filter.DelegatingPluginFilter$1.doFilter(DelegatingPluginFilter.java:66)
      [INFO] [talledLocalContainer] 	at com.atlassian.oauth.serviceprovider.internal.servlet.OAuthFilter.doFilter(OAuthFilter.java:71)
      [INFO] [talledLocalContainer] 	at com.atlassian.plugin.servlet.filter.DelegatingPluginFilter.doFilter(DelegatingPluginFilter.java:74)
      [INFO] [talledLocalContainer] 	at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:42)
      [INFO] [talledLocalContainer] 	at com.atlassian.plugin.servlet.filter.DelegatingPluginFilter$1.doFilter(DelegatingPluginFilter.java:66)
      [INFO] [talledLocalContainer] 	at com.atlassian.security.auth.trustedapps.filter.TrustedApplicationsFilter.doFilter(TrustedApplicationsFilter.java:98)
      [INFO] [talledLocalContainer] 	at com.atlassian.plugin.servlet.filter.DelegatingPluginFilter.doFilter(DelegatingPluginFilter.java:74)
      [INFO] [talledLocalContainer] 	at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:42)
      [INFO] [talledLocalContainer] 	at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:77)
      [INFO] [talledLocalContainer] 	at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:63)
      [INFO] [talledLocalContainer] 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      [INFO] [talledLocalContainer] 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      [INFO] [talledLocalContainer] 	at org.springframework.orm.hibernate.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:170)
      [INFO] [talledLocalContainer] 	at com.atlassian.bamboo.persistence.BambooSessionInViewFilter.doFilterInternal(BambooSessionInViewFilter.java:31)
      [INFO] [talledLocalContainer] 	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75)
      [INFO] [talledLocalContainer] 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      [INFO] [talledLocalContainer] 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      [INFO] [talledLocalContainer] 	at com.planetj.servlet.filter.compression.CompressingFilter.handleDoFilter(CompressingFilter.java:203)
      [INFO] [talledLocalContainer] 	at com.planetj.servlet.filter.compression.CompressingFilter.doFilter(CompressingFilter.java:193)
      [INFO] [talledLocalContainer] 	at com.atlassian.bamboo.filter.CompressingFilter.doFilter(CompressingFilter.java:71)
      [INFO] [talledLocalContainer] 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      [INFO] [talledLocalContainer] 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      [INFO] [talledLocalContainer] 	at com.atlassian.bamboo.filter.RequestCacheThreadLocalFilter.doFilter(RequestCacheThreadLocalFilter.java:31)
      [INFO] [talledLocalContainer] 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      [INFO] [talledLocalContainer] 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      [INFO] [talledLocalContainer] 	at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46)
      [INFO] [talledLocalContainer] 	at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:77)
      [INFO] [talledLocalContainer] 	at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:63)
      [INFO] [talledLocalContainer] 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      [INFO] [talledLocalContainer] 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      [INFO] [talledLocalContainer] 	at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:96)
      [INFO] [talledLocalContainer] 	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75)
      [INFO] [talledLocalContainer] 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      [INFO] [talledLocalContainer] 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      [INFO] [talledLocalContainer] 	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
      [INFO] [talledLocalContainer] 	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
      [INFO] [talledLocalContainer] 	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
      [INFO] [talledLocalContainer] 	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
      [INFO] [talledLocalContainer] 	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:567)
      [INFO] [talledLocalContainer] 	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
      [INFO] [talledLocalContainer] 	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
      [INFO] [talledLocalContainer] 	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:849)
      [INFO] [talledLocalContainer] 	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
      [INFO] [talledLocalContainer] 	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:454)
      [INFO] [talledLocalContainer] 	at java.lang.Thread.run(Thread.java:636)
      [INFO] [talledLocalContainer] Caused by: java.lang.IllegalArgumentException: object is not an instance of declaring class
      [INFO] [talledLocalContainer] 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      [INFO] [talledLocalContainer] 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
      [INFO] [talledLocalContainer] 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      [INFO] [talledLocalContainer] 	at java.lang.reflect.Method.invoke(Method.java:616)
      [INFO] [talledLocalContainer] 	at freemarker.ext.beans.BeansWrapper.invokeMethod(BeansWrapper.java:809)
      [INFO] [talledLocalContainer] 	at freemarker.ext.beans.BeanModel.invokeThroughDescriptor(BeanModel.java:251)
      [INFO] [talledLocalContainer] 	at freemarker.ext.beans.BeanModel.get(BeanModel.java:176)
      [INFO] [talledLocalContainer] 	... 178 more
      

      I suspect it has something to do with freemarker's bean reflection caching.

      Attachments

        Issue Links

          Activity

            People

              jdumay James Dumay
              8dca50346f27 Steve Skrla
              Votes:
              2 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: