Uploaded image for project: 'Velocity'
  1. Velocity
  2. VELOCITY-873

Subtraction without spaces results in parse error

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Duplicate
    • None
    • None
    • None
    • None
    • VTL in user macro in Atlassian Confluence 5.9.4

    Description

      This works as expected:

      ## @noparams
      
      #set ($list = ["a", "b", "c"])
      #set ($num = $list.size()+1)
      <p>$num</p>
      

      However, changing it to subtraction results in a ParseErrorException:

      ## @noparams
      
      #set ($list = ["a", "b", "c"])
      #set ($num = $list.size()-1)
      <p>$num</p>
      

      The error message given in atlassian-confluence.log:

      org.apache.velocity.exception.ParseErrorException: Encountered "-1" at getRenderedContent[line 4, column 26]
      Was expecting one of:
          <RPAREN> ...
          <WHITESPACE> ...
          "-" ...
          "+" ...
          "*" ...
          "/" ...
          "%" ...
          <LOGICAL_AND> ...
          <LOGICAL_OR> ...
          <LOGICAL_LT> ...
          <LOGICAL_LE> ...
          <LOGICAL_GT> ...
          <LOGICAL_GE> ...
          <LOGICAL_EQUALS> ...
          <LOGICAL_NOT_EQUALS> ...
          <DOT> ...
      
              at org.apache.velocity.runtime.RuntimeInstance.evaluate(RuntimeInstance.java:1202)
              at org.apache.velocity.runtime.RuntimeInstance.evaluate(RuntimeInstance.java:1164)
              at org.apache.velocity.app.VelocityEngine.evaluate(VelocityEngine.java:219)
              at com.atlassian.confluence.util.velocity.VelocityUtils.writeRenderedContent(VelocityUtils.java:148)
              at com.atlassian.confluence.util.velocity.VelocityUtils.getRenderedContent(VelocityUtils.java:130)
              at com.atlassian.confluence.util.velocity.VelocityUtils.getRenderedContent(VelocityUtils.java:117)
              at com.atlassian.confluence.util.velocity.VelocityUtils.getRenderedContent(VelocityUtils.java:113)
              at com.atlassian.confluence.macro.GenericVelocityMacro.execute(GenericVelocityMacro.java:101)
      ~~~snipped~~~
      

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              alex35 Alexander Rosenberg
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: