Tom White created VELOCITY-948:
----------------------------------

             Summary: Number ranges created as ASTIntegerRange$IntegerRange in 
2.1 rather than java.util.ArrayList
                 Key: VELOCITY-948
                 URL: https://issues.apache.org/jira/browse/VELOCITY-948
             Project: Velocity
          Issue Type: Bug
    Affects Versions: 2.1
            Reporter: Tom White


Hello!

I am having issues upgrading from 2.0 to 2.1 with existing templates. The 
minimal below example illustrates the change in behaviour:
{code:java}
<html>
<body>

#set ($colwidth = [0..50]) 
${colwidth.class.name}   
#set ($colwidth[$10] = 500)

</body>
</html>
{code}
 

With 2.0:

this prints:

<html><body>java.util.ArrayList</body></html>

and throws no errors.

 

With 2.1:

this prints:

org.apache.velocity.runtime.parser.node.ASTIntegerRange$IntegerRange</body></html>

and throws an UnsupportedMethodException at the set line.

 

I have tried all kinds of config variables from the docs in a unit test. 

The 2.1 documentation states:
 * The VTL RangeOperator [ 1..10 ] and ObjectArray ["a","b"] are 
{{java.util.ArrayList}} objects when placed in the context or passed to 
methods. Therefore, your methods that are designed to accept arrays created in 
the template should be written with this in mind.

[https://velocity.apache.org/engine/2.1/developer-guide.html] 

 

 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@velocity.apache.org
For additional commands, e-mail: dev-h...@velocity.apache.org

Reply via email to