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

Freemarker template error when viewing 'latest' builds

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Medium Medium
    • 1.0.2
    • 1.0.1
    • User Interface
    • None

      When you go from the homepage to the latest build for a plan, you go to an URL like this one:
      http://localhost:13000/browse/SCPPUB-CORE/latest

      This results in several freemarker template exceptions that occur when rendering the links in the navigation tabs. This error does not occur when you have a build number instead

      An example link location is:

       http://localhost:13000/browse/SCPPUB-CORE/Expression%20buildNumber%20is%20undefined%20on%20line%201,%20column%2063%20in%20URLTemplate.The%20problematic%20instruction:----------==%3E%20$%7BbuildNumber%7D%20%5Bon%20line%201,%20column%2061%20in%20URLTemplate%5D----------Java%20backtrace%20for%20programmers:----------freemarker.core.InvalidReferenceException:%20Expression%20buildNumber%20is%20undefined%20on%20line%201,%20column%2063%20in%20URLTemplate.at%20freemarker.core.TemplateObject.assertNonNull(TemplateObject.java:124)at%20freemarker.core.Expression.getStringValue(Expression.java:118)at%20freemarker.core.Expression.getStringValue(Expression.java:93)at%20freemarker.core.DollarVariable.accept(DollarVariable.java:76)at%20freemarker.core.Environment.visit(Environment.java:196)at%20freemarker.core.MixedContent.accept(MixedContent.java:92)at%20freemarker.core.Environment.visit(Environment.java:196)at%20freemarker.core.Environment.process(Environment.java:176)at%20freemarker.template.Template.process(Template.java:232)at%20com.atlassian.bamboo.ww2.BambooFreemarkerManager.renderText(BambooFreemarkerManager.java:153)at%20com.atlassian.bamboo.plugin.web.BambooWebFragmentHelper.renderVelocityFragment(BambooWebFragmentHelper.java:69)at%20com.atlassian.plugin.web.model.DefaultWebLink.getRenderedUrl(DefaultWebLink.java:31)at%20com.atlassian.bamboo.plugin.web.model.BambooWebLink.getDisplayableUrl(BambooWebLink.java:28)at%20sun.reflect.GeneratedMethodAccessor251.invoke(Unknown%20Source)at%20sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)at%20java.lang.reflect.Method.invoke(Method.java:585)at%20freemarker.ext.beans.BeansWrapper.invokeMethod(BeansWrapper.java:616)at%20freemarker.ext.beans.OverloadedMethodModel.exec(OverloadedMethodModel.java:111)at%20freemarker.core.MethodCall._getAsTemplateModel(MethodCall.java:93)at%20freemarker.core.Expression.getAsTemplateModel(Expression.java:89)at%20freemarker.core.Assignment.accept(Assignment.java:90)at%20freemarker.core.Environment.visit(Environment.java:196)at%20freemarker.core.MixedContent.accept(MixedContent.java:92)at%20freemarker.core.Environment.visit(Environment.java:196)at%20freemarker.core.IteratorBlock$Context.runLoop(IteratorBlock.java:160)at%20freemarker.core.Environment.visit(Environment.java:351)at%20freemarker.core.IteratorBlock.accept(IteratorBlock.java:95)at%20freemarker.core.Environment.visit(Environment.java:196)at%20freemarker.core.IteratorBlock$Context.runLoop(IteratorBlock.java:160)at%20freemarker.core.Environment.visit(Environment.java:351)at%20freemarker.core.IteratorBlock.accept(IteratorBlock.java:95)at%20freemarker.core.Environment.visit(Environment.java:196)at%20freemarker.core.MixedContent.accept(MixedContent.java:92)at%20freemarker.core.Environment.visit(Environment.java:196)at%20freemarker.core.Macro$Context.runMacro(Macro.java:164)at%20freemarker.core.Environment.visit(Environment.java:537)at%20freemarker.core.UnifiedCall.accept(UnifiedCall.java:128)at%20freemarker.core.Environment.visit(Environment.java:196)at%20freemarker.core.MixedContent.accept(MixedContent.java:92)at%20freemarker.core.Environment.visit(Environment.java:196)at%20freemarker.core.Environment.process(Environment.java:176)at%20freemarker.template.Template.process(Template.java:232)at%20com.opensymphony.webwork.views.freemarker.FreemarkerResult.doExecute(FreemarkerResult.java:130)at%20com.opensymphony.webwork.dispatcher.WebWorkResultSupport.execute(WebWorkResultSupport.java:101)at%20com.opensymphony.xwork.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:312)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:207)at%20com.opensymphony.xwork.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:137)at%20com.atlassian.bamboo.ww2.interceptors.BambooWorkflowInterceptor.doIntercept(BambooWorkflowInterceptor.java:33)at%20com.opensymphony.xwork.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:81)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.opensymphony.xwork.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:115)at%20com.atlassian.bamboo.ww2.interceptors.BambooValidationInterceptor.doIntercept(BambooValidationInterceptor.java:33)at%20com.opensymphony.xwork.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:81)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.opensymphony.webwork.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:171)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.atlassian.bamboo.ww2.interceptors.BasePermissionCheckInterceptor.intercept(BasePermissionCheckInterceptor.java:38)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.opensymphony.xwork.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:151)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.atlassian.bamboo.ww2.interceptors.PaginationAwareInterceptor.intercept(PaginationAwareInterceptor.java:68)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.atlassian.bamboo.ww2.interceptors.StatisticsAwareInterceptor.intercept(StatisticsAwareInterceptor.java:42)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.atlassian.bamboo.ww2.interceptors.ResultsListAwareInterceptor.intercept(ResultsListAwareInterceptor.java:43)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.atlassian.bamboo.ww2.interceptors.TestCaseAwareInterceptor.intercept(TestCaseAwareInterceptor.java:43)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.atlassian.bamboo.ww2.interceptors.BuildAwareInterceptor.intercept(BuildAwareInterceptor.java:40)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.opensymphony.xwork.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:100)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.opensymphony.xwork.DefaultActionProxy.execute(DefaultActionProxy.java:113)at%20com.opensymphony.webwork.dispatcher.DispatcherUtils.serviceAction(DispatcherUtils.java:233)at%20com.opensymphony.webwork.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:198)at%20org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)at%20org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)at%20com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:118)at%20com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:52)at%20org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)at%20org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)at%20com.opensymphony.webwork.dispatcher.ActionContextCleanUp.doFilter(ActionContextCleanUp.java:78)at%20org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)at%20org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)at%20org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:264)at%20org.acegisecurity.intercept.web.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:107)at%20org.acegisecurity.intercept.web.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:72)at%20org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)at%20org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:110)at%20org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)at%20org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)at%20org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)at%20com.atlassian.bamboo.filter.SeraphLoginFilter.doFilter(SeraphLoginFilter.java:56)at%20org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)at%20org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:191)at%20org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)at%20org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:148)at%20org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:90)at%20com.atlassian.bamboo.filter.BambooAcegiProxyFilter.doFilter(BambooAcegiProxyFilter.java:25)at%20org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)at%20org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)at%20com.atlassian.bamboo.filter.LicenseFilter.doFilter(LicenseFilter.java:71)at%20org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)at%20org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)at%20com.atlassian.johnson.filters.JohnsonFilter.doFilter(JohnsonFilter.java:91)at%20org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)at%20org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)at%20com.atlassian.seraph.filter.SecurityFilter.doFilter(SecurityFilter.java:182)at%20org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)at%20org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)at%20com.atlassian.seraph.filter.LoginFilter.doFilter(LoginFilter.java:177)at%20org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)at%20org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)at%20org.springframework.orm.hibernate.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:174)at%20com.atlassian.spring.filter.FlushingSpringSessionInViewFilter.doFilterInternal(FlushingSpringSessionInViewFilter.java:29)at%20org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:77)at%20org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)at%20org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)at%20com.atlassian.bamboo.filter.CompressingFilter.doFilter(CompressingFilter.java:69)at%20org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)at%20org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)at%20org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:672)at%20org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:463)at%20org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:398)at%20org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:301)at%20com.atlassian.bamboo.filter.UrlRewriteFilter.forwardTo(UrlRewriteFilter.java:282)at%20com.atlassian.bamboo.filter.UrlRewriteFilter.doFilter(UrlRewriteFilter.java:192)at%20org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)at%20org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)at%20org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)at%20org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)at%20org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)at%20org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)at%20org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)at%20org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)at%20org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)at%20org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)at%20org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)at%20org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)at%20org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)at%20java.lang.Thread.run(Thread.java:595)
      
      

      When a build number is supplied, the links work fine, e.g: http://localhost:13000/build/viewBuildResults.action?buildKey=SCPPUB-CORE&buildNumber=3

      Here's a typical stack trace:
      2007-03-08 11:11:01,351 ERROR [http-13000-Processor23] [BambooFreemarkerManager] Error revolving template
      Expression buildNumber is undefined on line 1, column 24 in URLTemplate.
      The problematic instruction:
      ----------
      ==> ${buildNumber} [on line 1, column 22 in URLTemplate]
      ----------

      Java backtrace for programmers:
      ----------
      freemarker.core.InvalidReferenceException: Expression buildNumber is undefined on line 1, column 24 in URLTemplate.
      at freemarker.core.TemplateObject.assertNonNull(TemplateObject.java:124)
      at freemarker.core.Expression.getStringValue(Expression.java:118)
      at freemarker.core.Expression.getStringValue(Expression.java:93)
      at freemarker.core.DollarVariable.accept(DollarVariable.java:76)
      at freemarker.core.Environment.visit(Environment.java:196)
      at freemarker.core.MixedContent.accept(MixedContent.java:92)
      at freemarker.core.Environment.visit(Environment.java:196)
      at freemarker.core.Environment.process(Environment.java:176)
      at freemarker.template.Template.process(Template.java:232)
      at com.atlassian.bamboo.ww2.BambooFreemarkerManager.renderText(BambooFreemarkerManager.java:153)
      at com.atlassian.bamboo.plugin.web.BambooWebFragmentHelper.renderVelocityFragment(BambooWebFragmentHelper.java:69)
      at com.atlassian.bamboo.ww2.BambooActionSupport.renderFreemarkerTemplate(BambooActionSupport.java:206)
      at sun.reflect.GeneratedMethodAccessor253.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:585)
      at freemarker.ext.beans.BeansWrapper.invokeMethod(BeansWrapper.java:616)
      at freemarker.ext.beans.SimpleMethodModel.exec(SimpleMethodModel.java:113)
      at freemarker.core.MethodCall._getAsTemplateModel(MethodCall.java:93)
      at freemarker.core.Expression.getAsTemplateModel(Expression.java:89)
      at freemarker.core.Expression.getStringValue(Expression.java:93)
      at freemarker.core.DollarVariable.accept(DollarVariable.java:76)
      at freemarker.core.Environment.visit(Environment.java:196)
      at freemarker.core.MixedContent.accept(MixedContent.java:92)
      at freemarker.core.Environment.visit(Environment.java:196)
      at freemarker.core.IteratorBlock$Context.runLoop(IteratorBlock.java:160)
      at freemarker.core.Environment.visit(Environment.java:351)
      at freemarker.core.IteratorBlock.accept(IteratorBlock.java:95)
      at freemarker.core.Environment.visit(Environment.java:196)
      at freemarker.core.IteratorBlock$Context.runLoop(IteratorBlock.java:160)
      at freemarker.core.Environment.visit(Environment.java:351)
      at freemarker.core.IteratorBlock.accept(IteratorBlock.java:95)
      at freemarker.core.Environment.visit(Environment.java:196)
      at freemarker.core.MixedContent.accept(MixedContent.java:92)
      at freemarker.core.Environment.visit(Environment.java:196)
      at freemarker.core.Macro$Context.runMacro(Macro.java:164)
      at freemarker.core.Environment.visit(Environment.java:537)
      at freemarker.core.UnifiedCall.accept(UnifiedCall.java:128)
      at freemarker.core.Environment.visit(Environment.java:196)
      at freemarker.core.MixedContent.accept(MixedContent.java:92)
      at freemarker.core.Environment.visit(Environment.java:196)
      at freemarker.core.Environment.process(Environment.java:176)
      at freemarker.template.Template.process(Template.java:232)
      at com.opensymphony.webwork.views.freemarker.FreemarkerResult.doExecute(FreemarkerResult.java:130)
      at com.opensymphony.webwork.dispatcher.WebWorkResultSupport.execute(WebWorkResultSupport.java:101)
      at com.opensymphony.xwork.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:312)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:207)
      at com.opensymphony.xwork.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:137)
      at com.atlassian.bamboo.ww2.interceptors.BambooWorkflowInterceptor.doIntercept(BambooWorkflowInterceptor.java:33)
      at com.opensymphony.xwork.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:81)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.opensymphony.xwork.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:115)
      at com.atlassian.bamboo.ww2.interceptors.BambooValidationInterceptor.doIntercept(BambooValidationInterceptor.java:33)
      at com.opensymphony.xwork.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:81)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.opensymphony.webwork.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:171)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.atlassian.bamboo.ww2.interceptors.BasePermissionCheckInterceptor.intercept(BasePermissionCheckInterceptor.java:38)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.opensymphony.xwork.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:151)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.atlassian.bamboo.ww2.interceptors.PaginationAwareInterceptor.intercept(PaginationAwareInterceptor.java:68)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.atlassian.bamboo.ww2.interceptors.StatisticsAwareInterceptor.intercept(StatisticsAwareInterceptor.java:42)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.atlassian.bamboo.ww2.interceptors.ResultsListAwareInterceptor.intercept(ResultsListAwareInterceptor.java:43)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.atlassian.bamboo.ww2.interceptors.TestCaseAwareInterceptor.intercept(TestCaseAwareInterceptor.java:43)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.atlassian.bamboo.ww2.interceptors.BuildAwareInterceptor.intercept(BuildAwareInterceptor.java:40)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.opensymphony.xwork.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:100)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
      at com.opensymphony.xwork.DefaultActionProxy.execute(DefaultActionProxy.java:113)
      at com.opensymphony.webwork.dispatcher.DispatcherUtils.serviceAction(DispatcherUtils.java:233)
      at com.opensymphony.webwork.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:198)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      at com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:118)
      at com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:52)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      at com.opensymphony.webwork.dispatcher.ActionContextCleanUp.doFilter(ActionContextCleanUp.java:78)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:264)
      at org.acegisecurity.intercept.web.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:107)
      at org.acegisecurity.intercept.web.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:72)
      at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
      at org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:110)
      at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
      at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
      at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
      at com.atlassian.bamboo.filter.SeraphLoginFilter.doFilter(SeraphLoginFilter.java:56)
      at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
      at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:191)
      at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
      at org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:148)
      at org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:90)
      at com.atlassian.bamboo.filter.BambooAcegiProxyFilter.doFilter(BambooAcegiProxyFilter.java:25)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      at com.atlassian.bamboo.filter.LicenseFilter.doFilter(LicenseFilter.java:71)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      at com.atlassian.johnson.filters.JohnsonFilter.doFilter(JohnsonFilter.java:91)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      at com.atlassian.seraph.filter.SecurityFilter.doFilter(SecurityFilter.java:182)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      at com.atlassian.seraph.filter.LoginFilter.doFilter(LoginFilter.java:177)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      at org.springframework.orm.hibernate.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:174)
      at com.atlassian.spring.filter.FlushingSpringSessionInViewFilter.doFilterInternal(FlushingSpringSessionInViewFilter.java:29)
      at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:77)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      at com.atlassian.bamboo.filter.CompressingFilter.doFilter(CompressingFilter.java:69)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:672)
      at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:463)
      at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:398)
      at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:301)
      at com.atlassian.bamboo.filter.UrlRewriteFilter.forwardTo(UrlRewriteFilter.java:282)
      at com.atlassian.bamboo.filter.UrlRewriteFilter.doFilter(UrlRewriteFilter.java:192)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
      at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
      at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
      at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
      at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
      at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
      at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
      at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
      at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
      at java.lang.Thread.run(Thread.java:595)

            [BAM-983] Freemarker template error when viewing 'latest' builds

            Monique Khairuliana (Inactive) made changes -
            Workflow Original: Bamboo Workflow 2016 v1 - Restricted [ 1442200 ] New: JAC Bug Workflow v3 [ 3383210 ]
            Status Original: Resolved [ 5 ] New: Closed [ 6 ]
            Owen made changes -
            Workflow Original: Bamboo Workflow 2016 v1 [ 1419107 ] New: Bamboo Workflow 2016 v1 - Restricted [ 1442200 ]
            Marek Went (Inactive) made changes -
            Workflow Original: Bamboo Workflow 2014 v2 [ 614030 ] New: Bamboo Workflow 2016 v1 [ 1419107 ]
            James Dumay made changes -
            Workflow Original: Bamboo Workflow 2014 [ 599130 ] New: Bamboo Workflow 2014 v2 [ 614030 ]
            James Dumay made changes -
            Workflow Original: Bamboo Workflow 2010 [ 202226 ] New: Bamboo Workflow 2014 [ 599130 ]
            MarkC made changes -
            Workflow Original: reviewflow [ 164926 ] New: Bamboo Workflow 2010 [ 202226 ]
            MarkC made changes -
            Workflow Original: jira [ 78115 ] New: reviewflow [ 164926 ]
            Andreas Knecht (Inactive) made changes -
            Description Original: When you go from the homepage to the latest build for a plan, you go to an URL like this one:
            http://localhost:13000/browse/SCPPUB-CORE/latest

            This results in several freemarker template exceptions that occur when rendering the links in the navigation tabs. This error does not occur when you have a build number instead

            An example link location is: http://localhost:13000/browse/SCPPUB-CORE/Expression%20buildNumber%20is%20undefined%20on%20line%201,%20column%2063%20in%20URLTemplate.The%20problematic%20instruction:----------==%3E%20$%7BbuildNumber%7D%20%5Bon%20line%201,%20column%2061%20in%20URLTemplate%5D----------Java%20backtrace%20for%20programmers:----------freemarker.core.InvalidReferenceException:%20Expression%20buildNumber%20is%20undefined%20on%20line%201,%20column%2063%20in%20URLTemplate.at%20freemarker.core.TemplateObject.assertNonNull(TemplateObject.java:124)at%20freemarker.core.Expression.getStringValue(Expression.java:118)at%20freemarker.core.Expression.getStringValue(Expression.java:93)at%20freemarker.core.DollarVariable.accept(DollarVariable.java:76)at%20freemarker.core.Environment.visit(Environment.java:196)at%20freemarker.core.MixedContent.accept(MixedContent.java:92)at%20freemarker.core.Environment.visit(Environment.java:196)at%20freemarker.core.Environment.process(Environment.java:176)at%20freemarker.template.Template.process(Template.java:232)at%20com.atlassian.bamboo.ww2.BambooFreemarkerManager.renderText(BambooFreemarkerManager.java:153)at%20com.atlassian.bamboo.plugin.web.BambooWebFragmentHelper.renderVelocityFragment(BambooWebFragmentHelper.java:69)at%20com.atlassian.plugin.web.model.DefaultWebLink.getRenderedUrl(DefaultWebLink.java:31)at%20com.atlassian.bamboo.plugin.web.model.BambooWebLink.getDisplayableUrl(BambooWebLink.java:28)at%20sun.reflect.GeneratedMethodAccessor251.invoke(Unknown%20Source)at%20sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)at%20java.lang.reflect.Method.invoke(Method.java:585)at%20freemarker.ext.beans.BeansWrapper.invokeMethod(BeansWrapper.java:616)at%20freemarker.ext.beans.OverloadedMethodModel.exec(OverloadedMethodModel.java:111)at%20freemarker.core.MethodCall._getAsTemplateModel(MethodCall.java:93)at%20freemarker.core.Expression.getAsTemplateModel(Expression.java:89)at%20freemarker.core.Assignment.accept(Assignment.java:90)at%20freemarker.core.Environment.visit(Environment.java:196)at%20freemarker.core.MixedContent.accept(MixedContent.java:92)at%20freemarker.core.Environment.visit(Environment.java:196)at%20freemarker.core.IteratorBlock$Context.runLoop(IteratorBlock.java:160)at%20freemarker.core.Environment.visit(Environment.java:351)at%20freemarker.core.IteratorBlock.accept(IteratorBlock.java:95)at%20freemarker.core.Environment.visit(Environment.java:196)at%20freemarker.core.IteratorBlock$Context.runLoop(IteratorBlock.java:160)at%20freemarker.core.Environment.visit(Environment.java:351)at%20freemarker.core.IteratorBlock.accept(IteratorBlock.java:95)at%20freemarker.core.Environment.visit(Environment.java:196)at%20freemarker.core.MixedContent.accept(MixedContent.java:92)at%20freemarker.core.Environment.visit(Environment.java:196)at%20freemarker.core.Macro$Context.runMacro(Macro.java:164)at%20freemarker.core.Environment.visit(Environment.java:537)at%20freemarker.core.UnifiedCall.accept(UnifiedCall.java:128)at%20freemarker.core.Environment.visit(Environment.java:196)at%20freemarker.core.MixedContent.accept(MixedContent.java:92)at%20freemarker.core.Environment.visit(Environment.java:196)at%20freemarker.core.Environment.process(Environment.java:176)at%20freemarker.template.Template.process(Template.java:232)at%20com.opensymphony.webwork.views.freemarker.FreemarkerResult.doExecute(FreemarkerResult.java:130)at%20com.opensymphony.webwork.dispatcher.WebWorkResultSupport.execute(WebWorkResultSupport.java:101)at%20com.opensymphony.xwork.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:312)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:207)at%20com.opensymphony.xwork.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:137)at%20com.atlassian.bamboo.ww2.interceptors.BambooWorkflowInterceptor.doIntercept(BambooWorkflowInterceptor.java:33)at%20com.opensymphony.xwork.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:81)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.opensymphony.xwork.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:115)at%20com.atlassian.bamboo.ww2.interceptors.BambooValidationInterceptor.doIntercept(BambooValidationInterceptor.java:33)at%20com.opensymphony.xwork.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:81)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.opensymphony.webwork.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:171)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.atlassian.bamboo.ww2.interceptors.BasePermissionCheckInterceptor.intercept(BasePermissionCheckInterceptor.java:38)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.opensymphony.xwork.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:151)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.atlassian.bamboo.ww2.interceptors.PaginationAwareInterceptor.intercept(PaginationAwareInterceptor.java:68)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.atlassian.bamboo.ww2.interceptors.StatisticsAwareInterceptor.intercept(StatisticsAwareInterceptor.java:42)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.atlassian.bamboo.ww2.interceptors.ResultsListAwareInterceptor.intercept(ResultsListAwareInterceptor.java:43)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.atlassian.bamboo.ww2.interceptors.TestCaseAwareInterceptor.intercept(TestCaseAwareInterceptor.java:43)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.atlassian.bamboo.ww2.interceptors.BuildAwareInterceptor.intercept(BuildAwareInterceptor.java:40)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.opensymphony.xwork.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:100)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.opensymphony.xwork.DefaultActionProxy.execute(DefaultActionProxy.java:113)at%20com.opensymphony.webwork.dispatcher.DispatcherUtils.serviceAction(DispatcherUtils.java:233)at%20com.opensymphony.webwork.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:198)at%20org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)at%20org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)at%20com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:118)at%20com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:52)at%20org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)at%20org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)at%20com.opensymphony.webwork.dispatcher.ActionContextCleanUp.doFilter(ActionContextCleanUp.java:78)at%20org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)at%20org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)at%20org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:264)at%20org.acegisecurity.intercept.web.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:107)at%20org.acegisecurity.intercept.web.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:72)at%20org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)at%20org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:110)at%20org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)at%20org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)at%20org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)at%20com.atlassian.bamboo.filter.SeraphLoginFilter.doFilter(SeraphLoginFilter.java:56)at%20org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)at%20org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:191)at%20org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)at%20org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:148)at%20org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:90)at%20com.atlassian.bamboo.filter.BambooAcegiProxyFilter.doFilter(BambooAcegiProxyFilter.java:25)at%20org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)at%20org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)at%20com.atlassian.bamboo.filter.LicenseFilter.doFilter(LicenseFilter.java:71)at%20org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)at%20org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)at%20com.atlassian.johnson.filters.JohnsonFilter.doFilter(JohnsonFilter.java:91)at%20org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)at%20org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)at%20com.atlassian.seraph.filter.SecurityFilter.doFilter(SecurityFilter.java:182)at%20org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)at%20org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)at%20com.atlassian.seraph.filter.LoginFilter.doFilter(LoginFilter.java:177)at%20org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)at%20org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)at%20org.springframework.orm.hibernate.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:174)at%20com.atlassian.spring.filter.FlushingSpringSessionInViewFilter.doFilterInternal(FlushingSpringSessionInViewFilter.java:29)at%20org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:77)at%20org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)at%20org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)at%20com.atlassian.bamboo.filter.CompressingFilter.doFilter(CompressingFilter.java:69)at%20org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)at%20org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)at%20org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:672)at%20org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:463)at%20org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:398)at%20org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:301)at%20com.atlassian.bamboo.filter.UrlRewriteFilter.forwardTo(UrlRewriteFilter.java:282)at%20com.atlassian.bamboo.filter.UrlRewriteFilter.doFilter(UrlRewriteFilter.java:192)at%20org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)at%20org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)at%20org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)at%20org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)at%20org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)at%20org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)at%20org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)at%20org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)at%20org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)at%20org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)at%20org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)at%20org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)at%20org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)at%20java.lang.Thread.run(Thread.java:595)

            When a build number is supplied, the links work fine, e.g: http://localhost:13000/build/viewBuildResults.action?buildKey=SCPPUB-CORE&buildNumber=3

            Here's a typical stack trace:
            2007-03-08 11:11:01,351 ERROR [http-13000-Processor23] [BambooFreemarkerManager] Error revolving template
            Expression buildNumber is undefined on line 1, column 24 in URLTemplate.
            The problematic instruction:
            ----------
            ==> ${buildNumber} [on line 1, column 22 in URLTemplate]
            ----------

            Java backtrace for programmers:
            ----------
            freemarker.core.InvalidReferenceException: Expression buildNumber is undefined on line 1, column 24 in URLTemplate.
                    at freemarker.core.TemplateObject.assertNonNull(TemplateObject.java:124)
                    at freemarker.core.Expression.getStringValue(Expression.java:118)
                    at freemarker.core.Expression.getStringValue(Expression.java:93)
                    at freemarker.core.DollarVariable.accept(DollarVariable.java:76)
                    at freemarker.core.Environment.visit(Environment.java:196)
                    at freemarker.core.MixedContent.accept(MixedContent.java:92)
                    at freemarker.core.Environment.visit(Environment.java:196)
                    at freemarker.core.Environment.process(Environment.java:176)
                    at freemarker.template.Template.process(Template.java:232)
                    at com.atlassian.bamboo.ww2.BambooFreemarkerManager.renderText(BambooFreemarkerManager.java:153)
                    at com.atlassian.bamboo.plugin.web.BambooWebFragmentHelper.renderVelocityFragment(BambooWebFragmentHelper.java:69)
                    at com.atlassian.bamboo.ww2.BambooActionSupport.renderFreemarkerTemplate(BambooActionSupport.java:206)
                    at sun.reflect.GeneratedMethodAccessor253.invoke(Unknown Source)
                    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                    at java.lang.reflect.Method.invoke(Method.java:585)
                    at freemarker.ext.beans.BeansWrapper.invokeMethod(BeansWrapper.java:616)
                    at freemarker.ext.beans.SimpleMethodModel.exec(SimpleMethodModel.java:113)
                    at freemarker.core.MethodCall._getAsTemplateModel(MethodCall.java:93)
                    at freemarker.core.Expression.getAsTemplateModel(Expression.java:89)
                    at freemarker.core.Expression.getStringValue(Expression.java:93)
                    at freemarker.core.DollarVariable.accept(DollarVariable.java:76)
                    at freemarker.core.Environment.visit(Environment.java:196)
                    at freemarker.core.MixedContent.accept(MixedContent.java:92)
                    at freemarker.core.Environment.visit(Environment.java:196)
                    at freemarker.core.IteratorBlock$Context.runLoop(IteratorBlock.java:160)
                    at freemarker.core.Environment.visit(Environment.java:351)
                    at freemarker.core.IteratorBlock.accept(IteratorBlock.java:95)
                    at freemarker.core.Environment.visit(Environment.java:196)
                    at freemarker.core.IteratorBlock$Context.runLoop(IteratorBlock.java:160)
                    at freemarker.core.Environment.visit(Environment.java:351)
                    at freemarker.core.IteratorBlock.accept(IteratorBlock.java:95)
                    at freemarker.core.Environment.visit(Environment.java:196)
                    at freemarker.core.MixedContent.accept(MixedContent.java:92)
                    at freemarker.core.Environment.visit(Environment.java:196)
                    at freemarker.core.Macro$Context.runMacro(Macro.java:164)
                    at freemarker.core.Environment.visit(Environment.java:537)
                    at freemarker.core.UnifiedCall.accept(UnifiedCall.java:128)
                    at freemarker.core.Environment.visit(Environment.java:196)
                    at freemarker.core.MixedContent.accept(MixedContent.java:92)
                    at freemarker.core.Environment.visit(Environment.java:196)
                    at freemarker.core.Environment.process(Environment.java:176)
                    at freemarker.template.Template.process(Template.java:232)
                    at com.opensymphony.webwork.views.freemarker.FreemarkerResult.doExecute(FreemarkerResult.java:130)
                    at com.opensymphony.webwork.dispatcher.WebWorkResultSupport.execute(WebWorkResultSupport.java:101)
                    at com.opensymphony.xwork.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:312)
                    at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:207)
                    at com.opensymphony.xwork.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:137)
                    at com.atlassian.bamboo.ww2.interceptors.BambooWorkflowInterceptor.doIntercept(BambooWorkflowInterceptor.java:33)
                    at com.opensymphony.xwork.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:81)
                    at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
                    at com.opensymphony.xwork.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:115)
                    at com.atlassian.bamboo.ww2.interceptors.BambooValidationInterceptor.doIntercept(BambooValidationInterceptor.java:33)
                    at com.opensymphony.xwork.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:81)
                    at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
                    at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
                    at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
                    at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
                    at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
                    at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
                    at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
                    at com.opensymphony.webwork.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:171)
                    at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
                    at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
                    at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
                    at com.atlassian.bamboo.ww2.interceptors.BasePermissionCheckInterceptor.intercept(BasePermissionCheckInterceptor.java:38)
                    at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
                    at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
                    at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
                    at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
                    at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
                    at com.opensymphony.xwork.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:151)
                    at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
                    at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
                    at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
                    at com.atlassian.bamboo.ww2.interceptors.PaginationAwareInterceptor.intercept(PaginationAwareInterceptor.java:68)
                    at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
                    at com.atlassian.bamboo.ww2.interceptors.StatisticsAwareInterceptor.intercept(StatisticsAwareInterceptor.java:42)
                    at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
                    at com.atlassian.bamboo.ww2.interceptors.ResultsListAwareInterceptor.intercept(ResultsListAwareInterceptor.java:43)
                    at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
                    at com.atlassian.bamboo.ww2.interceptors.TestCaseAwareInterceptor.intercept(TestCaseAwareInterceptor.java:43)
                    at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
                    at com.atlassian.bamboo.ww2.interceptors.BuildAwareInterceptor.intercept(BuildAwareInterceptor.java:40)
                    at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
                    at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
                    at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
                    at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
                    at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
                    at com.opensymphony.xwork.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:100)
                    at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
                    at com.opensymphony.xwork.DefaultActionProxy.execute(DefaultActionProxy.java:113)
                    at com.opensymphony.webwork.dispatcher.DispatcherUtils.serviceAction(DispatcherUtils.java:233)
                    at com.opensymphony.webwork.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:198)
                    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
                    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
                    at com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:118)
                    at com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:52)
                    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
                    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
                    at com.opensymphony.webwork.dispatcher.ActionContextCleanUp.doFilter(ActionContextCleanUp.java:78)
                    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
                    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
                    at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:264)
                    at org.acegisecurity.intercept.web.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:107)
                    at org.acegisecurity.intercept.web.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:72)
                    at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
                    at org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:110)
                    at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
                    at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
                    at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
                    at com.atlassian.bamboo.filter.SeraphLoginFilter.doFilter(SeraphLoginFilter.java:56)
                    at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
                    at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:191)
                    at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
                    at org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:148)
                    at org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:90)
                    at com.atlassian.bamboo.filter.BambooAcegiProxyFilter.doFilter(BambooAcegiProxyFilter.java:25)
                    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
                    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
                    at com.atlassian.bamboo.filter.LicenseFilter.doFilter(LicenseFilter.java:71)
                    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
                    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
                    at com.atlassian.johnson.filters.JohnsonFilter.doFilter(JohnsonFilter.java:91)
                    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
                    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
                    at com.atlassian.seraph.filter.SecurityFilter.doFilter(SecurityFilter.java:182)
                    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
                    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
                    at com.atlassian.seraph.filter.LoginFilter.doFilter(LoginFilter.java:177)
                    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
                    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
                    at org.springframework.orm.hibernate.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:174)
                    at com.atlassian.spring.filter.FlushingSpringSessionInViewFilter.doFilterInternal(FlushingSpringSessionInViewFilter.java:29)
                    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:77)
                    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
                    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
                    at com.atlassian.bamboo.filter.CompressingFilter.doFilter(CompressingFilter.java:69)
                    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
                    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
                    at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:672)
                    at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:463)
                    at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:398)
                    at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:301)
                    at com.atlassian.bamboo.filter.UrlRewriteFilter.forwardTo(UrlRewriteFilter.java:282)
                    at com.atlassian.bamboo.filter.UrlRewriteFilter.doFilter(UrlRewriteFilter.java:192)
                    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
                    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
                    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
                    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
                    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
                    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
                    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
                    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
                    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
                    at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
                    at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
                    at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
                    at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
                    at java.lang.Thread.run(Thread.java:595)
            New: When you go from the homepage to the latest build for a plan, you go to an URL like this one:
            http://localhost:13000/browse/SCPPUB-CORE/latest

            This results in several freemarker template exceptions that occur when rendering the links in the navigation tabs. This error does not occur when you have a build number instead

            An example link location is:
            {noformat} http://localhost:13000/browse/SCPPUB-CORE/Expression%20buildNumber%20is%20undefined%20on%20line%201,%20column%2063%20in%20URLTemplate.The%20problematic%20instruction:----------==%3E%20$%7BbuildNumber%7D%20%5Bon%20line%201,%20column%2061%20in%20URLTemplate%5D----------Java%20backtrace%20for%20programmers:----------freemarker.core.InvalidReferenceException:%20Expression%20buildNumber%20is%20undefined%20on%20line%201,%20column%2063%20in%20URLTemplate.at%20freemarker.core.TemplateObject.assertNonNull(TemplateObject.java:124)at%20freemarker.core.Expression.getStringValue(Expression.java:118)at%20freemarker.core.Expression.getStringValue(Expression.java:93)at%20freemarker.core.DollarVariable.accept(DollarVariable.java:76)at%20freemarker.core.Environment.visit(Environment.java:196)at%20freemarker.core.MixedContent.accept(MixedContent.java:92)at%20freemarker.core.Environment.visit(Environment.java:196)at%20freemarker.core.Environment.process(Environment.java:176)at%20freemarker.template.Template.process(Template.java:232)at%20com.atlassian.bamboo.ww2.BambooFreemarkerManager.renderText(BambooFreemarkerManager.java:153)at%20com.atlassian.bamboo.plugin.web.BambooWebFragmentHelper.renderVelocityFragment(BambooWebFragmentHelper.java:69)at%20com.atlassian.plugin.web.model.DefaultWebLink.getRenderedUrl(DefaultWebLink.java:31)at%20com.atlassian.bamboo.plugin.web.model.BambooWebLink.getDisplayableUrl(BambooWebLink.java:28)at%20sun.reflect.GeneratedMethodAccessor251.invoke(Unknown%20Source)at%20sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)at%20java.lang.reflect.Method.invoke(Method.java:585)at%20freemarker.ext.beans.BeansWrapper.invokeMethod(BeansWrapper.java:616)at%20freemarker.ext.beans.OverloadedMethodModel.exec(OverloadedMethodModel.java:111)at%20freemarker.core.MethodCall._getAsTemplateModel(MethodCall.java:93)at%20freemarker.core.Expression.getAsTemplateModel(Expression.java:89)at%20freemarker.core.Assignment.accept(Assignment.java:90)at%20freemarker.core.Environment.visit(Environment.java:196)at%20freemarker.core.MixedContent.accept(MixedContent.java:92)at%20freemarker.core.Environment.visit(Environment.java:196)at%20freemarker.core.IteratorBlock$Context.runLoop(IteratorBlock.java:160)at%20freemarker.core.Environment.visit(Environment.java:351)at%20freemarker.core.IteratorBlock.accept(IteratorBlock.java:95)at%20freemarker.core.Environment.visit(Environment.java:196)at%20freemarker.core.IteratorBlock$Context.runLoop(IteratorBlock.java:160)at%20freemarker.core.Environment.visit(Environment.java:351)at%20freemarker.core.IteratorBlock.accept(IteratorBlock.java:95)at%20freemarker.core.Environment.visit(Environment.java:196)at%20freemarker.core.MixedContent.accept(MixedContent.java:92)at%20freemarker.core.Environment.visit(Environment.java:196)at%20freemarker.core.Macro$Context.runMacro(Macro.java:164)at%20freemarker.core.Environment.visit(Environment.java:537)at%20freemarker.core.UnifiedCall.accept(UnifiedCall.java:128)at%20freemarker.core.Environment.visit(Environment.java:196)at%20freemarker.core.MixedContent.accept(MixedContent.java:92)at%20freemarker.core.Environment.visit(Environment.java:196)at%20freemarker.core.Environment.process(Environment.java:176)at%20freemarker.template.Template.process(Template.java:232)at%20com.opensymphony.webwork.views.freemarker.FreemarkerResult.doExecute(FreemarkerResult.java:130)at%20com.opensymphony.webwork.dispatcher.WebWorkResultSupport.execute(WebWorkResultSupport.java:101)at%20com.opensymphony.xwork.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:312)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:207)at%20com.opensymphony.xwork.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:137)at%20com.atlassian.bamboo.ww2.interceptors.BambooWorkflowInterceptor.doIntercept(BambooWorkflowInterceptor.java:33)at%20com.opensymphony.xwork.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:81)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.opensymphony.xwork.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:115)at%20com.atlassian.bamboo.ww2.interceptors.BambooValidationInterceptor.doIntercept(BambooValidationInterceptor.java:33)at%20com.opensymphony.xwork.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:81)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.opensymphony.webwork.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:171)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.atlassian.bamboo.ww2.interceptors.BasePermissionCheckInterceptor.intercept(BasePermissionCheckInterceptor.java:38)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.opensymphony.xwork.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:151)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.atlassian.bamboo.ww2.interceptors.PaginationAwareInterceptor.intercept(PaginationAwareInterceptor.java:68)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.atlassian.bamboo.ww2.interceptors.StatisticsAwareInterceptor.intercept(StatisticsAwareInterceptor.java:42)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.atlassian.bamboo.ww2.interceptors.ResultsListAwareInterceptor.intercept(ResultsListAwareInterceptor.java:43)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.atlassian.bamboo.ww2.interceptors.TestCaseAwareInterceptor.intercept(TestCaseAwareInterceptor.java:43)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.atlassian.bamboo.ww2.interceptors.BuildAwareInterceptor.intercept(BuildAwareInterceptor.java:40)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.opensymphony.xwork.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:100)at%20com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)at%20com.opensymphony.xwork.DefaultActionProxy.execute(DefaultActionProxy.java:113)at%20com.opensymphony.webwork.dispatcher.DispatcherUtils.serviceAction(DispatcherUtils.java:233)at%20com.opensymphony.webwork.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:198)at%20org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)at%20org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)at%20com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:118)at%20com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:52)at%20org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)at%20org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)at%20com.opensymphony.webwork.dispatcher.ActionContextCleanUp.doFilter(ActionContextCleanUp.java:78)at%20org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)at%20org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)at%20org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:264)at%20org.acegisecurity.intercept.web.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:107)at%20org.acegisecurity.intercept.web.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:72)at%20org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)at%20org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:110)at%20org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)at%20org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)at%20org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)at%20com.atlassian.bamboo.filter.SeraphLoginFilter.doFilter(SeraphLoginFilter.java:56)at%20org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)at%20org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:191)at%20org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)at%20org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:148)at%20org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:90)at%20com.atlassian.bamboo.filter.BambooAcegiProxyFilter.doFilter(BambooAcegiProxyFilter.java:25)at%20org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)at%20org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)at%20com.atlassian.bamboo.filter.LicenseFilter.doFilter(LicenseFilter.java:71)at%20org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)at%20org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)at%20com.atlassian.johnson.filters.JohnsonFilter.doFilter(JohnsonFilter.java:91)at%20org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)at%20org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)at%20com.atlassian.seraph.filter.SecurityFilter.doFilter(SecurityFilter.java:182)at%20org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)at%20org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)at%20com.atlassian.seraph.filter.LoginFilter.doFilter(LoginFilter.java:177)at%20org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)at%20org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)at%20org.springframework.orm.hibernate.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:174)at%20com.atlassian.spring.filter.FlushingSpringSessionInViewFilter.doFilterInternal(FlushingSpringSessionInViewFilter.java:29)at%20org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:77)at%20org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)at%20org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)at%20com.atlassian.bamboo.filter.CompressingFilter.doFilter(CompressingFilter.java:69)at%20org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)at%20org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)at%20org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:672)at%20org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:463)at%20org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:398)at%20org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:301)at%20com.atlassian.bamboo.filter.UrlRewriteFilter.forwardTo(UrlRewriteFilter.java:282)at%20com.atlassian.bamboo.filter.UrlRewriteFilter.doFilter(UrlRewriteFilter.java:192)at%20org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)at%20org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)at%20org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)at%20org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)at%20org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)at%20org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)at%20org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)at%20org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)at%20org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)at%20org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)at%20org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)at%20org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)at%20org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)at%20java.lang.Thread.run(Thread.java:595)

            {noformat}
            When a build number is supplied, the links work fine, e.g: http://localhost:13000/build/viewBuildResults.action?buildKey=SCPPUB-CORE&buildNumber=3

            Here's a typical stack trace:
            2007-03-08 11:11:01,351 ERROR [http-13000-Processor23] [BambooFreemarkerManager] Error revolving template
            Expression buildNumber is undefined on line 1, column 24 in URLTemplate.
            The problematic instruction:
            ----------
            ==> ${buildNumber} [on line 1, column 22 in URLTemplate]
            ----------

            Java backtrace for programmers:
            ----------
            freemarker.core.InvalidReferenceException: Expression buildNumber is undefined on line 1, column 24 in URLTemplate.
                    at freemarker.core.TemplateObject.assertNonNull(TemplateObject.java:124)
                    at freemarker.core.Expression.getStringValue(Expression.java:118)
                    at freemarker.core.Expression.getStringValue(Expression.java:93)
                    at freemarker.core.DollarVariable.accept(DollarVariable.java:76)
                    at freemarker.core.Environment.visit(Environment.java:196)
                    at freemarker.core.MixedContent.accept(MixedContent.java:92)
                    at freemarker.core.Environment.visit(Environment.java:196)
                    at freemarker.core.Environment.process(Environment.java:176)
                    at freemarker.template.Template.process(Template.java:232)
                    at com.atlassian.bamboo.ww2.BambooFreemarkerManager.renderText(BambooFreemarkerManager.java:153)
                    at com.atlassian.bamboo.plugin.web.BambooWebFragmentHelper.renderVelocityFragment(BambooWebFragmentHelper.java:69)
                    at com.atlassian.bamboo.ww2.BambooActionSupport.renderFreemarkerTemplate(BambooActionSupport.java:206)
                    at sun.reflect.GeneratedMethodAccessor253.invoke(Unknown Source)
                    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                    at java.lang.reflect.Method.invoke(Method.java:585)
                    at freemarker.ext.beans.BeansWrapper.invokeMethod(BeansWrapper.java:616)
                    at freemarker.ext.beans.SimpleMethodModel.exec(SimpleMethodModel.java:113)
                    at freemarker.core.MethodCall._getAsTemplateModel(MethodCall.java:93)
                    at freemarker.core.Expression.getAsTemplateModel(Expression.java:89)
                    at freemarker.core.Expression.getStringValue(Expression.java:93)
                    at freemarker.core.DollarVariable.accept(DollarVariable.java:76)
                    at freemarker.core.Environment.visit(Environment.java:196)
                    at freemarker.core.MixedContent.accept(MixedContent.java:92)
                    at freemarker.core.Environment.visit(Environment.java:196)
                    at freemarker.core.IteratorBlock$Context.runLoop(IteratorBlock.java:160)
                    at freemarker.core.Environment.visit(Environment.java:351)
                    at freemarker.core.IteratorBlock.accept(IteratorBlock.java:95)
                    at freemarker.core.Environment.visit(Environment.java:196)
                    at freemarker.core.IteratorBlock$Context.runLoop(IteratorBlock.java:160)
                    at freemarker.core.Environment.visit(Environment.java:351)
                    at freemarker.core.IteratorBlock.accept(IteratorBlock.java:95)
                    at freemarker.core.Environment.visit(Environment.java:196)
                    at freemarker.core.MixedContent.accept(MixedContent.java:92)
                    at freemarker.core.Environment.visit(Environment.java:196)
                    at freemarker.core.Macro$Context.runMacro(Macro.java:164)
                    at freemarker.core.Environment.visit(Environment.java:537)
                    at freemarker.core.UnifiedCall.accept(UnifiedCall.java:128)
                    at freemarker.core.Environment.visit(Environment.java:196)
                    at freemarker.core.MixedContent.accept(MixedContent.java:92)
                    at freemarker.core.Environment.visit(Environment.java:196)
                    at freemarker.core.Environment.process(Environment.java:176)
                    at freemarker.template.Template.process(Template.java:232)
                    at com.opensymphony.webwork.views.freemarker.FreemarkerResult.doExecute(FreemarkerResult.java:130)
                    at com.opensymphony.webwork.dispatcher.WebWorkResultSupport.execute(WebWorkResultSupport.java:101)
                    at com.opensymphony.xwork.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:312)
                    at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:207)
                    at com.opensymphony.xwork.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:137)
                    at com.atlassian.bamboo.ww2.interceptors.BambooWorkflowInterceptor.doIntercept(BambooWorkflowInterceptor.java:33)
                    at com.opensymphony.xwork.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:81)
                    at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
                    at com.opensymphony.xwork.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:115)
                    at com.atlassian.bamboo.ww2.interceptors.BambooValidationInterceptor.doIntercept(BambooValidationInterceptor.java:33)
                    at com.opensymphony.xwork.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:81)
                    at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
                    at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
                    at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
                    at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
                    at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
                    at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
                    at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
                    at com.opensymphony.webwork.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:171)
                    at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
                    at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
                    at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
                    at com.atlassian.bamboo.ww2.interceptors.BasePermissionCheckInterceptor.intercept(BasePermissionCheckInterceptor.java:38)
                    at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
                    at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
                    at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
                    at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
                    at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
                    at com.opensymphony.xwork.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:151)
                    at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
                    at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
                    at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
                    at com.atlassian.bamboo.ww2.interceptors.PaginationAwareInterceptor.intercept(PaginationAwareInterceptor.java:68)
                    at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
                    at com.atlassian.bamboo.ww2.interceptors.StatisticsAwareInterceptor.intercept(StatisticsAwareInterceptor.java:42)
                    at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
                    at com.atlassian.bamboo.ww2.interceptors.ResultsListAwareInterceptor.intercept(ResultsListAwareInterceptor.java:43)
                    at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
                    at com.atlassian.bamboo.ww2.interceptors.TestCaseAwareInterceptor.intercept(TestCaseAwareInterceptor.java:43)
                    at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
                    at com.atlassian.bamboo.ww2.interceptors.BuildAwareInterceptor.intercept(BuildAwareInterceptor.java:40)
                    at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
                    at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
                    at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
                    at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
                    at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
                    at com.opensymphony.xwork.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:100)
                    at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
                    at com.opensymphony.xwork.DefaultActionProxy.execute(DefaultActionProxy.java:113)
                    at com.opensymphony.webwork.dispatcher.DispatcherUtils.serviceAction(DispatcherUtils.java:233)
                    at com.opensymphony.webwork.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:198)
                    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
                    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
                    at com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:118)
                    at com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:52)
                    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
                    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
                    at com.opensymphony.webwork.dispatcher.ActionContextCleanUp.doFilter(ActionContextCleanUp.java:78)
                    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
                    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
                    at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:264)
                    at org.acegisecurity.intercept.web.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:107)
                    at org.acegisecurity.intercept.web.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:72)
                    at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
                    at org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:110)
                    at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
                    at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
                    at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
                    at com.atlassian.bamboo.filter.SeraphLoginFilter.doFilter(SeraphLoginFilter.java:56)
                    at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
                    at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:191)
                    at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
                    at org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:148)
                    at org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:90)
                    at com.atlassian.bamboo.filter.BambooAcegiProxyFilter.doFilter(BambooAcegiProxyFilter.java:25)
                    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
                    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
                    at com.atlassian.bamboo.filter.LicenseFilter.doFilter(LicenseFilter.java:71)
                    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
                    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
                    at com.atlassian.johnson.filters.JohnsonFilter.doFilter(JohnsonFilter.java:91)
                    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
                    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
                    at com.atlassian.seraph.filter.SecurityFilter.doFilter(SecurityFilter.java:182)
                    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
                    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
                    at com.atlassian.seraph.filter.LoginFilter.doFilter(LoginFilter.java:177)
                    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
                    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
                    at org.springframework.orm.hibernate.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:174)
                    at com.atlassian.spring.filter.FlushingSpringSessionInViewFilter.doFilterInternal(FlushingSpringSessionInViewFilter.java:29)
                    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:77)
                    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
                    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
                    at com.atlassian.bamboo.filter.CompressingFilter.doFilter(CompressingFilter.java:69)
                    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
                    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
                    at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:672)
                    at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:463)
                    at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:398)
                    at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:301)
                    at com.atlassian.bamboo.filter.UrlRewriteFilter.forwardTo(UrlRewriteFilter.java:282)
                    at com.atlassian.bamboo.filter.UrlRewriteFilter.doFilter(UrlRewriteFilter.java:192)
                    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
                    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
                    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
                    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
                    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
                    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
                    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
                    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
                    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
                    at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
                    at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
                    at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
                    at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
                    at java.lang.Thread.run(Thread.java:595)
            edwin made changes -
            Resolution New: Fixed [ 1 ]
            Status Original: In Progress [ 3 ] New: Resolved [ 5 ]
            Ben Hale made changes -
            Link New: This issue is duplicated by BAM-1006 [ BAM-1006 ]

              edwin@atlassian.com edwin
              643740dce84d Robert Watkins
              Affected customers:
              0 This affects my team
              Watchers:
              0 Start watching this issue

                Created:
                Updated:
                Resolved: