<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<id>tag:old.nabble.com,2006:forum-305</id>
	<title>Nabble - Velocity</title>
	<updated>2009-12-23T04:34:29Z</updated>
	<link rel="self" type="application/atom+xml" href="http://old.nabble.com/Velocity-f305.xml" />
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Velocity-f305.html" />
	<subtitle type="html">Velocity is a Java-based template engine. Velocity home is &lt;a href=&quot;http://jakarta.apache.org/velocity/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;here&lt;/a&gt;.</subtitle>
	
<entry>
	<id>tag:old.nabble.com,2006:post-26901491</id>
	<title>[jira] Commented: (VELOCITY-750) org.apache.velocity.runtime.RuntimeInstance initialization is not ThreadSafe</title>
	<published>2009-12-23T04:34:29Z</published>
	<updated>2009-12-23T04:34:29Z</updated>
	<author>
		<name>Velocity - Dev mailing list-2</name>
	</author>
	<content type="html">&lt;br&gt;&amp;nbsp; &amp;nbsp; [ &lt;a href=&quot;https://issues.apache.org/jira/browse/VELOCITY-750?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&amp;focusedCommentId=12794035#action_12794035&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://issues.apache.org/jira/browse/VELOCITY-750?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&amp;focusedCommentId=12794035#action_12794035&lt;/a&gt;&amp;nbsp;] 
&lt;br&gt;&lt;br&gt;Jarkko Viinamäki commented on VELOCITY-750:
&lt;br&gt;-------------------------------------------
&lt;br&gt;&lt;br&gt;If I'm not mistaken, code in RuntimeInstance class seems to have some sort of broken &amp;quot;Double Checked Locking&amp;quot; implementation. See &lt;a href=&quot;http://jeremymanson.blogspot.com/2007/05/double-checked-locking-and-problem-with.html&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://jeremymanson.blogspot.com/2007/05/double-checked-locking-and-problem-with.html&lt;/a&gt;&lt;br&gt;&lt;br&gt;Proper synchronization will introduce a performance penalty for all page renderings.
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; org.apache.velocity.runtime.RuntimeInstance initialization is not ThreadSafe
&lt;br&gt;&amp;gt; ----------------------------------------------------------------------------
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Key: VELOCITY-750
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; URL: &lt;a href=&quot;https://issues.apache.org/jira/browse/VELOCITY-750&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://issues.apache.org/jira/browse/VELOCITY-750&lt;/a&gt;&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Project: Velocity
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Issue Type: Bug
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Components: Engine
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;Affects Versions: 1.6.2, 1.6.x
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Environment: Vista, Java 1.6
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Reporter: Cenek Rauscher
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Fix For: 1.6.x
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Two threads call Velocity.evaluate() method.
&lt;br&gt;&amp;gt; Call RuntimeInstance.parse() and requireInitialization() method.
&lt;br&gt;&amp;gt; One thread trying make initialization, set &amp;quot;initializing&amp;quot; to true and the other thread does not wait until initialization is done and go on.
&lt;br&gt;&amp;gt; At next line Parser parser = (Parser) parserPool.get() is NullPointerException thrown.
&lt;/div&gt;&lt;br&gt;-- 
&lt;br&gt;This message is automatically generated by JIRA.
&lt;br&gt;-
&lt;br&gt;You can reply to this email to add a comment to the issue online.
&lt;br&gt;&lt;br&gt;&lt;br&gt;---------------------------------------------------------------------
&lt;br&gt;To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26901491&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev-unsubscribe@...&lt;/a&gt;
&lt;br&gt;For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26901491&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev-help@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Velocity---Dev-f346.html&quot; embed=&quot;fixTarget[346]&quot; target=&quot;_top&quot; &gt;Velocity - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/-jira--Created%3A-%28VELOCITY-750%29-org.apache.velocity.runtime.RuntimeInstance-initialization-is-not-ThreadSafe-tp26900741p26901491.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26900741</id>
	<title>[jira] Created: (VELOCITY-750) org.apache.velocity.runtime.RuntimeInstance initialization is not ThreadSafe</title>
	<published>2009-12-23T03:13:29Z</published>
	<updated>2009-12-23T03:13:29Z</updated>
	<author>
		<name>Velocity - Dev mailing list-2</name>
	</author>
	<content type="html">org.apache.velocity.runtime.RuntimeInstance initialization is not ThreadSafe
&lt;br&gt;----------------------------------------------------------------------------
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Key: VELOCITY-750
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;URL: &lt;a href=&quot;https://issues.apache.org/jira/browse/VELOCITY-750&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://issues.apache.org/jira/browse/VELOCITY-750&lt;/a&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Project: Velocity
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Issue Type: Bug
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Components: Engine
&lt;br&gt;&amp;nbsp; &amp;nbsp; Affects Versions: 1.6.2, 1.6.x
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Environment: Vista, Java 1.6
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Reporter: Cenek Rauscher
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Fix For: 1.6.x
&lt;br&gt;&lt;br&gt;&lt;br&gt;Two threads call Velocity.evaluate() method.
&lt;br&gt;Call RuntimeInstance.parse() and requireInitialization() method.
&lt;br&gt;One thread trying make initialization, set &amp;quot;initializing&amp;quot; to true and the other thread does not wait until initialization is done and go on.
&lt;br&gt;At next line Parser parser = (Parser) parserPool.get() is NullPointerException thrown.
&lt;br&gt;&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;This message is automatically generated by JIRA.
&lt;br&gt;-
&lt;br&gt;You can reply to this email to add a comment to the issue online.
&lt;br&gt;&lt;br&gt;&lt;br&gt;---------------------------------------------------------------------
&lt;br&gt;To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26900741&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev-unsubscribe@...&lt;/a&gt;
&lt;br&gt;For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26900741&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev-help@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Velocity---Dev-f346.html&quot; embed=&quot;fixTarget[346]&quot; target=&quot;_top&quot; &gt;Velocity - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/-jira--Created%3A-%28VELOCITY-750%29-org.apache.velocity.runtime.RuntimeInstance-initialization-is-not-ThreadSafe-tp26900741p26900741.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26900399</id>
	<title>[jira] Updated: (VELOCITY-742) Easily Add/Remove/Replace Directives Without Cracking Open Velocity Jar</title>
	<published>2009-12-23T02:29:29Z</published>
	<updated>2009-12-23T02:29:29Z</updated>
	<author>
		<name>Velocity - Dev mailing list-2</name>
	</author>
	<content type="html">&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;[ &lt;a href=&quot;https://issues.apache.org/jira/browse/VELOCITY-742?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://issues.apache.org/jira/browse/VELOCITY-742?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel&lt;/a&gt;&amp;nbsp;]
&lt;br&gt;&lt;br&gt;Jarkko Viinamäki updated VELOCITY-742:
&lt;br&gt;--------------------------------------
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; Attachment: velocity-742.patch
&lt;br&gt;&lt;br&gt;OK. This patch now provides two new public methods in VelocityEngine and Velocity classes:
&lt;br&gt;&lt;br&gt;removeDirective(String name)
&lt;br&gt;loadDirective(String className)
&lt;br&gt;&lt;br&gt;Note that all parser instances use the same set of directives so it's not possible to disable e.g. #include directive for certain page rendering but still keep it active for other possibly concurrent page renderings. Note also that you need to first call init on Velocity or VelocityEngine before you start removing directives (otherwise the autoinit &amp;quot;overwrites&amp;quot; the removal operation). See the Velocity742TestCase.
&lt;br&gt;&lt;br&gt;Note! After applying the patch, you need to run &amp;quot;ant parser test&amp;quot; in order to update the generated Parser.java and other related classes.
&lt;br&gt;&lt;br&gt;--
&lt;br&gt;&lt;br&gt;I also noticed that there was a hidden bug in the code: RuntimeInstance keeps a map of directives in variable called runtimeDirectives. When a new parser was created that variable was passed to the Parser but the parser made a HashMap copy of the runtimeDirectives (this was one of the speed improvements since it slows things down if many parsers hammer the same synchronized map).
&lt;br&gt;&lt;br&gt;Therefore when addDirective, removeDirective etc. were called in RuntimeInstance, they had no effect since all the created parsers still had a copy of the old runtimeDirectives map.
&lt;br&gt;&lt;br&gt;I fixed it so that Parser instances do not have a copy of the directives map at all. Instead, they redirect e.g. getDirective and isDirective calls to RuntimeInstance which uses unsynchronized HashMap for the lookups. When the runtimeDirectives map is modified (new directive is added or an old one is deleted), a new HashMap is created as a copy and the reference is updated so that subsequent calls to RuntimeInstance.getDirective use the newly created map (Copy-on-Write pattern I guess).
&lt;br&gt;&lt;br&gt;Nathan &amp; others, please take a look at this when you have time and check if I did something really silly.
&lt;br&gt;&lt;br&gt;Merry Christmas! :)
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Easily Add/Remove/Replace Directives Without Cracking Open Velocity Jar
&lt;br&gt;&amp;gt; -----------------------------------------------------------------------
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Key: VELOCITY-742
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; URL: &lt;a href=&quot;https://issues.apache.org/jira/browse/VELOCITY-742&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://issues.apache.org/jira/browse/VELOCITY-742&lt;/a&gt;&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Project: Velocity
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Issue Type: New Feature
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Components: Engine
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;Affects Versions: 1.6.2
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Reporter: Tim White
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Priority: Minor
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Attachments: velocity-742.patch
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; There are two use cases that I have for this issue:
&lt;br&gt;&amp;gt; 1) We need to turn off #include in order to parse .html files that include SSI directives: &amp;nbsp;&amp;lt;!--#include virtual=&amp;quot;&amp;quot;--&amp;gt; &amp;nbsp;(we always use #parse in our world, so no loss for #include going away)
&lt;br&gt;&amp;gt; 2) We need to supply our own version of #parse that contains the development hooks that I described in a different issue.
&lt;br&gt;&amp;gt; Right now, the only crisp way to do is is to crack open the velocity .jar and make these changes, which is very risky, because future developers may upgrade to new versions of Velocity and not realize that there are customizations and/or not understand how to remake them....not to mention in a shared-classpath environment, we don't always have control over which copy of the Velocity .jar we're using.
&lt;br&gt;&amp;gt; Ideally, there would be config options like this:
&lt;br&gt;&amp;gt; directive_remove (&amp;quot;#parse&amp;quot;, &amp;quot;#include&amp;quot;)
&lt;br&gt;&amp;gt; directive_add (&amp;quot;#parse&amp;quot;, &amp;quot;com.qwest.velocity.directives.Parse&amp;quot;)
&lt;br&gt;&amp;gt; Thanks!
&lt;br&gt;&amp;gt; Tim
&lt;/div&gt;&lt;br&gt;-- 
&lt;br&gt;This message is automatically generated by JIRA.
&lt;br&gt;-
&lt;br&gt;You can reply to this email to add a comment to the issue online.
&lt;br&gt;&lt;br&gt;&lt;br&gt;---------------------------------------------------------------------
&lt;br&gt;To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26900399&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev-unsubscribe@...&lt;/a&gt;
&lt;br&gt;For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26900399&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev-help@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Velocity---Dev-f346.html&quot; embed=&quot;fixTarget[346]&quot; target=&quot;_top&quot; &gt;Velocity - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/-jira--Created%3A-%28VELOCITY-742%29-Easily-Add-Remove-Replace-Directives-Without-Cracking-Open-Velocity-Jar-tp26232752p26900399.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26887935</id>
	<title>[jira] Updated: (VELOCITY-727) ArrayIndexOutOfBoundsException when #define without parameter</title>
	<published>2009-12-22T04:58:29Z</published>
	<updated>2009-12-22T04:58:29Z</updated>
	<author>
		<name>Velocity - Dev mailing list-2</name>
	</author>
	<content type="html">&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;[ &lt;a href=&quot;https://issues.apache.org/jira/browse/VELOCITY-727?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://issues.apache.org/jira/browse/VELOCITY-727?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel&lt;/a&gt;&amp;nbsp;]
&lt;br&gt;&lt;br&gt;Jarkko Viinamäki updated VELOCITY-727:
&lt;br&gt;--------------------------------------
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; Attachment: velocity-727.patch
&lt;br&gt;&lt;br&gt;This should fix it.
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; ArrayIndexOutOfBoundsException when #define without parameter
&lt;br&gt;&amp;gt; -------------------------------------------------------------
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Key: VELOCITY-727
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; URL: &lt;a href=&quot;https://issues.apache.org/jira/browse/VELOCITY-727&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://issues.apache.org/jira/browse/VELOCITY-727&lt;/a&gt;&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Project: Velocity
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Issue Type: Bug
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Components: Engine
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;Affects Versions: 1.6.2
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Reporter: Siri C.
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Attachments: velocity-727.patch
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; {code}
&lt;br&gt;&amp;gt; #define()
&lt;br&gt;&amp;gt; Hello 
&lt;br&gt;&amp;gt; #end
&lt;br&gt;&amp;gt; {code}
&lt;br&gt;&amp;gt; Caused by: java.lang.ArrayIndexOutOfBoundsException: 1
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.SimpleNode.jjtGetChild(SimpleNode.java:177)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.directive.Define.init(Define.java:96)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTDirective.init(ASTDirective.java:125)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.SimpleNode.init(SimpleNode.java:303)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.RuntimeInstance.render(RuntimeInstance.java:1254)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.RuntimeInstance.evaluate(RuntimeInstance.java
&lt;/div&gt;&lt;br&gt;-- 
&lt;br&gt;This message is automatically generated by JIRA.
&lt;br&gt;-
&lt;br&gt;You can reply to this email to add a comment to the issue online.
&lt;br&gt;&lt;br&gt;&lt;br&gt;---------------------------------------------------------------------
&lt;br&gt;To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26887935&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev-unsubscribe@...&lt;/a&gt;
&lt;br&gt;For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26887935&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev-help@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Velocity---Dev-f346.html&quot; embed=&quot;fixTarget[346]&quot; target=&quot;_top&quot; &gt;Velocity - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/-jira--Created%3A-%28VELOCITY-727%29-ArrayIndexOutOfBoundsException-when--define-without-parameter-tp24143130p26887935.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26887634</id>
	<title>[jira] Updated: (VELOCITY-728) NullPointerException occurs when #parse() without parameter</title>
	<published>2009-12-22T04:34:29Z</published>
	<updated>2009-12-22T04:34:29Z</updated>
	<author>
		<name>Velocity - Dev mailing list-2</name>
	</author>
	<content type="html">&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;[ &lt;a href=&quot;https://issues.apache.org/jira/browse/VELOCITY-728?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://issues.apache.org/jira/browse/VELOCITY-728?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel&lt;/a&gt;&amp;nbsp;]
&lt;br&gt;&lt;br&gt;Jarkko Viinamäki updated VELOCITY-728:
&lt;br&gt;--------------------------------------
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; Attachment: velocity-728.patch
&lt;br&gt;&lt;br&gt;This should fix it. 
&lt;br&gt;&lt;br&gt;If #parse doesn't get an argument, a VelocityException is thrown with information where the problem occurs.
&lt;br&gt;&lt;br&gt;The previous code didn't obviously work and instead of throwing exceptions it just wrote things to Velocity log. This same problem is related to other directives as well (no checking whether we actually got the argument or not and no exception in case of error).
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; NullPointerException occurs when #parse() without parameter
&lt;br&gt;&amp;gt; -----------------------------------------------------------
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Key: VELOCITY-728
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; URL: &lt;a href=&quot;https://issues.apache.org/jira/browse/VELOCITY-728&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://issues.apache.org/jira/browse/VELOCITY-728&lt;/a&gt;&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Project: Velocity
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Issue Type: Bug
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Components: Engine
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;Affects Versions: 1.6.2
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Reporter: Siri C.
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Attachments: velocity-728.patch
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Execute this template code
&lt;br&gt;&amp;gt; #parse()
&lt;br&gt;&amp;gt; The exception occurs
&lt;br&gt;&amp;gt; Caused by: java.lang.NullPointerException
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.SimpleNode.jjtGetChild(SimpleNode.java:177)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.directive.Parse.render(Parse.java:131)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:175)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:336)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.RuntimeInstance.render(RuntimeInstance.java:1277)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.RuntimeInstance.evaluate(RuntimeInstance.java:1216)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.app.VelocityEngine.evaluate(VelocityEngine.java:294)
&lt;br&gt;&amp;gt; 	... 6 more
&lt;/div&gt;&lt;br&gt;-- 
&lt;br&gt;This message is automatically generated by JIRA.
&lt;br&gt;-
&lt;br&gt;You can reply to this email to add a comment to the issue online.
&lt;br&gt;&lt;br&gt;&lt;br&gt;---------------------------------------------------------------------
&lt;br&gt;To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26887634&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev-unsubscribe@...&lt;/a&gt;
&lt;br&gt;For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26887634&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev-help@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Velocity---Dev-f346.html&quot; embed=&quot;fixTarget[346]&quot; target=&quot;_top&quot; &gt;Velocity - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/-jira--Created%3A-%28VELOCITY-728%29-NullPointerException-occurs-when--parse%28%29-without-parameter-tp24144548p26887634.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26846415</id>
	<title>Previous URL</title>
	<published>2009-12-18T09:17:42Z</published>
	<updated>2009-12-18T09:17:42Z</updated>
	<author>
		<name>Speed Commerce, Inc.</name>
	</author>
	<content type="html">Is there a way to determine the previous url (the referrer) in Velocity?&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Velocity---User-f347.html&quot; embed=&quot;fixTarget[347]&quot; target=&quot;_top&quot; &gt;Velocity - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Previous-URL-tp26846415p26846415.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26840499</id>
	<title>Re: Previous URL</title>
	<published>2009-12-18T00:30:09Z</published>
	<updated>2009-12-18T00:30:09Z</updated>
	<author>
		<name>Antonio Petrelli-3</name>
	</author>
	<content type="html">2009/12/18 Speed Commerce, Inc. &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26840499&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;bruce.brown@...&lt;/a&gt;&amp;gt;:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Is there a way to determine the previous url (the referrer) in Velocity?
&lt;br&gt;&lt;br&gt;You can make a request-scoped tool that has a setRequest method:
&lt;br&gt;public void setRequest(HttpServletRequest request)
&lt;br&gt;and then you can determine the referrer.
&lt;br&gt;&lt;br&gt;Ciao
&lt;br&gt;Antonio
&lt;br&gt;&lt;br&gt;---------------------------------------------------------------------
&lt;br&gt;To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26840499&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;user-unsubscribe@...&lt;/a&gt;
&lt;br&gt;For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26840499&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;user-help@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Velocity---User-f347.html&quot; embed=&quot;fixTarget[347]&quot; target=&quot;_top&quot; &gt;Velocity - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Previous-URL-tp26840017p26840499.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26840017</id>
	<title>Previous URL</title>
	<published>2009-12-17T23:20:37Z</published>
	<updated>2009-12-17T23:20:37Z</updated>
	<author>
		<name>Speed Commerce, Inc.</name>
	</author>
	<content type="html">Is there a way to determine the previous url (the referrer) in Velocity?&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Velocity---User-f347.html&quot; embed=&quot;fixTarget[347]&quot; target=&quot;_top&quot; &gt;Velocity - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Previous-URL-tp26840017p26840017.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26839286</id>
	<title>Re: Macros in macros</title>
	<published>2009-12-17T21:10:35Z</published>
	<updated>2009-12-17T21:10:35Z</updated>
	<author>
		<name>Nathan Bubna</name>
	</author>
	<content type="html">Yeah, macros actually got a lot more expensive (especially in memory)
&lt;br&gt;in 1.5. &amp;nbsp;1.6.2 resolved most of those issues. :)
&lt;br&gt;&lt;br&gt;On Thu, Dec 17, 2009 at 5:27 PM, Jude Robinson
&lt;br&gt;&amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26839286&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dotcode+velocity@...&lt;/a&gt;&amp;gt; wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; Expensive in cycles or memory?  And in what version?  Much
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; optimization has been done, and i've yet to notice trouble in 1.6+ (at
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; least compared to previous).
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Sorry, should have stated the version: 1.6.2
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;lt;pokes around a bit /&amp;gt;
&lt;br&gt;&amp;gt; &amp;lt;sigh /&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Scratch that: 1.5
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Sorry. Ignore. No problems here.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;lt;trots off to upgrade /&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; ---------------------------------------------------------------------
&lt;br&gt;&amp;gt; To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26839286&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;user-unsubscribe@...&lt;/a&gt;
&lt;br&gt;&amp;gt; For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26839286&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;user-help@...&lt;/a&gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;/div&gt;&lt;br&gt;---------------------------------------------------------------------
&lt;br&gt;To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26839286&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;user-unsubscribe@...&lt;/a&gt;
&lt;br&gt;For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26839286&amp;i=4&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;user-help@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Velocity---User-f347.html&quot; embed=&quot;fixTarget[347]&quot; target=&quot;_top&quot; &gt;Velocity - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Macros-in-macros-tp26834501p26839286.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26837347</id>
	<title>Re: Macros in macros</title>
	<published>2009-12-17T16:27:39Z</published>
	<updated>2009-12-17T16:27:39Z</updated>
	<author>
		<name>Jude Robinson</name>
	</author>
	<content type="html">&amp;gt;&amp;gt; Expensive in cycles or memory?  And in what version?  Much
&lt;br&gt;&amp;gt;&amp;gt; optimization has been done, and i've yet to notice trouble in 1.6+ (at
&lt;br&gt;&amp;gt;&amp;gt; least compared to previous).
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Sorry, should have stated the version: 1.6.2
&lt;br&gt;&lt;br&gt;&amp;lt;pokes around a bit /&amp;gt;
&lt;br&gt;&amp;lt;sigh /&amp;gt;
&lt;br&gt;&lt;br&gt;Scratch that: 1.5
&lt;br&gt;&lt;br&gt;Sorry. Ignore. No problems here.
&lt;br&gt;&lt;br&gt;&amp;lt;trots off to upgrade /&amp;gt;
&lt;br&gt;&lt;br&gt;---------------------------------------------------------------------
&lt;br&gt;To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26837347&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;user-unsubscribe@...&lt;/a&gt;
&lt;br&gt;For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26837347&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;user-help@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Velocity---User-f347.html&quot; embed=&quot;fixTarget[347]&quot; target=&quot;_top&quot; &gt;Velocity - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Macros-in-macros-tp26834501p26837347.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26837314</id>
	<title>Re: Macros in macros</title>
	<published>2009-12-17T16:22:27Z</published>
	<updated>2009-12-17T16:22:27Z</updated>
	<author>
		<name>Jude Robinson</name>
	</author>
	<content type="html">&amp;gt; Expensive in cycles or memory?  And in what version?  Much
&lt;br&gt;&amp;gt; optimization has been done, and i've yet to notice trouble in 1.6+ (at
&lt;br&gt;&amp;gt; least compared to previous).
&lt;br&gt;&lt;br&gt;Sorry, should have stated the version: 1.6.2
&lt;br&gt;&lt;br&gt;In terms of cycles or memory: cycles *I guess* … I've simply noticed
&lt;br&gt;that when using apache bench on a page consisting of a few calls to a
&lt;br&gt;macro that references other macros - when said references to macros
&lt;br&gt;are replaced with the code contained in those macros the average
&lt;br&gt;response time drops significantly.
&lt;br&gt;&lt;br&gt;Be gentle with me … I'm just a simple clientsider …
&lt;br&gt;&lt;br&gt;---------------------------------------------------------------------
&lt;br&gt;To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26837314&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;user-unsubscribe@...&lt;/a&gt;
&lt;br&gt;For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26837314&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;user-help@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Velocity---User-f347.html&quot; embed=&quot;fixTarget[347]&quot; target=&quot;_top&quot; &gt;Velocity - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Macros-in-macros-tp26834501p26837314.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26836978</id>
	<title>Re: Macros in macros</title>
	<published>2009-12-17T15:43:52Z</published>
	<updated>2009-12-17T15:43:52Z</updated>
	<author>
		<name>Nathan Bubna</name>
	</author>
	<content type="html">Expensive in cycles or memory? &amp;nbsp;And in what version? &amp;nbsp;Much
&lt;br&gt;optimization has been done, and i've yet to notice trouble in 1.6+ (at
&lt;br&gt;least compared to previous).
&lt;br&gt;&lt;br&gt;On Thu, Dec 17, 2009 at 1:31 PM, Jude Robinson
&lt;br&gt;&amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26836978&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dotcode+velocity@...&lt;/a&gt;&amp;gt; wrote:
&lt;br&gt;&amp;gt; Hi all - a concise question about VTL performance: referencing macros
&lt;br&gt;&amp;gt; from within macros seems to be very expensive - do you know why this
&lt;br&gt;&amp;gt; is?
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; ---------------------------------------------------------------------
&lt;br&gt;&amp;gt; To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26836978&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;user-unsubscribe@...&lt;/a&gt;
&lt;br&gt;&amp;gt; For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26836978&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;user-help@...&lt;/a&gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&lt;br&gt;---------------------------------------------------------------------
&lt;br&gt;To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26836978&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;user-unsubscribe@...&lt;/a&gt;
&lt;br&gt;For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26836978&amp;i=4&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;user-help@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Velocity---User-f347.html&quot; embed=&quot;fixTarget[347]&quot; target=&quot;_top&quot; &gt;Velocity - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Macros-in-macros-tp26834501p26836978.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26834501</id>
	<title>Macros in macros</title>
	<published>2009-12-17T12:31:04Z</published>
	<updated>2009-12-17T12:31:04Z</updated>
	<author>
		<name>Jude Robinson</name>
	</author>
	<content type="html">Hi all - a concise question about VTL performance: referencing macros
&lt;br&gt;from within macros seems to be very expensive - do you know why this
&lt;br&gt;is?
&lt;br&gt;&lt;br&gt;---------------------------------------------------------------------
&lt;br&gt;To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26834501&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;user-unsubscribe@...&lt;/a&gt;
&lt;br&gt;For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26834501&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;user-help@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Velocity---User-f347.html&quot; embed=&quot;fixTarget[347]&quot; target=&quot;_top&quot; &gt;Velocity - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Macros-in-macros-tp26834501p26834501.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26828297</id>
	<title>[jira] Commented: (VELOCITY-749) ReferenceInsertionEventHandler called &quot;to often&quot;/need more configuration settings</title>
	<published>2009-12-17T05:53:18Z</published>
	<updated>2009-12-17T05:53:18Z</updated>
	<author>
		<name>Velocity - Dev mailing list-2</name>
	</author>
	<content type="html">&lt;br&gt;&amp;nbsp; &amp;nbsp; [ &lt;a href=&quot;https://issues.apache.org/jira/browse/VELOCITY-749?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&amp;focusedCommentId=12791929#action_12791929&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://issues.apache.org/jira/browse/VELOCITY-749?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&amp;focusedCommentId=12791929#action_12791929&lt;/a&gt;&amp;nbsp;] 
&lt;br&gt;&lt;br&gt;Marco Rothe commented on VELOCITY-749:
&lt;br&gt;--------------------------------------
&lt;br&gt;&lt;br&gt;Sorry, my browser did'nt show me your example when I leave my comment :-/
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; ReferenceInsertionEventHandler called &amp;quot;to often&amp;quot;/need more configuration settings
&lt;br&gt;&amp;gt; ---------------------------------------------------------------------------------
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Key: VELOCITY-749
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; URL: &lt;a href=&quot;https://issues.apache.org/jira/browse/VELOCITY-749&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://issues.apache.org/jira/browse/VELOCITY-749&lt;/a&gt;&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Project: Velocity
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Issue Type: Bug
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;Affects Versions: 1.6.2
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Reporter: Marco Rothe
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Priority: Minor
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Fix For: 1.6.x, 1.7
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I use the EscapeXmlReference (ReferenceInsertionEventHandler implementation) in our projects to produce valid XHTML.
&lt;br&gt;&amp;gt; But I works not as expected in some situations:
&lt;br&gt;&amp;gt; Given the reference $test as 'Me &amp; Co. Ltd' (for example from context) will output as 
&lt;br&gt;&amp;gt; Me &amp;amp; Co. Ltd 
&lt;br&gt;&amp;gt; correctly after the EscapeXmlReference.
&lt;br&gt;&amp;gt; But if we enrich the $test reference with some other string before output (#set($test = &amp;quot;* $test *&amp;quot;)) we got 
&lt;br&gt;&amp;gt; * Me &amp;amp;amp; Co. Ltd * &amp;nbsp;
&lt;br&gt;&amp;gt; and not &amp;nbsp;* Me &amp;amp; Co. Ltd * as output!
&lt;br&gt;&amp;gt; This is because the EscapeReference handler was called two times. First on the (internal) set directive (Me &amp; Co. Ltd -&amp;gt; Me &amp;amp; Co. Ltd), second on the real output of $test to the stream (* Me &amp;amp; Co. Ltd *-&amp;gt; &amp;nbsp;* Me &amp;amp;amp; Co. Ltd *). 
&lt;br&gt;&amp;gt; The javadoc of ReferenceInsertionEventHandler says &amp;quot;Reference 'Stream insertion' event handler. &amp;nbsp;Called with object &amp;nbsp;that will be inserted into stream via value.toString().&amp;quot; 
&lt;br&gt;&amp;gt; &amp;quot;inserted &amp;nbsp;into stream&amp;quot; means to me &amp;nbsp;into the real output stream of the template merge, not into internal substreams. So I believe it's a bug or a least an unexpected behaviour because it produce unpredictable results on string operations.
&lt;br&gt;&amp;gt; So the ReferenceInsertionEventHandler needs the possibility to know if the current insertation is an internal or an real output insertation to be able to react on situations as descripted above.
&lt;/div&gt;&lt;br&gt;-- 
&lt;br&gt;This message is automatically generated by JIRA.
&lt;br&gt;-
&lt;br&gt;You can reply to this email to add a comment to the issue online.
&lt;br&gt;&lt;br&gt;&lt;br&gt;---------------------------------------------------------------------
&lt;br&gt;To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26828297&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev-unsubscribe@...&lt;/a&gt;
&lt;br&gt;For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26828297&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev-help@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Velocity---Dev-f346.html&quot; embed=&quot;fixTarget[346]&quot; target=&quot;_top&quot; &gt;Velocity - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/-jira--Created%3A-%28VELOCITY-749%29-ReferenceInsertionEventHandler-called-%22to-often%22-need-more-configuration-settings-tp26826491p26828297.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26827814</id>
	<title>[jira] Commented: (VELOCITY-749) ReferenceInsertionEventHandler called &quot;to often&quot;/need more configuration settings</title>
	<published>2009-12-17T05:14:18Z</published>
	<updated>2009-12-17T05:14:18Z</updated>
	<author>
		<name>Velocity - Dev mailing list-2</name>
	</author>
	<content type="html">&lt;br&gt;&amp;nbsp; &amp;nbsp; [ &lt;a href=&quot;https://issues.apache.org/jira/browse/VELOCITY-749?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&amp;focusedCommentId=12791912#action_12791912&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://issues.apache.org/jira/browse/VELOCITY-749?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&amp;focusedCommentId=12791912#action_12791912&lt;/a&gt;&amp;nbsp;] 
&lt;br&gt;&lt;br&gt;Marco Rothe commented on VELOCITY-749:
&lt;br&gt;--------------------------------------
&lt;br&gt;&lt;br&gt;Hmm, I can't find anything about escaping references on the wiki! The current behaviour of the EscapeXmlReference handler is nearly useless if there is no way to distinct between internal and real output insertations. Did you know a way to do that with 'sophisticated filtering' ? I would like to see an example or get an hint.
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; ReferenceInsertionEventHandler called &amp;quot;to often&amp;quot;/need more configuration settings
&lt;br&gt;&amp;gt; ---------------------------------------------------------------------------------
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Key: VELOCITY-749
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; URL: &lt;a href=&quot;https://issues.apache.org/jira/browse/VELOCITY-749&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://issues.apache.org/jira/browse/VELOCITY-749&lt;/a&gt;&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Project: Velocity
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Issue Type: Bug
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;Affects Versions: 1.6.2
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Reporter: Marco Rothe
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Priority: Minor
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Fix For: 1.6.x, 1.7
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I use the EscapeXmlReference (ReferenceInsertionEventHandler implementation) in our projects to produce valid XHTML.
&lt;br&gt;&amp;gt; But I works not as expected in some situations:
&lt;br&gt;&amp;gt; Given the reference $test as 'Me &amp; Co. Ltd' (for example from context) will output as 
&lt;br&gt;&amp;gt; Me &amp;amp; Co. Ltd 
&lt;br&gt;&amp;gt; correctly after the EscapeXmlReference.
&lt;br&gt;&amp;gt; But if we enrich the $test reference with some other string before output (#set($test = &amp;quot;* $test *&amp;quot;)) we got 
&lt;br&gt;&amp;gt; * Me &amp;amp;amp; Co. Ltd * &amp;nbsp;
&lt;br&gt;&amp;gt; and not &amp;nbsp;* Me &amp;amp; Co. Ltd * as output!
&lt;br&gt;&amp;gt; This is because the EscapeReference handler was called two times. First on the (internal) set directive (Me &amp; Co. Ltd -&amp;gt; Me &amp;amp; Co. Ltd), second on the real output of $test to the stream (* Me &amp;amp; Co. Ltd *-&amp;gt; &amp;nbsp;* Me &amp;amp;amp; Co. Ltd *). 
&lt;br&gt;&amp;gt; The javadoc of ReferenceInsertionEventHandler says &amp;quot;Reference 'Stream insertion' event handler. &amp;nbsp;Called with object &amp;nbsp;that will be inserted into stream via value.toString().&amp;quot; 
&lt;br&gt;&amp;gt; &amp;quot;inserted &amp;nbsp;into stream&amp;quot; means to me &amp;nbsp;into the real output stream of the template merge, not into internal substreams. So I believe it's a bug or a least an unexpected behaviour because it produce unpredictable results on string operations.
&lt;br&gt;&amp;gt; So the ReferenceInsertionEventHandler needs the possibility to know if the current insertation is an internal or an real output insertation to be able to react on situations as descripted above.
&lt;/div&gt;&lt;br&gt;-- 
&lt;br&gt;This message is automatically generated by JIRA.
&lt;br&gt;-
&lt;br&gt;You can reply to this email to add a comment to the issue online.
&lt;br&gt;&lt;br&gt;&lt;br&gt;---------------------------------------------------------------------
&lt;br&gt;To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26827814&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev-unsubscribe@...&lt;/a&gt;
&lt;br&gt;For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26827814&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev-help@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Velocity---Dev-f346.html&quot; embed=&quot;fixTarget[346]&quot; target=&quot;_top&quot; &gt;Velocity - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/-jira--Created%3A-%28VELOCITY-749%29-ReferenceInsertionEventHandler-called-%22to-often%22-need-more-configuration-settings-tp26826491p26827814.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26827290</id>
	<title>[jira] Resolved: (VELOCITY-749) ReferenceInsertionEventHandler called &quot;to often&quot;/need more configuration settings</title>
	<published>2009-12-17T04:26:18Z</published>
	<updated>2009-12-17T04:26:18Z</updated>
	<author>
		<name>Velocity - Dev mailing list-2</name>
	</author>
	<content type="html">&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;[ &lt;a href=&quot;https://issues.apache.org/jira/browse/VELOCITY-749?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://issues.apache.org/jira/browse/VELOCITY-749?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel&lt;/a&gt;&amp;nbsp;]
&lt;br&gt;&lt;br&gt;Claude Brisson resolved VELOCITY-749.
&lt;br&gt;-------------------------------------
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; Resolution: Won't Fix
&lt;br&gt;&lt;br&gt;Sophisticated filtering behaviours can be proposed on the wiki, but shouldn't be included in the engine, as use cases are too complex and too different one from another
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; ReferenceInsertionEventHandler called &amp;quot;to often&amp;quot;/need more configuration settings
&lt;br&gt;&amp;gt; ---------------------------------------------------------------------------------
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Key: VELOCITY-749
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; URL: &lt;a href=&quot;https://issues.apache.org/jira/browse/VELOCITY-749&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://issues.apache.org/jira/browse/VELOCITY-749&lt;/a&gt;&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Project: Velocity
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Issue Type: Bug
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;Affects Versions: 1.6.2
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Reporter: Marco Rothe
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Priority: Minor
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Fix For: 1.6.x, 1.7
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I use the EscapeXmlReference (ReferenceInsertionEventHandler implementation) in our projects to produce valid XHTML.
&lt;br&gt;&amp;gt; But I works not as expected in some situations:
&lt;br&gt;&amp;gt; Given the reference $test as 'Me &amp; Co. Ltd' (for example from context) will output as 
&lt;br&gt;&amp;gt; Me &amp;amp; Co. Ltd 
&lt;br&gt;&amp;gt; correctly after the EscapeXmlReference.
&lt;br&gt;&amp;gt; But if we enrich the $test reference with some other string before output (#set($test = &amp;quot;* $test *&amp;quot;)) we got 
&lt;br&gt;&amp;gt; * Me &amp;amp;amp; Co. Ltd * &amp;nbsp;
&lt;br&gt;&amp;gt; and not &amp;nbsp;* Me &amp;amp; Co. Ltd * as output!
&lt;br&gt;&amp;gt; This is because the EscapeReference handler was called two times. First on the (internal) set directive (Me &amp; Co. Ltd -&amp;gt; Me &amp;amp; Co. Ltd), second on the real output of $test to the stream (* Me &amp;amp; Co. Ltd *-&amp;gt; &amp;nbsp;* Me &amp;amp;amp; Co. Ltd *). 
&lt;br&gt;&amp;gt; The javadoc of ReferenceInsertionEventHandler says &amp;quot;Reference 'Stream insertion' event handler. &amp;nbsp;Called with object &amp;nbsp;that will be inserted into stream via value.toString().&amp;quot; 
&lt;br&gt;&amp;gt; &amp;quot;inserted &amp;nbsp;into stream&amp;quot; means to me &amp;nbsp;into the real output stream of the template merge, not into internal substreams. So I believe it's a bug or a least an unexpected behaviour because it produce unpredictable results on string operations.
&lt;br&gt;&amp;gt; So the ReferenceInsertionEventHandler needs the possibility to know if the current insertation is an internal or an real output insertation to be able to react on situations as descripted above.
&lt;/div&gt;&lt;br&gt;-- 
&lt;br&gt;This message is automatically generated by JIRA.
&lt;br&gt;-
&lt;br&gt;You can reply to this email to add a comment to the issue online.
&lt;br&gt;&lt;br&gt;&lt;br&gt;---------------------------------------------------------------------
&lt;br&gt;To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26827290&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev-unsubscribe@...&lt;/a&gt;
&lt;br&gt;For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26827290&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev-help@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Velocity---Dev-f346.html&quot; embed=&quot;fixTarget[346]&quot; target=&quot;_top&quot; &gt;Velocity - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/-jira--Created%3A-%28VELOCITY-749%29-ReferenceInsertionEventHandler-called-%22to-often%22-need-more-configuration-settings-tp26826491p26827290.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26827269</id>
	<title>[jira] Commented: (VELOCITY-749) ReferenceInsertionEventHandler called &quot;to often&quot;/need more configuration settings</title>
	<published>2009-12-17T04:24:18Z</published>
	<updated>2009-12-17T04:24:18Z</updated>
	<author>
		<name>Velocity - Dev mailing list-2</name>
	</author>
	<content type="html">&lt;br&gt;&amp;nbsp; &amp;nbsp; [ &lt;a href=&quot;https://issues.apache.org/jira/browse/VELOCITY-749?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&amp;focusedCommentId=12791897#action_12791897&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://issues.apache.org/jira/browse/VELOCITY-749?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&amp;focusedCommentId=12791897#action_12791897&lt;/a&gt;&amp;nbsp;] 
&lt;br&gt;&lt;br&gt;Claude Brisson commented on VELOCITY-749:
&lt;br&gt;-----------------------------------------
&lt;br&gt;&lt;br&gt;It's too complex to try to configure it, because the frontier between an internal and a real output insertion is very difficult.
&lt;br&gt;&lt;br&gt;If you want to control precisely when escaping occurs and when it doesn't, you better inherit EscapeXmlReference in a class of yours.
&lt;br&gt;&lt;br&gt;A quite handy way of handling this, that I often use, is giving prefixes to reference names. For instance, you can have a filter that only escapes references whose name begins by 'xml'.
&lt;br&gt;&lt;br&gt;public class MyXmlEscape extends EscapeXmlReference
&lt;br&gt;{
&lt;br&gt;&amp;nbsp; &amp;nbsp; public Object referenceInsert( String reference, Object value &amp;nbsp;) {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if (value == null)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; return null;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if (!value instanceof String || !reference.startsWith(&amp;quot;xml&amp;quot;))
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; // do not escape
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; return value;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; else
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; // escape
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; return super.referenceInsert(reference, value);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&amp;nbsp; &amp;nbsp; }
&lt;br&gt;}
&lt;br&gt;&lt;br&gt;That way, you can write :
&lt;br&gt;&lt;br&gt;#set( $test = 'Me &amp; Co. Ltd' )
&lt;br&gt;#set( $xmltest = &amp;quot; * $test * &amp;quot;)
&lt;br&gt;$xmltest
&lt;br&gt;&lt;br&gt;and this will exhibit the expected behaviour.
&lt;br&gt;&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; ReferenceInsertionEventHandler called &amp;quot;to often&amp;quot;/need more configuration settings
&lt;br&gt;&amp;gt; ---------------------------------------------------------------------------------
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Key: VELOCITY-749
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; URL: &lt;a href=&quot;https://issues.apache.org/jira/browse/VELOCITY-749&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://issues.apache.org/jira/browse/VELOCITY-749&lt;/a&gt;&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Project: Velocity
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Issue Type: Bug
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;Affects Versions: 1.6.2
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Reporter: Marco Rothe
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Priority: Minor
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Fix For: 1.6.x, 1.7
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I use the EscapeXmlReference (ReferenceInsertionEventHandler implementation) in our projects to produce valid XHTML.
&lt;br&gt;&amp;gt; But I works not as expected in some situations:
&lt;br&gt;&amp;gt; Given the reference $test as 'Me &amp; Co. Ltd' (for example from context) will output as 
&lt;br&gt;&amp;gt; Me &amp;amp; Co. Ltd 
&lt;br&gt;&amp;gt; correctly after the EscapeXmlReference.
&lt;br&gt;&amp;gt; But if we enrich the $test reference with some other string before output (#set($test = &amp;quot;* $test *&amp;quot;)) we got 
&lt;br&gt;&amp;gt; * Me &amp;amp;amp; Co. Ltd * &amp;nbsp;
&lt;br&gt;&amp;gt; and not &amp;nbsp;* Me &amp;amp; Co. Ltd * as output!
&lt;br&gt;&amp;gt; This is because the EscapeReference handler was called two times. First on the (internal) set directive (Me &amp; Co. Ltd -&amp;gt; Me &amp;amp; Co. Ltd), second on the real output of $test to the stream (* Me &amp;amp; Co. Ltd *-&amp;gt; &amp;nbsp;* Me &amp;amp;amp; Co. Ltd *). 
&lt;br&gt;&amp;gt; The javadoc of ReferenceInsertionEventHandler says &amp;quot;Reference 'Stream insertion' event handler. &amp;nbsp;Called with object &amp;nbsp;that will be inserted into stream via value.toString().&amp;quot; 
&lt;br&gt;&amp;gt; &amp;quot;inserted &amp;nbsp;into stream&amp;quot; means to me &amp;nbsp;into the real output stream of the template merge, not into internal substreams. So I believe it's a bug or a least an unexpected behaviour because it produce unpredictable results on string operations.
&lt;br&gt;&amp;gt; So the ReferenceInsertionEventHandler needs the possibility to know if the current insertation is an internal or an real output insertation to be able to react on situations as descripted above.
&lt;/div&gt;&lt;br&gt;-- 
&lt;br&gt;This message is automatically generated by JIRA.
&lt;br&gt;-
&lt;br&gt;You can reply to this email to add a comment to the issue online.
&lt;br&gt;&lt;br&gt;&lt;br&gt;---------------------------------------------------------------------
&lt;br&gt;To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26827269&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev-unsubscribe@...&lt;/a&gt;
&lt;br&gt;For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26827269&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev-help@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Velocity---Dev-f346.html&quot; embed=&quot;fixTarget[346]&quot; target=&quot;_top&quot; &gt;Velocity - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/-jira--Created%3A-%28VELOCITY-749%29-ReferenceInsertionEventHandler-called-%22to-often%22-need-more-configuration-settings-tp26826491p26827269.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26827270</id>
	<title>[jira] Issue Comment Edited: (VELOCITY-749) ReferenceInsertionEventHandler called &quot;to often&quot;/need more configuration settings</title>
	<published>2009-12-17T04:24:18Z</published>
	<updated>2009-12-17T04:24:18Z</updated>
	<author>
		<name>Velocity - Dev mailing list-2</name>
	</author>
	<content type="html">&lt;br&gt;&amp;nbsp; &amp;nbsp; [ &lt;a href=&quot;https://issues.apache.org/jira/browse/VELOCITY-749?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&amp;focusedCommentId=12791897#action_12791897&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://issues.apache.org/jira/browse/VELOCITY-749?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&amp;focusedCommentId=12791897#action_12791897&lt;/a&gt;&amp;nbsp;] 
&lt;br&gt;&lt;br&gt;Claude Brisson edited comment on VELOCITY-749 at 12/17/09 12:22 PM:
&lt;br&gt;--------------------------------------------------------------------
&lt;br&gt;&lt;br&gt;It's too complex to try to configure it, because the frontier between an internal and a real output insertion is very difficult to define.
&lt;br&gt;&lt;br&gt;If you want to control precisely when escaping occurs and when it doesn't, you better inherit EscapeXmlReference in a class of yours.
&lt;br&gt;&lt;br&gt;A quite handy way of handling this, that I often use, is giving prefixes to reference names. For instance, you can have a filter that only escapes references whose name begins by 'xml'.
&lt;br&gt;&lt;br&gt;public class MyXmlEscape extends EscapeXmlReference
&lt;br&gt;{
&lt;br&gt;&amp;nbsp; &amp;nbsp; public Object referenceInsert( String reference, Object value &amp;nbsp;) {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if (value == null)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; return null;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if (!value instanceof String || !reference.startsWith(&amp;quot;xml&amp;quot;))
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; // do not escape
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; return value;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; else
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; // escape
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; return super.referenceInsert(reference, value);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&amp;nbsp; &amp;nbsp; }
&lt;br&gt;}
&lt;br&gt;&lt;br&gt;That way, you can write :
&lt;br&gt;&lt;br&gt;#set( $test = 'Me &amp; Co. Ltd' )
&lt;br&gt;#set( $xmltest = &amp;quot; * $test * &amp;quot;)
&lt;br&gt;$xmltest
&lt;br&gt;&lt;br&gt;and this will exhibit the expected behaviour.
&lt;br&gt;&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; was (Author: claude):
&lt;br&gt;&amp;nbsp; &amp;nbsp; It's too complex to try to configure it, because the frontier between an internal and a real output insertion is very difficult.
&lt;br&gt;&lt;br&gt;If you want to control precisely when escaping occurs and when it doesn't, you better inherit EscapeXmlReference in a class of yours.
&lt;br&gt;&lt;br&gt;A quite handy way of handling this, that I often use, is giving prefixes to reference names. For instance, you can have a filter that only escapes references whose name begins by 'xml'.
&lt;br&gt;&lt;br&gt;public class MyXmlEscape extends EscapeXmlReference
&lt;br&gt;{
&lt;br&gt;&amp;nbsp; &amp;nbsp; public Object referenceInsert( String reference, Object value &amp;nbsp;) {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if (value == null)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; return null;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if (!value instanceof String || !reference.startsWith(&amp;quot;xml&amp;quot;))
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; // do not escape
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; return value;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; else
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; // escape
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; return super.referenceInsert(reference, value);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&amp;nbsp; &amp;nbsp; }
&lt;br&gt;}
&lt;br&gt;&lt;br&gt;That way, you can write :
&lt;br&gt;&lt;br&gt;#set( $test = 'Me &amp; Co. Ltd' )
&lt;br&gt;#set( $xmltest = &amp;quot; * $test * &amp;quot;)
&lt;br&gt;$xmltest
&lt;br&gt;&lt;br&gt;and this will exhibit the expected behaviour.
&lt;br&gt;&lt;br&gt;&amp;nbsp; 
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; ReferenceInsertionEventHandler called &amp;quot;to often&amp;quot;/need more configuration settings
&lt;br&gt;&amp;gt; ---------------------------------------------------------------------------------
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Key: VELOCITY-749
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; URL: &lt;a href=&quot;https://issues.apache.org/jira/browse/VELOCITY-749&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://issues.apache.org/jira/browse/VELOCITY-749&lt;/a&gt;&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Project: Velocity
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Issue Type: Bug
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;Affects Versions: 1.6.2
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Reporter: Marco Rothe
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Priority: Minor
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Fix For: 1.6.x, 1.7
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I use the EscapeXmlReference (ReferenceInsertionEventHandler implementation) in our projects to produce valid XHTML.
&lt;br&gt;&amp;gt; But I works not as expected in some situations:
&lt;br&gt;&amp;gt; Given the reference $test as 'Me &amp; Co. Ltd' (for example from context) will output as 
&lt;br&gt;&amp;gt; Me &amp;amp; Co. Ltd 
&lt;br&gt;&amp;gt; correctly after the EscapeXmlReference.
&lt;br&gt;&amp;gt; But if we enrich the $test reference with some other string before output (#set($test = &amp;quot;* $test *&amp;quot;)) we got 
&lt;br&gt;&amp;gt; * Me &amp;amp;amp; Co. Ltd * &amp;nbsp;
&lt;br&gt;&amp;gt; and not &amp;nbsp;* Me &amp;amp; Co. Ltd * as output!
&lt;br&gt;&amp;gt; This is because the EscapeReference handler was called two times. First on the (internal) set directive (Me &amp; Co. Ltd -&amp;gt; Me &amp;amp; Co. Ltd), second on the real output of $test to the stream (* Me &amp;amp; Co. Ltd *-&amp;gt; &amp;nbsp;* Me &amp;amp;amp; Co. Ltd *). 
&lt;br&gt;&amp;gt; The javadoc of ReferenceInsertionEventHandler says &amp;quot;Reference 'Stream insertion' event handler. &amp;nbsp;Called with object &amp;nbsp;that will be inserted into stream via value.toString().&amp;quot; 
&lt;br&gt;&amp;gt; &amp;quot;inserted &amp;nbsp;into stream&amp;quot; means to me &amp;nbsp;into the real output stream of the template merge, not into internal substreams. So I believe it's a bug or a least an unexpected behaviour because it produce unpredictable results on string operations.
&lt;br&gt;&amp;gt; So the ReferenceInsertionEventHandler needs the possibility to know if the current insertation is an internal or an real output insertation to be able to react on situations as descripted above.
&lt;/div&gt;&lt;br&gt;-- 
&lt;br&gt;This message is automatically generated by JIRA.
&lt;br&gt;-
&lt;br&gt;You can reply to this email to add a comment to the issue online.
&lt;br&gt;&lt;br&gt;&lt;br&gt;---------------------------------------------------------------------
&lt;br&gt;To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26827270&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev-unsubscribe@...&lt;/a&gt;
&lt;br&gt;For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26827270&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev-help@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Velocity---Dev-f346.html&quot; embed=&quot;fixTarget[346]&quot; target=&quot;_top&quot; &gt;Velocity - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/-jira--Created%3A-%28VELOCITY-749%29-ReferenceInsertionEventHandler-called-%22to-often%22-need-more-configuration-settings-tp26826491p26827270.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26826491</id>
	<title>[jira] Created: (VELOCITY-749) ReferenceInsertionEventHandler called &quot;to often&quot;/need more configuration settings</title>
	<published>2009-12-17T03:12:18Z</published>
	<updated>2009-12-17T03:12:18Z</updated>
	<author>
		<name>Velocity - Dev mailing list-2</name>
	</author>
	<content type="html">ReferenceInsertionEventHandler called &amp;quot;to often&amp;quot;/need more configuration settings
&lt;br&gt;---------------------------------------------------------------------------------
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Key: VELOCITY-749
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;URL: &lt;a href=&quot;https://issues.apache.org/jira/browse/VELOCITY-749&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://issues.apache.org/jira/browse/VELOCITY-749&lt;/a&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Project: Velocity
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Issue Type: Bug
&lt;br&gt;&amp;nbsp; &amp;nbsp; Affects Versions: 1.6.2
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Reporter: Marco Rothe
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Priority: Minor
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Fix For: 1.6.x, 1.7
&lt;br&gt;&lt;br&gt;&lt;br&gt;I use the EscapeXmlReference (ReferenceInsertionEventHandler implementation) in our projects to produce valid XHTML.
&lt;br&gt;But I works not as expected in some situations:
&lt;br&gt;&lt;br&gt;Given the reference $test as 'Me &amp; Co. Ltd' (for example from context) will output as 
&lt;br&gt;&lt;br&gt;Me &amp;amp; Co. Ltd 
&lt;br&gt;&lt;br&gt;correctly after the EscapeXmlReference.
&lt;br&gt;&lt;br&gt;But if we enrich the $test reference with some other string before output (#set($test = &amp;quot;* $test *&amp;quot;)) we got 
&lt;br&gt;&lt;br&gt;* Me &amp;amp;amp; Co. Ltd * &amp;nbsp;
&lt;br&gt;&lt;br&gt;and not &amp;nbsp;* Me &amp;amp; Co. Ltd * as output!
&lt;br&gt;&lt;br&gt;This is because the EscapeReference handler was called two times. First on the (internal) set directive (Me &amp; Co. Ltd -&amp;gt; Me &amp;amp; Co. Ltd), second on the real output of $test to the stream (* Me &amp;amp; Co. Ltd *-&amp;gt; &amp;nbsp;* Me &amp;amp;amp; Co. Ltd *). 
&lt;br&gt;The javadoc of ReferenceInsertionEventHandler says &amp;quot;Reference 'Stream insertion' event handler. &amp;nbsp;Called with object &amp;nbsp;that will be inserted into stream via value.toString().&amp;quot; 
&lt;br&gt;&amp;quot;inserted &amp;nbsp;into stream&amp;quot; means to me &amp;nbsp;into the real output stream of the template merge, not into internal substreams. So I believe it's a bug or a least an unexpected behaviour because it produce unpredictable results on string operations.
&lt;br&gt;&lt;br&gt;So the ReferenceInsertionEventHandler needs the possibility to know if the current insertation is an internal or an real output insertation to be able to react on situations as descripted above.
&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;This message is automatically generated by JIRA.
&lt;br&gt;-
&lt;br&gt;You can reply to this email to add a comment to the issue online.
&lt;br&gt;&lt;br&gt;&lt;br&gt;---------------------------------------------------------------------
&lt;br&gt;To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26826491&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev-unsubscribe@...&lt;/a&gt;
&lt;br&gt;For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26826491&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev-help@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Velocity---Dev-f346.html&quot; embed=&quot;fixTarget[346]&quot; target=&quot;_top&quot; &gt;Velocity - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/-jira--Created%3A-%28VELOCITY-749%29-ReferenceInsertionEventHandler-called-%22to-often%22-need-more-configuration-settings-tp26826491p26826491.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26816679</id>
	<title>[jira] Commented: (VELOCITY-718) multi-thread merge causes 100% cpu</title>
	<published>2009-12-16T11:08:18Z</published>
	<updated>2009-12-16T11:08:18Z</updated>
	<author>
		<name>Velocity - Dev mailing list-2</name>
	</author>
	<content type="html">&lt;br&gt;&amp;nbsp; &amp;nbsp; [ &lt;a href=&quot;https://issues.apache.org/jira/browse/VELOCITY-718?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&amp;focusedCommentId=12791527#action_12791527&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://issues.apache.org/jira/browse/VELOCITY-718?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&amp;focusedCommentId=12791527#action_12791527&lt;/a&gt;&amp;nbsp;] 
&lt;br&gt;&lt;br&gt;Nathan Bubna commented on VELOCITY-718:
&lt;br&gt;---------------------------------------
&lt;br&gt;&lt;br&gt;Ok, given the utter lack of confirmation and long passage of time, i've decided to just assume that this is indeed fixed and port it to the 1.6.x branch. &amp;nbsp;It will hopefully come out in a 1.6.4 release, eventually.
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; multi-thread merge causes 100% cpu
&lt;br&gt;&amp;gt; ----------------------------------
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Key: VELOCITY-718
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; URL: &lt;a href=&quot;https://issues.apache.org/jira/browse/VELOCITY-718&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://issues.apache.org/jira/browse/VELOCITY-718&lt;/a&gt;&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Project: Velocity
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Issue Type: Bug
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;Affects Versions: 1.6.1
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Environment: Solaris 1.5.0_08-b03
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Reporter: Chris Pearson
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Fix For: 1.7
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Attachments: mapfactory.patch, velocity-1.7-dev.jar
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I cannot reproduce this at will, and have only seen it the once but if someone more familiar with the code than me could take a look that would be appreciated. &amp;nbsp;I have several threads calling Template.merge, and somehow here they got locked up somewhere and caused a 100% cpu loop hang between them. &amp;nbsp;Here's a thread dump after several hours of getting nowhere.
&lt;br&gt;&amp;gt; Full thread dump Java HotSpot(TM) Server VM (1.5.0_08-b03 mixed mode):
&lt;br&gt;&amp;gt; &amp;quot;RMI ConnectionExpiration-[162.11.2.155:46163]&amp;quot; daemon prio=10 tid=0x01a58838 nid=0x91 waiting on condition [0xaf701000..0xaf701888]
&lt;br&gt;&amp;gt; 	at java.lang.Thread.sleep(Native Method)
&lt;br&gt;&amp;gt; 	at sun.rmi.transport.tcp.TCPChannel$Reaper.run(TCPChannel.java:446)
&lt;br&gt;&amp;gt; 	at java.lang.Thread.run(Thread.java:595)
&lt;br&gt;&amp;gt; &amp;quot;GC Daemon&amp;quot; daemon prio=2 tid=0x018972f8 nid=0x33 in Object.wait() [0xaf801000..0xaf801988]
&lt;br&gt;&amp;gt; 	at java.lang.Object.wait(Native Method)
&lt;br&gt;&amp;gt; 	- waiting on &amp;lt;0xb92ae8b0&amp;gt; (a sun.misc.GC$LatencyLock)
&lt;br&gt;&amp;gt; 	at sun.misc.GC$Daemon.run(GC.java:100)
&lt;br&gt;&amp;gt; 	- locked &amp;lt;0xb92ae8b0&amp;gt; (a sun.misc.GC$LatencyLock)
&lt;br&gt;&amp;gt; &amp;quot;RMI RenewClean-[162.11.2.155:46163]&amp;quot; daemon prio=10 tid=0x01d83578 nid=0x32 in Object.wait() [0xaf901000..0xaf901a08]
&lt;br&gt;&amp;gt; 	at java.lang.Object.wait(Native Method)
&lt;br&gt;&amp;gt; 	- waiting on &amp;lt;0xb92ae980&amp;gt; (a java.lang.ref.ReferenceQueue$Lock)
&lt;br&gt;&amp;gt; 	at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:116)
&lt;br&gt;&amp;gt; 	- locked &amp;lt;0xb92ae980&amp;gt; (a java.lang.ref.ReferenceQueue$Lock)
&lt;br&gt;&amp;gt; 	at sun.rmi.transport.DGCClient$EndpointEntry$RenewCleanThread.run(DGCClient.java:501)
&lt;br&gt;&amp;gt; 	at java.lang.Thread.run(Thread.java:595)
&lt;br&gt;&amp;gt; &amp;quot;pool-1-thread-3&amp;quot; prio=10 tid=0x01d64fa0 nid=0x31 waiting on condition [0xafa01000..0xafa01888]
&lt;br&gt;&amp;gt; 	at sun.misc.Unsafe.park(Native Method)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:118)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1767)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:359)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:470)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:674)
&lt;br&gt;&amp;gt; 	at java.lang.Thread.run(Thread.java:595)
&lt;br&gt;&amp;gt; &amp;quot;pool-1-thread-2&amp;quot; prio=10 tid=0x00f7edb0 nid=0x30 waiting on condition [0xafb01000..0xafb01908]
&lt;br&gt;&amp;gt; 	at sun.misc.Unsafe.park(Native Method)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:118)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1767)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:359)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:470)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:674)
&lt;br&gt;&amp;gt; 	at java.lang.Thread.run(Thread.java:595)
&lt;br&gt;&amp;gt; &amp;quot;pool-1-thread-1&amp;quot; prio=10 tid=0x020574a8 nid=0x2f waiting on condition [0xafc01000..0xafc01788]
&lt;br&gt;&amp;gt; 	at sun.misc.Unsafe.park(Native Method)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:118)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1767)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:359)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:470)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:674)
&lt;br&gt;&amp;gt; 	at java.lang.Thread.run(Thread.java:595)
&lt;br&gt;&amp;gt; &amp;quot;pool-2-thread-10&amp;quot; prio=10 tid=0x01da9d38 nid=0x2e runnable [0xafcff000..0xafd01808]
&lt;br&gt;&amp;gt; 	at java.util.HashMap.get(HashMap.java:346)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.util.introspection.ClassMap$MethodCache.get(ClassMap.java:248)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.util.introspection.ClassMap.findMethod(ClassMap.java:102)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.util.introspection.IntrospectorBase.getMethod(IntrospectorBase.java:105)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.util.introspection.Introspector.getMethod(Introspector.java:94)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.PropertyExecutor.discover(PropertyExecutor.java:118)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.PropertyExecutor.&amp;lt;init&amp;gt;(PropertyExecutor.java:56)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.util.introspection.UberspectImpl.getPropertyGet(UberspectImpl.java:246)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTIdentifier.execute(ASTIdentifier.java:148)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:252)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTReference.render(ASTReference.java:332)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.directive.VelocimacroProxy.render(VelocimacroProxy.java:212)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.directive.RuntimeMacro.render(RuntimeMacro.java:247)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:175)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.directive.Foreach.render(Foreach.java:364)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:175)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.directive.Foreach.render(Foreach.java:364)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:175)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:336)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.Template.merge(Template.java:328)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.Template.merge(Template.java:235)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.model2murex.velocity.VelocityTradeWriter.generateMxml(VelocityTradeWriter.java:149)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.model2murex.MurexSink.writeTrades(MurexSink.java:63)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.model2murex.EnhancingMurexSink.writeTrades(EnhancingMurexSink.java:18)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.oldcode.murexsink.BothMurexSinks.writeTrades(BothMurexSinks.java:46)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.migration.Migration.migrate(Migration.java:111)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.migration.Migration.access$100(Migration.java:37)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.migration.Migration$MigrationTask.call(Migration.java:313)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.migration.Migration$MigrationTask.call(Migration.java:280)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:269)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.FutureTask.run(FutureTask.java:123)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
&lt;br&gt;&amp;gt; 	at java.lang.Thread.run(Thread.java:595)
&lt;br&gt;&amp;gt; &amp;quot;pool-2-thread-9&amp;quot; prio=10 tid=0x0064b100 nid=0x2d runnable [0xafdff000..0xafe01688]
&lt;br&gt;&amp;gt; 	at java.util.HashMap.put(HashMap.java:420)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.util.introspection.ClassMap$MethodCache.get(ClassMap.java:271)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.util.introspection.ClassMap.findMethod(ClassMap.java:102)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.util.introspection.IntrospectorBase.getMethod(IntrospectorBase.java:105)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.util.introspection.Introspector.getMethod(Introspector.java:94)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.PropertyExecutor.discover(PropertyExecutor.java:118)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.PropertyExecutor.&amp;lt;init&amp;gt;(PropertyExecutor.java:56)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.util.introspection.UberspectImpl.getPropertyGet(UberspectImpl.java:246)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTIdentifier.execute(ASTIdentifier.java:148)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:252)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTReference.render(ASTReference.java:332)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.directive.VelocimacroProxy.render(VelocimacroProxy.java:212)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.directive.RuntimeMacro.render(RuntimeMacro.java:247)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:175)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.directive.Foreach.render(Foreach.java:364)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:175)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.directive.Foreach.render(Foreach.java:364)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:175)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:336)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.Template.merge(Template.java:328)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.Template.merge(Template.java:235)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.model2murex.velocity.VelocityTradeWriter.generateMxml(VelocityTradeWriter.java:149)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.model2murex.MurexSink.writeTrades(MurexSink.java:63)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.model2murex.EnhancingMurexSink.writeTrades(EnhancingMurexSink.java:18)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.oldcode.murexsink.BothMurexSinks.writeTrades(BothMurexSinks.java:46)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.migration.Migration.migrate(Migration.java:111)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.migration.Migration.access$100(Migration.java:37)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.migration.Migration$MigrationTask.call(Migration.java:313)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.migration.Migration$MigrationTask.call(Migration.java:280)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:269)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.FutureTask.run(FutureTask.java:123)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
&lt;br&gt;&amp;gt; 	at java.lang.Thread.run(Thread.java:595)
&lt;br&gt;&amp;gt; &amp;quot;pool-2-thread-8&amp;quot; prio=10 tid=0x0064b7b0 nid=0x2c runnable [0xafeff000..0xaff01708]
&lt;br&gt;&amp;gt; 	at java.util.HashMap.get(HashMap.java:346)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.util.introspection.ClassMap$MethodCache.get(ClassMap.java:248)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.util.introspection.ClassMap.findMethod(ClassMap.java:102)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.util.introspection.IntrospectorBase.getMethod(IntrospectorBase.java:105)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.util.introspection.Introspector.getMethod(Introspector.java:94)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.PropertyExecutor.discover(PropertyExecutor.java:118)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.PropertyExecutor.&amp;lt;init&amp;gt;(PropertyExecutor.java:56)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.util.introspection.UberspectImpl.getPropertyGet(UberspectImpl.java:246)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTIdentifier.execute(ASTIdentifier.java:148)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:252)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTReference.render(ASTReference.java:332)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.directive.VelocimacroProxy.render(VelocimacroProxy.java:212)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.directive.RuntimeMacro.render(RuntimeMacro.java:247)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:175)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.directive.Foreach.render(Foreach.java:364)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:175)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.directive.Foreach.render(Foreach.java:364)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:175)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:336)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.Template.merge(Template.java:328)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.Template.merge(Template.java:235)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.model2murex.velocity.VelocityTradeWriter.generateMxml(VelocityTradeWriter.java:149)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.model2murex.MurexSink.writeTrades(MurexSink.java:63)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.model2murex.EnhancingMurexSink.writeTrades(EnhancingMurexSink.java:18)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.oldcode.murexsink.BothMurexSinks.writeTrades(BothMurexSinks.java:46)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.migration.Migration.migrate(Migration.java:111)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.migration.Migration.access$100(Migration.java:37)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.migration.Migration$MigrationTask.call(Migration.java:313)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.migration.Migration$MigrationTask.call(Migration.java:280)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:269)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.FutureTask.run(FutureTask.java:123)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
&lt;br&gt;&amp;gt; 	at java.lang.Thread.run(Thread.java:595)
&lt;br&gt;&amp;gt; &amp;quot;pool-2-thread-7&amp;quot; prio=10 tid=0x01d2d1d8 nid=0x2b runnable [0xb0000000..0xb0001988]
&lt;br&gt;&amp;gt; 	at java.util.HashMap.put(HashMap.java:420)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.util.introspection.ClassMap$MethodCache.get(ClassMap.java:271)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.util.introspection.ClassMap.findMethod(ClassMap.java:102)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.util.introspection.IntrospectorBase.getMethod(IntrospectorBase.java:105)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.util.introspection.Introspector.getMethod(Introspector.java:94)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.PropertyExecutor.discover(PropertyExecutor.java:118)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.PropertyExecutor.&amp;lt;init&amp;gt;(PropertyExecutor.java:56)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.util.introspection.UberspectImpl.getPropertyGet(UberspectImpl.java:246)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTIdentifier.execute(ASTIdentifier.java:148)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:252)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTReference.render(ASTReference.java:332)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.directive.VelocimacroProxy.render(VelocimacroProxy.java:212)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.directive.RuntimeMacro.render(RuntimeMacro.java:247)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:175)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.directive.Foreach.render(Foreach.java:364)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:175)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.directive.Foreach.render(Foreach.java:364)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:175)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:336)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.Template.merge(Template.java:328)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.Template.merge(Template.java:235)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.model2murex.velocity.VelocityTradeWriter.generateMxml(VelocityTradeWriter.java:149)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.model2murex.MurexSink.writeTrades(MurexSink.java:63)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.model2murex.EnhancingMurexSink.writeTrades(EnhancingMurexSink.java:18)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.oldcode.murexsink.BothMurexSinks.writeTrades(BothMurexSinks.java:46)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.migration.Migration.migrate(Migration.java:111)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.migration.Migration.access$100(Migration.java:37)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.migration.Migration$MigrationTask.call(Migration.java:313)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.migration.Migration$MigrationTask.call(Migration.java:280)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:269)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.FutureTask.run(FutureTask.java:123)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
&lt;br&gt;&amp;gt; 	at java.lang.Thread.run(Thread.java:595)
&lt;br&gt;&amp;gt; &amp;quot;pool-2-thread-6&amp;quot; prio=10 tid=0x0153a960 nid=0x2a runnable [0xb0100000..0xb0101a08]
&lt;br&gt;&amp;gt; 	at java.util.HashMap.get(HashMap.java:346)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.util.introspection.ClassMap$MethodCache.get(ClassMap.java:248)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.util.introspection.ClassMap.findMethod(ClassMap.java:102)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.util.introspection.IntrospectorBase.getMethod(IntrospectorBase.java:105)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.util.introspection.Introspector.getMethod(Introspector.java:94)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.PropertyExecutor.discover(PropertyExecutor.java:118)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.PropertyExecutor.&amp;lt;init&amp;gt;(PropertyExecutor.java:56)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.util.introspection.UberspectImpl.getPropertyGet(UberspectImpl.java:246)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTIdentifier.execute(ASTIdentifier.java:148)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:252)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTReference.render(ASTReference.java:332)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.directive.VelocimacroProxy.render(VelocimacroProxy.java:212)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.directive.RuntimeMacro.render(RuntimeMacro.java:247)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:175)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.directive.Foreach.render(Foreach.java:364)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:175)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.directive.Foreach.render(Foreach.java:364)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:175)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:336)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.Template.merge(Template.java:328)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.Template.merge(Template.java:235)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.model2murex.velocity.VelocityTradeWriter.generateMxml(VelocityTradeWriter.java:149)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.model2murex.MurexSink.writeTrades(MurexSink.java:63)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.model2murex.EnhancingMurexSink.writeTrades(EnhancingMurexSink.java:18)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.oldcode.murexsink.BothMurexSinks.writeTrades(BothMurexSinks.java:46)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.migration.Migration.migrate(Migration.java:111)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.migration.Migration.access$100(Migration.java:37)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.migration.Migration$MigrationTask.call(Migration.java:313)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.migration.Migration$MigrationTask.call(Migration.java:280)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:269)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.FutureTask.run(FutureTask.java:123)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
&lt;br&gt;&amp;gt; 	at java.lang.Thread.run(Thread.java:595)
&lt;br&gt;&amp;gt; &amp;quot;pool-2-thread-5&amp;quot; prio=10 tid=0x00d8d1d0 nid=0x29 runnable [0xb01ff000..0xb0201888]
&lt;br&gt;&amp;gt; 	at java.util.HashMap.get(HashMap.java:346)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.util.introspection.ClassMap$MethodCache.get(ClassMap.java:248)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.util.introspection.ClassMap.findMethod(ClassMap.java:102)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.util.introspection.IntrospectorBase.getMethod(IntrospectorBase.java:105)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.util.introspection.Introspector.getMethod(Introspector.java:94)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.PropertyExecutor.discover(PropertyExecutor.java:118)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.PropertyExecutor.&amp;lt;init&amp;gt;(PropertyExecutor.java:56)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.util.introspection.UberspectImpl.getPropertyGet(UberspectImpl.java:246)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTIdentifier.execute(ASTIdentifier.java:148)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:252)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTReference.render(ASTReference.java:332)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.directive.VelocimacroProxy.render(VelocimacroProxy.java:212)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.directive.RuntimeMacro.render(RuntimeMacro.java:247)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:175)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.directive.Foreach.render(Foreach.java:364)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:175)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.directive.Foreach.render(Foreach.java:364)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:175)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:336)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.Template.merge(Template.java:328)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.Template.merge(Template.java:235)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.model2murex.velocity.VelocityTradeWriter.generateMxml(VelocityTradeWriter.java:149)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.model2murex.MurexSink.writeTrades(MurexSink.java:63)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.model2murex.EnhancingMurexSink.writeTrades(EnhancingMurexSink.java:18)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.oldcode.murexsink.BothMurexSinks.writeTrades(BothMurexSinks.java:46)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.migration.Migration.migrate(Migration.java:111)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.migration.Migration.access$100(Migration.java:37)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.migration.Migration$MigrationTask.call(Migration.java:313)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.migration.Migration$MigrationTask.call(Migration.java:280)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:269)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.FutureTask.run(FutureTask.java:123)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
&lt;br&gt;&amp;gt; 	at java.lang.Thread.run(Thread.java:595)
&lt;br&gt;&amp;gt; &amp;quot;pool-2-thread-4&amp;quot; prio=10 tid=0x00f30d30 nid=0x28 runnable [0xb0300000..0xb0301908]
&lt;br&gt;&amp;gt; 	at java.util.HashMap.get(HashMap.java:346)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.util.introspection.ClassMap$MethodCache.get(ClassMap.java:248)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.util.introspection.ClassMap.findMethod(ClassMap.java:102)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.util.introspection.IntrospectorBase.getMethod(IntrospectorBase.java:105)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.util.introspection.Introspector.getMethod(Introspector.java:94)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.PropertyExecutor.discover(PropertyExecutor.java:118)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.PropertyExecutor.&amp;lt;init&amp;gt;(PropertyExecutor.java:56)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.util.introspection.UberspectImpl.getPropertyGet(UberspectImpl.java:246)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTIdentifier.execute(ASTIdentifier.java:148)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:252)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTReference.render(ASTReference.java:332)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.directive.VelocimacroProxy.render(VelocimacroProxy.java:212)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.directive.RuntimeMacro.render(RuntimeMacro.java:247)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:175)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.directive.Foreach.render(Foreach.java:364)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:175)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.directive.Foreach.render(Foreach.java:364)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:175)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:336)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.Template.merge(Template.java:328)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.Template.merge(Template.java:235)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.model2murex.velocity.VelocityTradeWriter.generateMxml(VelocityTradeWriter.java:149)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.model2murex.MurexSink.writeTrades(MurexSink.java:63)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.model2murex.EnhancingMurexSink.writeTrades(EnhancingMurexSink.java:18)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.oldcode.murexsink.BothMurexSinks.writeTrades(BothMurexSinks.java:46)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.migration.Migration.migrate(Migration.java:111)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.migration.Migration.access$100(Migration.java:37)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.migration.Migration$MigrationTask.call(Migration.java:313)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.migration.Migration$MigrationTask.call(Migration.java:280)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:269)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.FutureTask.run(FutureTask.java:123)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
&lt;br&gt;&amp;gt; 	at java.lang.Thread.run(Thread.java:595)
&lt;br&gt;&amp;gt; &amp;quot;pool-2-thread-3&amp;quot; prio=10 tid=0x00b35ed0 nid=0x27 runnable [0xb03ff000..0xb0401788]
&lt;br&gt;&amp;gt; 	at java.util.HashMap.get(HashMap.java:346)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.util.introspection.ClassMap$MethodCache.get(ClassMap.java:248)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.util.introspection.ClassMap.findMethod(ClassMap.java:102)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.util.introspection.IntrospectorBase.getMethod(IntrospectorBase.java:105)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.util.introspection.Introspector.getMethod(Introspector.java:94)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.PropertyExecutor.discover(PropertyExecutor.java:118)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.PropertyExecutor.&amp;lt;init&amp;gt;(PropertyExecutor.java:56)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.util.introspection.UberspectImpl.getPropertyGet(UberspectImpl.java:246)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTIdentifier.execute(ASTIdentifier.java:148)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:252)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTReference.render(ASTReference.java:332)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.directive.VelocimacroProxy.render(VelocimacroProxy.java:212)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.directive.RuntimeMacro.render(RuntimeMacro.java:247)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:175)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.directive.Foreach.render(Foreach.java:364)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:175)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.directive.Foreach.render(Foreach.java:364)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:175)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:336)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.Template.merge(Template.java:328)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.Template.merge(Template.java:235)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.model2murex.velocity.VelocityTradeWriter.generateMxml(VelocityTradeWriter.java:149)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.model2murex.MurexSink.writeTrades(MurexSink.java:63)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.model2murex.EnhancingMurexSink.writeTrades(EnhancingMurexSink.java:18)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.oldcode.murexsink.BothMurexSinks.writeTrades(BothMurexSinks.java:46)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.migration.Migration.migrate(Migration.java:111)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.migration.Migration.access$100(Migration.java:37)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.migration.Migration$MigrationTask.call(Migration.java:313)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.migration.Migration$MigrationTask.call(Migration.java:280)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:269)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.FutureTask.run(FutureTask.java:123)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
&lt;br&gt;&amp;gt; 	at java.lang.Thread.run(Thread.java:595)
&lt;br&gt;&amp;gt; &amp;quot;pool-2-thread-2&amp;quot; prio=10 tid=0x006ca6d0 nid=0x26 runnable [0xb04ff000..0xb0501808]
&lt;br&gt;&amp;gt; 	at java.util.HashMap.get(HashMap.java:346)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.util.introspection.ClassMap$MethodCache.get(ClassMap.java:248)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.util.introspection.ClassMap.findMethod(ClassMap.java:102)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.util.introspection.IntrospectorBase.getMethod(IntrospectorBase.java:105)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.util.introspection.Introspector.getMethod(Introspector.java:94)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.PropertyExecutor.discover(PropertyExecutor.java:118)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.PropertyExecutor.&amp;lt;init&amp;gt;(PropertyExecutor.java:56)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.util.introspection.UberspectImpl.getPropertyGet(UberspectImpl.java:246)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTIdentifier.execute(ASTIdentifier.java:148)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:252)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTReference.render(ASTReference.java:332)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.directive.VelocimacroProxy.render(VelocimacroProxy.java:212)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.directive.RuntimeMacro.render(RuntimeMacro.java:247)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:175)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.directive.Foreach.render(Foreach.java:364)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:175)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.directive.Foreach.render(Foreach.java:364)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:175)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:336)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.Template.merge(Template.java:328)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.Template.merge(Template.java:235)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.model2murex.velocity.VelocityTradeWriter.generateMxml(VelocityTradeWriter.java:149)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.model2murex.MurexSink.writeTrades(MurexSink.java:63)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.model2murex.EnhancingMurexSink.writeTrades(EnhancingMurexSink.java:18)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.oldcode.murexsink.BothMurexSinks.writeTrades(BothMurexSinks.java:46)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.migration.Migration.migrate(Migration.java:111)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.migration.Migration.access$100(Migration.java:37)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.migration.Migration$MigrationTask.call(Migration.java:313)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.migration.Migration$MigrationTask.call(Migration.java:280)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:269)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.FutureTask.run(FutureTask.java:123)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
&lt;br&gt;&amp;gt; 	at java.lang.Thread.run(Thread.java:595)
&lt;br&gt;&amp;gt; &amp;quot;pool-2-thread-1&amp;quot; prio=10 tid=0x007b0d88 nid=0x25 runnable [0xb0bff000..0xb0c01688]
&lt;br&gt;&amp;gt; 	at java.util.HashMap.put(HashMap.java:420)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.util.introspection.ClassMap$MethodCache.get(ClassMap.java:271)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.util.introspection.ClassMap.findMethod(ClassMap.java:102)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.util.introspection.IntrospectorBase.getMethod(IntrospectorBase.java:105)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.util.introspection.Introspector.getMethod(Introspector.java:94)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.PropertyExecutor.discover(PropertyExecutor.java:118)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.PropertyExecutor.&amp;lt;init&amp;gt;(PropertyExecutor.java:56)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.util.introspection.UberspectImpl.getPropertyGet(UberspectImpl.java:246)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTIdentifier.execute(ASTIdentifier.java:148)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:252)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTReference.render(ASTReference.java:332)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.directive.VelocimacroProxy.render(VelocimacroProxy.java:212)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.directive.RuntimeMacro.render(RuntimeMacro.java:247)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:175)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.directive.Foreach.render(Foreach.java:364)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:175)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.directive.Foreach.render(Foreach.java:364)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:175)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:336)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.Template.merge(Template.java:328)
&lt;br&gt;&amp;gt; 	at org.apache.velocity.Template.merge(Template.java:235)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.model2murex.velocity.VelocityTradeWriter.generateMxml(VelocityTradeWriter.java:149)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.model2murex.MurexSink.writeTrades(MurexSink.java:63)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.model2murex.EnhancingMurexSink.writeTrades(EnhancingMurexSink.java:18)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.oldcode.murexsink.BothMurexSinks.writeTrades(BothMurexSinks.java:46)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.migration.Migration.migrate(Migration.java:111)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.migration.Migration.access$100(Migration.java:37)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.migration.Migration$MigrationTask.call(Migration.java:313)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.migration.Migration$MigrationTask.call(Migration.java:280)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:269)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.FutureTask.run(FutureTask.java:123)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
&lt;br&gt;&amp;gt; 	at java.lang.Thread.run(Thread.java:595)
&lt;br&gt;&amp;gt; &amp;quot;PoolExecutor&amp;quot; daemon prio=10 tid=0x00861128 nid=0x22 in Object.wait() [0xb0601000..0xb0601a08]
&lt;br&gt;&amp;gt; 	at java.lang.Object.wait(Native Method)
&lt;br&gt;&amp;gt; 	- waiting on &amp;lt;0xb81de0e0&amp;gt; (a com.swiftmq.client.thread.ThreadPoolImpl)
&lt;br&gt;&amp;gt; 	at java.lang.Object.wait(Object.java:474)
&lt;br&gt;&amp;gt; 	at com.swiftmq.client.thread.ThreadPoolImpl.getNextTask(Unknown Source)
&lt;br&gt;&amp;gt; 	- locked &amp;lt;0xb81de0e0&amp;gt; (a com.swiftmq.client.thread.ThreadPoolImpl)
&lt;br&gt;&amp;gt; 	at com.swiftmq.client.thread.PoolExecutor.run(Unknown Source)
&lt;br&gt;&amp;gt; &amp;quot;PoolExecutor&amp;quot; daemon prio=10 tid=0x0085b7d8 nid=0x21 in Object.wait() [0xb0701000..0xb0701888]
&lt;br&gt;&amp;gt; 	at java.lang.Object.wait(Native Method)
&lt;br&gt;&amp;gt; 	- waiting on &amp;lt;0xb81de0e0&amp;gt; (a com.swiftmq.client.thread.ThreadPoolImpl)
&lt;br&gt;&amp;gt; 	at java.lang.Object.wait(Object.java:474)
&lt;br&gt;&amp;gt; 	at com.swiftmq.client.thread.ThreadPoolImpl.getNextTask(Unknown Source)
&lt;br&gt;&amp;gt; 	- locked &amp;lt;0xb81de0e0&amp;gt; (a com.swiftmq.client.thread.ThreadPoolImpl)
&lt;br&gt;&amp;gt; 	at com.swiftmq.client.thread.PoolExecutor.run(Unknown Source)
&lt;br&gt;&amp;gt; &amp;quot;PoolExecutor&amp;quot; daemon prio=10 tid=0x0085b028 nid=0x20 in Object.wait() [0xb0801000..0xb0801908]
&lt;br&gt;&amp;gt; 	at java.lang.Object.wait(Native Method)
&lt;br&gt;&amp;gt; 	- waiting on &amp;lt;0xb81de0e0&amp;gt; (a com.swiftmq.client.thread.ThreadPoolImpl)
&lt;br&gt;&amp;gt; 	at java.lang.Object.wait(Object.java:474)
&lt;br&gt;&amp;gt; 	at com.swiftmq.client.thread.ThreadPoolImpl.getNextTask(Unknown Source)
&lt;br&gt;&amp;gt; 	- locked &amp;lt;0xb81de0e0&amp;gt; (a com.swiftmq.client.thread.ThreadPoolImpl)
&lt;br&gt;&amp;gt; 	at com.swiftmq.client.thread.PoolExecutor.run(Unknown Source)
&lt;br&gt;&amp;gt; &amp;quot;PoolExecutor&amp;quot; daemon prio=10 tid=0x00861ea0 nid=0x1f in Object.wait() [0xb0901000..0xb0901788]
&lt;br&gt;&amp;gt; 	at java.lang.Object.wait(Native Method)
&lt;br&gt;&amp;gt; 	- waiting on &amp;lt;0xb81de0e0&amp;gt; (a com.swiftmq.client.thread.ThreadPoolImpl)
&lt;br&gt;&amp;gt; 	at java.lang.Object.wait(Object.java:474)
&lt;br&gt;&amp;gt; 	at com.swiftmq.client.thread.ThreadPoolImpl.getNextTask(Unknown Source)
&lt;br&gt;&amp;gt; 	- locked &amp;lt;0xb81de0e0&amp;gt; (a com.swiftmq.client.thread.ThreadPoolImpl)
&lt;br&gt;&amp;gt; 	at com.swiftmq.client.thread.PoolExecutor.run(Unknown Source)
&lt;br&gt;&amp;gt; &amp;quot;PoolExecutor&amp;quot; daemon prio=10 tid=0x00648718 nid=0x1e in Object.wait() [0xb0a01000..0xb0a01808]
&lt;br&gt;&amp;gt; 	at java.lang.Object.wait(Native Method)
&lt;br&gt;&amp;gt; 	- waiting on &amp;lt;0xb81de0e0&amp;gt; (a com.swiftmq.client.thread.ThreadPoolImpl)
&lt;br&gt;&amp;gt; 	at java.lang.Object.wait(Object.java:474)
&lt;br&gt;&amp;gt; 	at com.swiftmq.client.thread.ThreadPoolImpl.getNextTask(Unknown Source)
&lt;br&gt;&amp;gt; 	- locked &amp;lt;0xb81de0e0&amp;gt; (a com.swiftmq.client.thread.ThreadPoolImpl)
&lt;br&gt;&amp;gt; 	at com.swiftmq.client.thread.PoolExecutor.run(Unknown Source)
&lt;br&gt;&amp;gt; &amp;quot;Timer-1&amp;quot; daemon prio=10 tid=0x009d6520 nid=0x1c in Object.wait() [0xb0b01000..0xb0b01708]
&lt;br&gt;&amp;gt; 	at java.lang.Object.wait(Native Method)
&lt;br&gt;&amp;gt; 	- waiting on &amp;lt;0xb8258028&amp;gt; (a java.util.TaskQueue)
&lt;br&gt;&amp;gt; 	at java.lang.Object.wait(Object.java:474)
&lt;br&gt;&amp;gt; 	at java.util.TimerThread.mainLoop(Timer.java:483)
&lt;br&gt;&amp;gt; 	- locked &amp;lt;0xb8258028&amp;gt; (a java.util.TaskQueue)
&lt;br&gt;&amp;gt; 	at java.util.TimerThread.run(Timer.java:462)
&lt;br&gt;&amp;gt; &amp;quot;PoolExecutor&amp;quot; daemon prio=10 tid=0x00a618f0 nid=0x1a in Object.wait() [0xb0d01000..0xb0d01a08]
&lt;br&gt;&amp;gt; 	at java.lang.Object.wait(Native Method)
&lt;br&gt;&amp;gt; 	- waiting on &amp;lt;0xb8207070&amp;gt; (a com.swiftmq.client.thread.ThreadPoolImpl)
&lt;br&gt;&amp;gt; 	at java.lang.Object.wait(Object.java:474)
&lt;br&gt;&amp;gt; 	at com.swiftmq.client.thread.ThreadPoolImpl.getNextTask(Unknown Source)
&lt;br&gt;&amp;gt; 	- locked &amp;lt;0xb8207070&amp;gt; (a com.swiftmq.client.thread.ThreadPoolImpl)
&lt;br&gt;&amp;gt; 	at com.swiftmq.client.thread.PoolExecutor.run(Unknown Source)
&lt;br&gt;&amp;gt; &amp;quot;PoolExecutor&amp;quot; daemon prio=10 tid=0x0087eef0 nid=0x19 in Object.wait() [0xb0e01000..0xb0e01888]
&lt;br&gt;&amp;gt; 	at java.lang.Object.wait(Native Method)
&lt;br&gt;&amp;gt; 	- waiting on &amp;lt;0xb8207070&amp;gt; (a com.swiftmq.client.thread.ThreadPoolImpl)
&lt;br&gt;&amp;gt; 	at java.lang.Object.wait(Object.java:474)
&lt;br&gt;&amp;gt; 	at com.swiftmq.client.thread.ThreadPoolImpl.getNextTask(Unknown Source)
&lt;br&gt;&amp;gt; 	- locked &amp;lt;0xb8207070&amp;gt; (a com.swiftmq.client.thread.ThreadPoolImpl)
&lt;br&gt;&amp;gt; 	at com.swiftmq.client.thread.PoolExecutor.run(Unknown Source)
&lt;br&gt;&amp;gt; &amp;quot;PoolExecutor&amp;quot; daemon prio=10 tid=0x00ecd1c8 nid=0x18 in Object.wait() [0xb0f01000..0xb0f01908]
&lt;br&gt;&amp;gt; 	at java.lang.Object.wait(Native Method)
&lt;br&gt;&amp;gt; 	- waiting on &amp;lt;0xb8207070&amp;gt; (a com.swiftmq.client.thread.ThreadPoolImpl)
&lt;br&gt;&amp;gt; 	at java.lang.Object.wait(Object.java:474)
&lt;br&gt;&amp;gt; 	at com.swiftmq.client.thread.ThreadPoolImpl.getNextTask(Unknown Source)
&lt;br&gt;&amp;gt; 	- locked &amp;lt;0xb8207070&amp;gt; (a com.swiftmq.client.thread.ThreadPoolImpl)
&lt;br&gt;&amp;gt; 	at com.swiftmq.client.thread.PoolExecutor.run(Unknown Source)
&lt;br&gt;&amp;gt; &amp;quot;PoolExecutor&amp;quot; daemon prio=10 tid=0x00eccf60 nid=0x17 in Object.wait() [0xb1001000..0xb1001788]
&lt;br&gt;&amp;gt; 	at java.lang.Object.wait(Native Method)
&lt;br&gt;&amp;gt; 	- waiting on &amp;lt;0xb8207070&amp;gt; (a com.swiftmq.client.thread.ThreadPoolImpl)
&lt;br&gt;&amp;gt; 	at java.lang.Object.wait(Object.java:474)
&lt;br&gt;&amp;gt; 	at com.swiftmq.client.thread.ThreadPoolImpl.getNextTask(Unknown Source)
&lt;br&gt;&amp;gt; 	- locked &amp;lt;0xb8207070&amp;gt; (a com.swiftmq.client.thread.ThreadPoolImpl)
&lt;br&gt;&amp;gt; 	at com.swiftmq.client.thread.PoolExecutor.run(Unknown Source)
&lt;br&gt;&amp;gt; &amp;quot;PoolExecutor&amp;quot; daemon prio=10 tid=0x00c19ee0 nid=0x16 in Object.wait() [0xb1101000..0xb1101808]
&lt;br&gt;&amp;gt; 	at java.lang.Object.wait(Native Method)
&lt;br&gt;&amp;gt; 	- waiting on &amp;lt;0xb8207070&amp;gt; (a com.swiftmq.client.thread.ThreadPoolImpl)
&lt;br&gt;&amp;gt; 	at java.lang.Object.wait(Object.java:474)
&lt;br&gt;&amp;gt; 	at com.swiftmq.client.thread.ThreadPoolImpl.getNextTask(Unknown Source)
&lt;br&gt;&amp;gt; 	- locked &amp;lt;0xb8207070&amp;gt; (a com.swiftmq.client.thread.ThreadPoolImpl)
&lt;br&gt;&amp;gt; 	at com.swiftmq.client.thread.PoolExecutor.run(Unknown Source)
&lt;br&gt;&amp;gt; &amp;quot;Timer-0&amp;quot; daemon prio=10 tid=0x00d64c80 nid=0x15 in Object.wait() [0xb1201000..0xb1201688]
&lt;br&gt;&amp;gt; 	at java.lang.Object.wait(Native Method)
&lt;br&gt;&amp;gt; 	- waiting on &amp;lt;0xb80a9008&amp;gt; (a java.util.TaskQueue)
&lt;br&gt;&amp;gt; 	at java.lang.Object.wait(Object.java:474)
&lt;br&gt;&amp;gt; 	at java.util.TimerThread.mainLoop(Timer.java:483)
&lt;br&gt;&amp;gt; 	- locked &amp;lt;0xb80a9008&amp;gt; (a java.util.TaskQueue)
&lt;br&gt;&amp;gt; 	at java.util.TimerThread.run(Timer.java:462)
&lt;br&gt;&amp;gt; &amp;quot;Low Memory Detector&amp;quot; daemon prio=10 tid=0x001803c0 nid=0x13 runnable [0x00000000..0x00000000]
&lt;br&gt;&amp;gt; &amp;quot;CompilerThread1&amp;quot; daemon prio=10 tid=0x0017f308 nid=0x12 waiting on condition [0x00000000..0xb3980ac4]
&lt;br&gt;&amp;gt; &amp;quot;CompilerThread0&amp;quot; daemon prio=10 tid=0x0017e498 nid=0x11 waiting on condition [0x00000000..0xb3a80894]
&lt;br&gt;&amp;gt; &amp;quot;AdapterThread&amp;quot; daemon prio=10 tid=0x0017d608 nid=0x10 waiting on condition [0x00000000..0x00000000]
&lt;br&gt;&amp;gt; &amp;quot;Signal Dispatcher&amp;quot; daemon prio=10 tid=0x0017c9a8 nid=0xf waiting on condition [0x00000000..0x00000000]
&lt;br&gt;&amp;gt; &amp;quot;Finalizer&amp;quot; daemon prio=10 tid=0x00171b98 nid=0xe in Object.wait() [0xb3d81000..0xb3d81808]
&lt;br&gt;&amp;gt; 	at java.lang.Object.wait(Native Method)
&lt;br&gt;&amp;gt; 	- waiting on &amp;lt;0xb80114d0&amp;gt; (a java.lang.ref.ReferenceQueue$Lock)
&lt;br&gt;&amp;gt; 	at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:116)
&lt;br&gt;&amp;gt; 	- locked &amp;lt;0xb80114d0&amp;gt; (a java.lang.ref.ReferenceQueue$Lock)
&lt;br&gt;&amp;gt; 	at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:132)
&lt;br&gt;&amp;gt; 	at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159)
&lt;br&gt;&amp;gt; &amp;quot;Reference Handler&amp;quot; daemon prio=10 tid=0x00171628 nid=0xd in Object.wait() [0xb3e81000..0xb3e81688]
&lt;br&gt;&amp;gt; 	at java.lang.Object.wait(Native Method)
&lt;br&gt;&amp;gt; 	- waiting on &amp;lt;0xb800e6f0&amp;gt; (a java.lang.ref.Reference$Lock)
&lt;br&gt;&amp;gt; 	at java.lang.Object.wait(Object.java:474)
&lt;br&gt;&amp;gt; 	at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:116)
&lt;br&gt;&amp;gt; 	- locked &amp;lt;0xb800e6f0&amp;gt; (a java.lang.ref.Reference$Lock)
&lt;br&gt;&amp;gt; &amp;quot;main&amp;quot; prio=10 tid=0x000385c8 nid=0x1 waiting on condition [0xffbee000..0xffbee8a0]
&lt;br&gt;&amp;gt; 	at sun.misc.Unsafe.park(Native Method)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:118)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1767)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:359)
&lt;br&gt;&amp;gt; 	at java.util.concurrent.ExecutorCompletionService.take(ExecutorCompletionService.java:136)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.migration.Migration.main(Migration.java:201)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.migration.tools.exotics.KtpfMigrator.call(KtpfMigrator.java:44)
&lt;br&gt;&amp;gt; 	at com.formicary.financial.migration.tools.exotics.KtpfMigrator.main(KtpfMigrator.java:26)
&lt;br&gt;&amp;gt; &amp;quot;VM Thread&amp;quot; prio=10 tid=0x0016ef68 nid=0xc runnable 
&lt;br&gt;&amp;gt; &amp;quot;GC task thread#0 (ParallelGC)&amp;quot; prio=10 tid=0x000b9cf0 nid=0x4 runnable 
&lt;br&gt;&amp;gt; &amp;quot;GC task thread#1 (ParallelGC)&amp;quot; prio=10 tid=0x000ba730 nid=0x5 runnable 
&lt;br&gt;&amp;gt; &amp;quot;GC task thread#2 (ParallelGC)&amp;quot; prio=10 tid=0x000bb170 nid=0x6 runnable 
&lt;br&gt;&amp;gt; &amp;quot;GC task thread#3 (ParallelGC)&amp;quot; prio=10 tid=0x000bbbb0 nid=0x7 runnable 
&lt;br&gt;&amp;gt; &amp;quot;GC task thread#4 (ParallelGC)&amp;quot; prio=10 tid=0x000bc5f0 nid=0x8 runnable 
&lt;br&gt;&amp;gt; &amp;quot;GC task thread#5 (ParallelGC)&amp;quot; prio=10 tid=0x000bd030 nid=0x9 runnable 
&lt;br&gt;&amp;gt; &amp;quot;GC task thread#6 (ParallelGC)&amp;quot; prio=10 tid=0x000bda70 nid=0xa runnable 
&lt;br&gt;&amp;gt; &amp;quot;GC task thread#7 (ParallelGC)&amp;quot; prio=10 tid=0x000becb8 nid=0xb runnable 
&lt;br&gt;&amp;gt; &amp;quot;VM Periodic Task Thread&amp;quot; prio=10 tid=0x00182050 nid=0x14 waiting on condition 
&lt;/div&gt;&lt;br&gt;-- 
&lt;br&gt;This message is automatically generated by JIRA.
&lt;br&gt;-
&lt;br&gt;You can reply to this email to add a comment to the issue online.
&lt;br&gt;&lt;br&gt;&lt;br&gt;---------------------------------------------------------------------
&lt;br&gt;To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26816679&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev-unsubscribe@...&lt;/a&gt;
&lt;br&gt;For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26816679&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev-help@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Velocity---Dev-f346.html&quot; embed=&quot;fixTarget[346]&quot; target=&quot;_top&quot; &gt;Velocity - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/-jira--Created%3A-%28VELOCITY-718%29-multi-thread-merge-causes-100--cpu-tp23611527p26816679.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26815298</id>
	<title>[jira] Resolved: (VELOCITY-748) Caught in the while-loop</title>
	<published>2009-12-16T09:40:18Z</published>
	<updated>2009-12-16T09:40:18Z</updated>
	<author>
		<name>Velocity - Dev mailing list-2</name>
	</author>
	<content type="html">&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;[ &lt;a href=&quot;https://issues.apache.org/jira/browse/VELOCITY-748?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://issues.apache.org/jira/browse/VELOCITY-748?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel&lt;/a&gt;&amp;nbsp;]
&lt;br&gt;&lt;br&gt;Nathan Bubna resolved VELOCITY-748.
&lt;br&gt;-----------------------------------
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Resolution: Duplicate
&lt;br&gt;&amp;nbsp; &amp;nbsp; Fix Version/s: 1.7
&lt;br&gt;&lt;br&gt;Yeah, this is pretty clearly a dupe of VELOCITY-718, which i pathetically forgot about completely. &amp;nbsp;Thank you, Jarkko for having a working memory!
&lt;br&gt;&lt;br&gt;This has likely been fixed in the 1.7 branch (See VELOCITY-718), but given my inability to replicate it thus far, i cannot actually confirm that. &amp;nbsp;If someone could provide that confirmation, that would be grand. &amp;nbsp;Either way, i'm currently going to courageously assume (bad!!) that i fixed the problem (really, i do believe it does) and port the fix to the 1.6.x branch.
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Caught in the while-loop
&lt;br&gt;&amp;gt; ------------------------
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Key: VELOCITY-748
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; URL: &lt;a href=&quot;https://issues.apache.org/jira/browse/VELOCITY-748&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://issues.apache.org/jira/browse/VELOCITY-748&lt;/a&gt;&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Project: Velocity
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Issue Type: Bug
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Components: Engine
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;Affects Versions: 1.6.2
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Reporter: Johann Weber
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Priority: Critical
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Fix For: 1.7
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Caught in the infinity loop due to concurrent access to the get and put methods of HashMap which are not synchronized.
&lt;br&gt;&amp;gt; Stacktrace:
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;java.lang.Thread.State: RUNNABLE
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at java.util.HashMap.get(Unknown Source)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.util.introspection.ClassMap$MethodCache.get(ClassMap.java:249)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.util.introspection.ClassMap.findMethod(ClassMap.java:102)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.util.introspection.IntrospectorBase.getMethod(IntrospectorBase.java:105)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.util.introspection.Introspector.getMethod(Introspector.java:94)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.runtime.parser.node.PropertyExecutor.discover(PropertyExecutor.java:99)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.runtime.parser.node.PropertyExecutor.&amp;lt;init&amp;gt;(PropertyExecutor.java:56)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.util.introspection.UberspectImpl.getPropertyGet(UberspectImpl.java:246)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.runtime.parser.node.ASTIdentifier.execute(ASTIdentifier.java:148)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:252)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.runtime.parser.node.ASTReference.evaluate(ASTReference.java:460)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.runtime.parser.node.ASTExpression.evaluate(ASTExpression.java:62)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement.java:85)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:336)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.runtime.directive.Parse.render(Parse.java:260)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:175)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:336)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.runtime.directive.Parse.render(Parse.java:260)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:175)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:336)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.Template.merge(Template.java:328)
&lt;/div&gt;&lt;br&gt;-- 
&lt;br&gt;This message is automatically generated by JIRA.
&lt;br&gt;-
&lt;br&gt;You can reply to this email to add a comment to the issue online.
&lt;br&gt;&lt;br&gt;&lt;br&gt;---------------------------------------------------------------------
&lt;br&gt;To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26815298&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev-unsubscribe@...&lt;/a&gt;
&lt;br&gt;For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26815298&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev-help@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Velocity---Dev-f346.html&quot; embed=&quot;fixTarget[346]&quot; target=&quot;_top&quot; &gt;Velocity - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/-jira--Created%3A-%28VELOCITY-748%29-Caught-in-the-while-loop-tp26774366p26815298.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26815237</id>
	<title>Re: [VOTE] Release Velocity Engine 1.6.3</title>
	<published>2009-12-16T09:36:17Z</published>
	<updated>2009-12-16T09:36:17Z</updated>
	<author>
		<name>Nathan Bubna</name>
	</author>
	<content type="html">Argh. &amp;nbsp;a) sorry, too late. &amp;nbsp;b) no one ever confirmed my fix for
&lt;br&gt;VELOCITY-718, so i never merged it into the 1.6.x branch &amp;nbsp;c) while
&lt;br&gt;waiting for confirmation, i forgot about 718, so i didn't even
&lt;br&gt;remember it when i asked for 748 to be filed. &amp;nbsp;d) i'm apparently doing
&lt;br&gt;too much if i can't even keep track of a critical threading bug.
&lt;br&gt;&lt;br&gt;ok, i'm done whining. &amp;nbsp;at this point, i'm ready to just assume
&lt;br&gt;(yikes!) that my fix for 718 works, and merge it into the 1.6.x branch
&lt;br&gt;and begin working on a 1.6.4 release. &amp;nbsp;considering impending holiday
&lt;br&gt;offline periods, the odds of 1.6.4 coming out in 2009 are not
&lt;br&gt;promising.
&lt;br&gt;&lt;br&gt;2009/12/16 Jarkko Viinamäki-2 &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26815237&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;wyla@...&lt;/a&gt;&amp;gt;:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; -1 No, if critical bugfix VELOCITY-718 is not included as well. If it is, +1.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; --
&lt;br&gt;&amp;gt; View this message in context: &lt;a href=&quot;http://old.nabble.com/-VOTE--Release-Velocity-Engine-1.6.3-tp26751238p26809833.html&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://old.nabble.com/-VOTE--Release-Velocity-Engine-1.6.3-tp26751238p26809833.html&lt;/a&gt;&lt;br&gt;&amp;gt; Sent from the Velocity - Dev mailing list archive at Nabble.com.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; ---------------------------------------------------------------------
&lt;br&gt;&amp;gt; To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26815237&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev-unsubscribe@...&lt;/a&gt;
&lt;br&gt;&amp;gt; For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26815237&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev-help@...&lt;/a&gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;/div&gt;&lt;br&gt;---------------------------------------------------------------------
&lt;br&gt;To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26815237&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev-unsubscribe@...&lt;/a&gt;
&lt;br&gt;For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26815237&amp;i=4&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev-help@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Velocity---Dev-f346.html&quot; embed=&quot;fixTarget[346]&quot; target=&quot;_top&quot; &gt;Velocity - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/-VOTE--Release-Velocity-Engine-1.6.3-tp26751238p26815237.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26809973</id>
	<title>[jira] Updated: (VELOCITY-666) Blockmacro support (allows any AST as macro body argument)</title>
	<published>2009-12-16T03:53:20Z</published>
	<updated>2009-12-16T03:53:20Z</updated>
	<author>
		<name>Velocity - Dev mailing list-2</name>
	</author>
	<content type="html">&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;[ &lt;a href=&quot;https://issues.apache.org/jira/browse/VELOCITY-666?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://issues.apache.org/jira/browse/VELOCITY-666?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel&lt;/a&gt;&amp;nbsp;]
&lt;br&gt;&lt;br&gt;Jarkko Viinamäki updated VELOCITY-666:
&lt;br&gt;--------------------------------------
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; Description: 
&lt;br&gt;Inspired by VELOCITY-583 (BlockMacro support) I implemented the same functionality in a slightly different way.
&lt;br&gt;&lt;br&gt;The new syntax is:
&lt;br&gt;&lt;br&gt;#@yourMacroName($arg1 $arg2) any valid velocity AST here #end
&lt;br&gt;&lt;br&gt;so basically the syntax is exactly the same as for normal macros except you put that @ prefix to the macro name. That tells Velocity that there's a macro AST body that should be passed to the actual macro.
&lt;br&gt;&lt;br&gt;And in the macro you can refer to the passed body 0-N times. Like:
&lt;br&gt;&lt;br&gt;#macro(yourMacroName $foo $bar)
&lt;br&gt;&amp;nbsp; &amp;nbsp;$bodyContent
&lt;br&gt;#end
&lt;br&gt;&lt;br&gt;&amp;nbsp; was:
&lt;br&gt;Inspired by VELOCITY-583 (BlockMacro support) I implemented the same functionality in a slightly different way.
&lt;br&gt;&lt;br&gt;This patch introduces a new directive #call(&amp;quot;mymacro&amp;quot; $arg1 $arg2 ... ) any valid Velocity content here #end
&lt;br&gt;&lt;br&gt;This directive causes a call to defined macro with given arguments AND passes the enclosed AST as an argument which can be referenced with $bodyContent (default, name is configurable).
&lt;br&gt;&lt;br&gt;An example:
&lt;br&gt;&lt;br&gt;&amp;nbsp;#set($foobar = &amp;quot;yeah!&amp;quot;)
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;#macro(strong $txt)
&lt;br&gt;&amp;nbsp;&amp;lt;strong&amp;gt;$bodyContent&amp;lt;/strong&amp;gt; $txt
&lt;br&gt;&amp;nbsp;#end
&lt;br&gt;&lt;br&gt;&amp;nbsp;#call(&amp;quot;strong&amp;quot; $foobar)
&lt;br&gt;&amp;nbsp;&amp;lt;u&amp;gt;This text is underlined and bold&amp;lt;/u&amp;gt;
&lt;br&gt;&amp;nbsp;#end
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&lt;br&gt;Will print:
&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;lt;strong&amp;gt;&amp;lt;u&amp;gt;This text is underlined and bold&amp;lt;u&amp;gt;&amp;lt;/strong&amp;gt; yeah!
&lt;br&gt;&lt;br&gt;Like I commented in &amp;nbsp;VELOCITY-583 the same thing can be done by first using #define to build up some custom AST and then pass that AST as an argument to some macro. While it works, it's not as convenient as this syntax. This patch however increases the amount of code lines in Velocity and the implementation is a bit &amp;quot;hackish&amp;quot; so even I'm not totally convinced whether we should commit this. 
&lt;br&gt;&lt;br&gt;But anyway, here it is, I'd love to hear your comments.
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Summary: Blockmacro support (allows any AST as macro body argument) &amp;nbsp;(was: RFC: new directive: #call)
&lt;br&gt;&lt;br&gt;Modified the issue title and description to reflect better what was actually implemented.
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Blockmacro support (allows any AST as macro body argument)
&lt;br&gt;&amp;gt; ----------------------------------------------------------
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Key: VELOCITY-666
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; URL: &lt;a href=&quot;https://issues.apache.org/jira/browse/VELOCITY-666&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://issues.apache.org/jira/browse/VELOCITY-666&lt;/a&gt;&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Project: Velocity
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Issue Type: Improvement
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;Affects Versions: 1.6.2, 1.7
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Reporter: Jarkko Viinamäki
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Fix For: 1.7
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Attachments: velocity-blockmacro.patch, velocity-call-directive.patch
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Inspired by VELOCITY-583 (BlockMacro support) I implemented the same functionality in a slightly different way.
&lt;br&gt;&amp;gt; The new syntax is:
&lt;br&gt;&amp;gt; #@yourMacroName($arg1 $arg2) any valid velocity AST here #end
&lt;br&gt;&amp;gt; so basically the syntax is exactly the same as for normal macros except you put that @ prefix to the macro name. That tells Velocity that there's a macro AST body that should be passed to the actual macro.
&lt;br&gt;&amp;gt; And in the macro you can refer to the passed body 0-N times. Like:
&lt;br&gt;&amp;gt; #macro(yourMacroName $foo $bar)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;$bodyContent
&lt;br&gt;&amp;gt; #end
&lt;/div&gt;&lt;br&gt;-- 
&lt;br&gt;This message is automatically generated by JIRA.
&lt;br&gt;-
&lt;br&gt;You can reply to this email to add a comment to the issue online.
&lt;br&gt;&lt;br&gt;&lt;br&gt;---------------------------------------------------------------------
&lt;br&gt;To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26809973&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev-unsubscribe@...&lt;/a&gt;
&lt;br&gt;For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26809973&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev-help@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Velocity---Dev-f346.html&quot; embed=&quot;fixTarget[346]&quot; target=&quot;_top&quot; &gt;Velocity - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/-jira--Created%3A-%28VELOCITY-666%29-RFC%3A-new-directive%3A--call-tp21441377p26809973.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26809833</id>
	<title>Re: [VOTE] Release Velocity Engine 1.6.3</title>
	<published>2009-12-16T03:38:56Z</published>
	<updated>2009-12-16T03:38:56Z</updated>
	<author>
		<name>Jarkko Viinamäki-2</name>
	</author>
	<content type="html">-1 No, if critical bugfix VELOCITY-718 is not included as well. If it is, +1.
&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Velocity---Dev-f346.html&quot; embed=&quot;fixTarget[346]&quot; target=&quot;_top&quot; &gt;Velocity - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/-VOTE--Release-Velocity-Engine-1.6.3-tp26751238p26809833.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26809766</id>
	<title>[jira] Commented: (VELOCITY-748) Caught in the while-loop</title>
	<published>2009-12-16T03:30:18Z</published>
	<updated>2009-12-16T03:30:18Z</updated>
	<author>
		<name>Velocity - Dev mailing list-2</name>
	</author>
	<content type="html">&lt;br&gt;&amp;nbsp; &amp;nbsp; [ &lt;a href=&quot;https://issues.apache.org/jira/browse/VELOCITY-748?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&amp;focusedCommentId=12791331#action_12791331&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://issues.apache.org/jira/browse/VELOCITY-748?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&amp;focusedCommentId=12791331#action_12791331&lt;/a&gt;&amp;nbsp;] 
&lt;br&gt;&lt;br&gt;Jarkko Viinamäki commented on VELOCITY-748:
&lt;br&gt;-------------------------------------------
&lt;br&gt;&lt;br&gt;This looks like a duplicate of VELOCITY-718
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Caught in the while-loop
&lt;br&gt;&amp;gt; ------------------------
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Key: VELOCITY-748
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; URL: &lt;a href=&quot;https://issues.apache.org/jira/browse/VELOCITY-748&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://issues.apache.org/jira/browse/VELOCITY-748&lt;/a&gt;&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Project: Velocity
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Issue Type: Bug
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Components: Engine
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;Affects Versions: 1.6.2
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Reporter: Johann Weber
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Priority: Critical
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Caught in the infinity loop due to concurrent access to the get and put methods of HashMap which are not synchronized.
&lt;br&gt;&amp;gt; Stacktrace:
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;java.lang.Thread.State: RUNNABLE
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at java.util.HashMap.get(Unknown Source)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.util.introspection.ClassMap$MethodCache.get(ClassMap.java:249)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.util.introspection.ClassMap.findMethod(ClassMap.java:102)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.util.introspection.IntrospectorBase.getMethod(IntrospectorBase.java:105)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.util.introspection.Introspector.getMethod(Introspector.java:94)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.runtime.parser.node.PropertyExecutor.discover(PropertyExecutor.java:99)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.runtime.parser.node.PropertyExecutor.&amp;lt;init&amp;gt;(PropertyExecutor.java:56)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.util.introspection.UberspectImpl.getPropertyGet(UberspectImpl.java:246)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.runtime.parser.node.ASTIdentifier.execute(ASTIdentifier.java:148)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:252)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.runtime.parser.node.ASTReference.evaluate(ASTReference.java:460)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.runtime.parser.node.ASTExpression.evaluate(ASTExpression.java:62)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement.java:85)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:336)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.runtime.directive.Parse.render(Parse.java:260)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:175)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:336)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.runtime.directive.Parse.render(Parse.java:260)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:175)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:336)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.Template.merge(Template.java:328)
&lt;/div&gt;&lt;br&gt;-- 
&lt;br&gt;This message is automatically generated by JIRA.
&lt;br&gt;-
&lt;br&gt;You can reply to this email to add a comment to the issue online.
&lt;br&gt;&lt;br&gt;&lt;br&gt;---------------------------------------------------------------------
&lt;br&gt;To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26809766&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev-unsubscribe@...&lt;/a&gt;
&lt;br&gt;For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26809766&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev-help@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Velocity---Dev-f346.html&quot; embed=&quot;fixTarget[346]&quot; target=&quot;_top&quot; &gt;Velocity - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/-jira--Created%3A-%28VELOCITY-748%29-Caught-in-the-while-loop-tp26774366p26809766.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26798038</id>
	<title>Re: Include output from another servlet</title>
	<published>2009-12-15T08:57:44Z</published>
	<updated>2009-12-15T08:57:44Z</updated>
	<author>
		<name>Nathan Bubna</name>
	</author>
	<content type="html">With Spring MVC? &amp;nbsp;Yeah, i have that running in an app somewhere, not
&lt;br&gt;sure offhand. &amp;nbsp;Did you have particular questions?
&lt;br&gt;&lt;br&gt;On Tue, Dec 15, 2009 at 6:44 AM, Ben Short &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26798038&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;ben@...&lt;/a&gt;&amp;gt; wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Thanks for this information.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Has anyone had any luck getting velocity tools 2 working with spring?
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; 2009/11/12 Antonio Petrelli &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26798038&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;antonio.petrelli@...&lt;/a&gt;&amp;gt;:
&lt;br&gt;&amp;gt;&amp;gt; 2009/11/12 Ben Short &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26798038&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;ben@...&lt;/a&gt;&amp;gt;:
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; Using jsp I can include the output of another servlet using the following
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; &amp;lt;jsp:include page=&amp;quot;/another/servlet&amp;quot;/&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; Can the same thing be done with velocity?
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Try with the import tool:
&lt;br&gt;&amp;gt;&amp;gt; &lt;a href=&quot;http://velocity.apache.org/tools/devel/javadoc/org/apache/velocity/tools/view/ImportTool.html&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://velocity.apache.org/tools/devel/javadoc/org/apache/velocity/tools/view/ImportTool.html&lt;/a&gt;&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Ciao
&lt;br&gt;&amp;gt;&amp;gt; Antonio
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; ---------------------------------------------------------------------
&lt;br&gt;&amp;gt;&amp;gt; To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26798038&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;user-unsubscribe@...&lt;/a&gt;
&lt;br&gt;&amp;gt;&amp;gt; For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26798038&amp;i=4&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;user-help@...&lt;/a&gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; ---------------------------------------------------------------------
&lt;br&gt;&amp;gt; To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26798038&amp;i=5&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;user-unsubscribe@...&lt;/a&gt;
&lt;br&gt;&amp;gt; For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26798038&amp;i=6&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;user-help@...&lt;/a&gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;/div&gt;&lt;br&gt;---------------------------------------------------------------------
&lt;br&gt;To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26798038&amp;i=7&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;user-unsubscribe@...&lt;/a&gt;
&lt;br&gt;For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26798038&amp;i=8&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;user-help@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Velocity---User-f347.html&quot; embed=&quot;fixTarget[347]&quot; target=&quot;_top&quot; &gt;Velocity - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Include-output-from-another-servlet-tp26317078p26798038.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26798042</id>
	<title>Re: Include output from another servlet</title>
	<published>2009-12-15T08:57:30Z</published>
	<updated>2009-12-15T08:57:30Z</updated>
	<author>
		<name>Nathan Bubna</name>
	</author>
	<content type="html">With Spring MVC? &amp;nbsp;Yeah, i have that running in an app somewhere, not
&lt;br&gt;sure offhand. &amp;nbsp;Did you have particular questions?
&lt;br&gt;&lt;br&gt;On Tue, Dec 15, 2009 at 6:44 AM, Ben Short &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26798042&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;ben@...&lt;/a&gt;&amp;gt; wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Thanks for this information.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Has anyone had any luck getting velocity tools 2 working with spring?
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; 2009/11/12 Antonio Petrelli &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26798042&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;antonio.petrelli@...&lt;/a&gt;&amp;gt;:
&lt;br&gt;&amp;gt;&amp;gt; 2009/11/12 Ben Short &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26798042&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;ben@...&lt;/a&gt;&amp;gt;:
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; Using jsp I can include the output of another servlet using the following
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; &amp;lt;jsp:include page=&amp;quot;/another/servlet&amp;quot;/&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; Can the same thing be done with velocity?
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Try with the import tool:
&lt;br&gt;&amp;gt;&amp;gt; &lt;a href=&quot;http://velocity.apache.org/tools/devel/javadoc/org/apache/velocity/tools/view/ImportTool.html&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://velocity.apache.org/tools/devel/javadoc/org/apache/velocity/tools/view/ImportTool.html&lt;/a&gt;&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Ciao
&lt;br&gt;&amp;gt;&amp;gt; Antonio
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; ---------------------------------------------------------------------
&lt;br&gt;&amp;gt;&amp;gt; To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26798042&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;user-unsubscribe@...&lt;/a&gt;
&lt;br&gt;&amp;gt;&amp;gt; For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26798042&amp;i=4&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;user-help@...&lt;/a&gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; ---------------------------------------------------------------------
&lt;br&gt;&amp;gt; To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26798042&amp;i=5&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;user-unsubscribe@...&lt;/a&gt;
&lt;br&gt;&amp;gt; For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26798042&amp;i=6&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;user-help@...&lt;/a&gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;/div&gt;&lt;br&gt;---------------------------------------------------------------------
&lt;br&gt;To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26798042&amp;i=7&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;user-unsubscribe@...&lt;/a&gt;
&lt;br&gt;For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26798042&amp;i=8&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;user-help@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Velocity---User-f347.html&quot; embed=&quot;fixTarget[347]&quot; target=&quot;_top&quot; &gt;Velocity - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Include-output-from-another-servlet-tp26317078p26798042.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26795005</id>
	<title>Re: Include output from another servlet</title>
	<published>2009-12-15T05:44:05Z</published>
	<updated>2009-12-15T05:44:05Z</updated>
	<author>
		<name>benshort</name>
	</author>
	<content type="html">Thanks for this information.
&lt;br&gt;&lt;br&gt;Has anyone had any luck getting velocity tools 2 working with spring?
&lt;br&gt;&lt;br&gt;2009/11/12 Antonio Petrelli &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26795005&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;antonio.petrelli@...&lt;/a&gt;&amp;gt;:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; 2009/11/12 Ben Short &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26795005&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;ben@...&lt;/a&gt;&amp;gt;:
&lt;br&gt;&amp;gt;&amp;gt; Using jsp I can include the output of another servlet using the following
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;lt;jsp:include page=&amp;quot;/another/servlet&amp;quot;/&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Can the same thing be done with velocity?
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Try with the import tool:
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://velocity.apache.org/tools/devel/javadoc/org/apache/velocity/tools/view/ImportTool.html&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://velocity.apache.org/tools/devel/javadoc/org/apache/velocity/tools/view/ImportTool.html&lt;/a&gt;&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Ciao
&lt;br&gt;&amp;gt; Antonio
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; ---------------------------------------------------------------------
&lt;br&gt;&amp;gt; To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26795005&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;user-unsubscribe@...&lt;/a&gt;
&lt;br&gt;&amp;gt; For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26795005&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;user-help@...&lt;/a&gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;/div&gt;&lt;br&gt;---------------------------------------------------------------------
&lt;br&gt;To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26795005&amp;i=4&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;user-unsubscribe@...&lt;/a&gt;
&lt;br&gt;For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26795005&amp;i=5&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;user-help@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Velocity---User-f347.html&quot; embed=&quot;fixTarget[347]&quot; target=&quot;_top&quot; &gt;Velocity - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Include-output-from-another-servlet-tp26317078p26795005.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26786703</id>
	<title>Re: [RESULT] [VOTE] Release Velocity Engine 1.6.3</title>
	<published>2009-12-14T15:10:12Z</published>
	<updated>2009-12-14T15:10:12Z</updated>
	<author>
		<name>Byron Foster-2</name>
	</author>
	<content type="html">For what it is worth, mines a +0
&lt;br&gt;&lt;br&gt;On Dec 14, 2009, at 11:23 , Nathan Bubna wrote:
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; The vote has passed, i'll try to get this ready for a Wednesday &amp;nbsp;
&lt;br&gt;&amp;gt; announcement.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; +1 from
&lt;br&gt;&amp;gt; Claude Brisson
&lt;br&gt;&amp;gt; Henning Schmiedehausen
&lt;br&gt;&amp;gt; Nathan Bubna
&lt;br&gt;&amp;gt; Malcolm Edgar
&lt;br&gt;&amp;gt; Adrian A.
&lt;br&gt;&amp;gt;
&lt;/div&gt;&lt;br&gt;&lt;br&gt;---------------------------------------------------------------------
&lt;br&gt;To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26786703&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev-unsubscribe@...&lt;/a&gt;
&lt;br&gt;For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26786703&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev-help@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Velocity---Dev-f346.html&quot; embed=&quot;fixTarget[346]&quot; target=&quot;_top&quot; &gt;Velocity - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/-VOTE--Release-Velocity-Engine-1.6.3-tp26751238p26786703.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26782382</id>
	<title>[RESULT] [VOTE] Release Velocity Engine 1.6.3</title>
	<published>2009-12-14T10:23:39Z</published>
	<updated>2009-12-14T10:23:39Z</updated>
	<author>
		<name>Nathan Bubna</name>
	</author>
	<content type="html">The vote has passed, i'll try to get this ready for a Wednesday announcement.
&lt;br&gt;&lt;br&gt;+1 from
&lt;br&gt;Claude Brisson
&lt;br&gt;Henning Schmiedehausen
&lt;br&gt;Nathan Bubna
&lt;br&gt;Malcolm Edgar
&lt;br&gt;Adrian A.
&lt;br&gt;&lt;br&gt;Thanks!
&lt;br&gt;&lt;br&gt;On Mon, Dec 14, 2009 at 8:09 AM, Adrian A. &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26782382&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;a.adrian.tech@...&lt;/a&gt;&amp;gt; wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; +1
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Adrian.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Let's push this one out soon folks.  The release candidate is available
&lt;br&gt;&amp;gt;&amp;gt; here:
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &lt;a href=&quot;http://people.apache.org/~nbubna/velocity/engine/1.6.3/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://people.apache.org/~nbubna/velocity/engine/1.6.3/&lt;/a&gt;&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; [ ] +1 Let's do it
&lt;br&gt;&amp;gt;&amp;gt; [ ] +0 Have fun; i don't care.
&lt;br&gt;&amp;gt;&amp;gt; [ ] -0  Not sure about this, but i won't stop you.
&lt;br&gt;&amp;gt;&amp;gt; [ ] -1 No, because __________________
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; I would really love to see the necessary +1 votes by Monday (12/14)
&lt;br&gt;&amp;gt;&amp;gt; afternoon, so i can announce a Wed (12/16) release.   Please, please
&lt;br&gt;&amp;gt;&amp;gt; don't leave this vote to drag out or require a re-vote.  I may not
&lt;br&gt;&amp;gt;&amp;gt; have time for this again until the new year.  Oh, and please forgive
&lt;br&gt;&amp;gt;&amp;gt; this little guilt trip.   I will still appreciate all of you even if
&lt;br&gt;&amp;gt;&amp;gt; it doesn't work out, but i'm rather hoping it does happen. :)
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; On Mon, Dec 7, 2009 at 4:18 PM, Nathan Bubna&amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26782382&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;nbubna@...&lt;/a&gt;&amp;gt;  wrote:
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; Ok, it seems to me that VELOCITY-731 set back performance enough for
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; people that we should not wait for 1.7 to have an official release
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; with the new &amp;quot;directive.if.tostring.nullcheck&amp;quot; config switch
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; available.  So, here's a 1.6.3 test build.  Please try it out and
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; report problems ASAP. :)
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; &lt;a href=&quot;http://people.apache.org/~nbubna/velocity/engine/1.6.3/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://people.apache.org/~nbubna/velocity/engine/1.6.3/&lt;/a&gt;&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; I plan to call for a release vote on Fri (12/11), aiming for a 12/16
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; release date.
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; (personal note: based on rev 888167 in the 1.6.x branch)
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; ---------------------------------------------------------------------
&lt;br&gt;&amp;gt; To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26782382&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev-unsubscribe@...&lt;/a&gt;
&lt;br&gt;&amp;gt; For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26782382&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev-help@...&lt;/a&gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;/div&gt;&lt;br&gt;---------------------------------------------------------------------
&lt;br&gt;To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26782382&amp;i=4&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev-unsubscribe@...&lt;/a&gt;
&lt;br&gt;For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26782382&amp;i=5&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev-help@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Velocity---Dev-f346.html&quot; embed=&quot;fixTarget[346]&quot; target=&quot;_top&quot; &gt;Velocity - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/-VOTE--Release-Velocity-Engine-1.6.3-tp26751238p26782382.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26779389</id>
	<title>Re: [VOTE] Release Velocity Engine 1.6.3</title>
	<published>2009-12-14T07:09:25Z</published>
	<updated>2009-12-14T07:09:25Z</updated>
	<author>
		<name>Adrian A.</name>
	</author>
	<content type="html">+1
&lt;br&gt;&lt;br&gt;Adrian.
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Let's push this one out soon folks. &amp;nbsp;The release candidate is available here:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://people.apache.org/~nbubna/velocity/engine/1.6.3/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://people.apache.org/~nbubna/velocity/engine/1.6.3/&lt;/a&gt;&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; [ ] +1 Let's do it
&lt;br&gt;&amp;gt; [ ] +0 Have fun; i don't care.
&lt;br&gt;&amp;gt; [ ] -0 &amp;nbsp;Not sure about this, but i won't stop you.
&lt;br&gt;&amp;gt; [ ] -1 No, because __________________
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I would really love to see the necessary +1 votes by Monday (12/14)
&lt;br&gt;&amp;gt; afternoon, so i can announce a Wed (12/16) release. &amp;nbsp; Please, please
&lt;br&gt;&amp;gt; don't leave this vote to drag out or require a re-vote. &amp;nbsp;I may not
&lt;br&gt;&amp;gt; have time for this again until the new year. &amp;nbsp;Oh, and please forgive
&lt;br&gt;&amp;gt; this little guilt trip. &amp;nbsp; I will still appreciate all of you even if
&lt;br&gt;&amp;gt; it doesn't work out, but i'm rather hoping it does happen. :)
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; On Mon, Dec 7, 2009 at 4:18 PM, Nathan Bubna&amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26779389&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;nbubna@...&lt;/a&gt;&amp;gt; &amp;nbsp;wrote:
&lt;br&gt;&amp;gt;&amp;gt; Ok, it seems to me that VELOCITY-731 set back performance enough for
&lt;br&gt;&amp;gt;&amp;gt; people that we should not wait for 1.7 to have an official release
&lt;br&gt;&amp;gt;&amp;gt; with the new &amp;quot;directive.if.tostring.nullcheck&amp;quot; config switch
&lt;br&gt;&amp;gt;&amp;gt; available. &amp;nbsp;So, here's a 1.6.3 test build. &amp;nbsp;Please try it out and
&lt;br&gt;&amp;gt;&amp;gt; report problems ASAP. :)
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &lt;a href=&quot;http://people.apache.org/~nbubna/velocity/engine/1.6.3/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://people.apache.org/~nbubna/velocity/engine/1.6.3/&lt;/a&gt;&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; I plan to call for a release vote on Fri (12/11), aiming for a 12/16
&lt;br&gt;&amp;gt;&amp;gt; release date.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; (personal note: based on rev 888167 in the 1.6.x branch)
&lt;br&gt;&amp;gt;&amp;gt;
&lt;/div&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;---------------------------------------------------------------------
&lt;br&gt;To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26779389&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev-unsubscribe@...&lt;/a&gt;
&lt;br&gt;For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26779389&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev-help@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Velocity---Dev-f346.html&quot; embed=&quot;fixTarget[346]&quot; target=&quot;_top&quot; &gt;Velocity - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/-VOTE--Release-Velocity-Engine-1.6.3-tp26751238p26779389.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26774366</id>
	<title>[jira] Created: (VELOCITY-748) Caught in the while-loop</title>
	<published>2009-12-14T00:28:18Z</published>
	<updated>2009-12-14T00:28:18Z</updated>
	<author>
		<name>Velocity - Dev mailing list-2</name>
	</author>
	<content type="html">Caught in the while-loop
&lt;br&gt;------------------------
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Key: VELOCITY-748
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;URL: &lt;a href=&quot;https://issues.apache.org/jira/browse/VELOCITY-748&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://issues.apache.org/jira/browse/VELOCITY-748&lt;/a&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Project: Velocity
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Issue Type: Bug
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Components: Engine
&lt;br&gt;&amp;nbsp; &amp;nbsp; Affects Versions: 1.6.2
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Reporter: Johann Weber
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Priority: Critical
&lt;br&gt;&lt;br&gt;&lt;br&gt;Caught in the infinity loop due to concurrent access to the get and put methods of HashMap which are not synchronized.
&lt;br&gt;Stacktrace:
&lt;br&gt;&amp;nbsp; &amp;nbsp;java.lang.Thread.State: RUNNABLE
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at java.util.HashMap.get(Unknown Source)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.util.introspection.ClassMap$MethodCache.get(ClassMap.java:249)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.util.introspection.ClassMap.findMethod(ClassMap.java:102)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.util.introspection.IntrospectorBase.getMethod(IntrospectorBase.java:105)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.util.introspection.Introspector.getMethod(Introspector.java:94)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.runtime.parser.node.PropertyExecutor.discover(PropertyExecutor.java:99)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.runtime.parser.node.PropertyExecutor.&amp;lt;init&amp;gt;(PropertyExecutor.java:56)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.util.introspection.UberspectImpl.getPropertyGet(UberspectImpl.java:246)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.runtime.parser.node.ASTIdentifier.execute(ASTIdentifier.java:148)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:252)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.runtime.parser.node.ASTReference.evaluate(ASTReference.java:460)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.runtime.parser.node.ASTExpression.evaluate(ASTExpression.java:62)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement.java:85)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:336)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.runtime.directive.Parse.render(Parse.java:260)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:175)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:336)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.runtime.directive.Parse.render(Parse.java:260)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:175)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:336)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at org.apache.velocity.Template.merge(Template.java:328)
&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;This message is automatically generated by JIRA.
&lt;br&gt;-
&lt;br&gt;You can reply to this email to add a comment to the issue online.
&lt;br&gt;&lt;br&gt;&lt;br&gt;---------------------------------------------------------------------
&lt;br&gt;To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26774366&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev-unsubscribe@...&lt;/a&gt;
&lt;br&gt;For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26774366&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev-help@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Velocity---Dev-f346.html&quot; embed=&quot;fixTarget[346]&quot; target=&quot;_top&quot; &gt;Velocity - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/-jira--Created%3A-%28VELOCITY-748%29-Caught-in-the-while-loop-tp26774366p26774366.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26771331</id>
	<title>Re: [VOTE] Release Velocity Engine 1.6.3</title>
	<published>2009-12-13T16:16:38Z</published>
	<updated>2009-12-13T16:16:38Z</updated>
	<author>
		<name>Malcolm Edgar-2</name>
	</author>
	<content type="html">+1
&lt;br&gt;&lt;br&gt;regards Malcolm Edgar
&lt;br&gt;&lt;br&gt;On Mon, Dec 14, 2009 at 9:55 AM, Nathan Bubna &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26771331&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;nbubna@...&lt;/a&gt;&amp;gt; wrote:
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; And my +1 makes three. :)
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; On Fri, Dec 11, 2009 at 1:48 PM, Nathan Bubna &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26771331&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;nbubna@...&lt;/a&gt;&amp;gt; wrote:
&lt;br&gt;&amp;gt; &amp;gt; Let's push this one out soon folks. &amp;nbsp;The release candidate is available
&lt;br&gt;&amp;gt; here:
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; &lt;a href=&quot;http://people.apache.org/~nbubna/velocity/engine/1.6.3/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://people.apache.org/~nbubna/velocity/engine/1.6.3/&lt;/a&gt;&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; [ ] +1 Let's do it
&lt;br&gt;&amp;gt; &amp;gt; [ ] +0 Have fun; i don't care.
&lt;br&gt;&amp;gt; &amp;gt; [ ] -0 &amp;nbsp;Not sure about this, but i won't stop you.
&lt;br&gt;&amp;gt; &amp;gt; [ ] -1 No, because __________________
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; I would really love to see the necessary +1 votes by Monday (12/14)
&lt;br&gt;&amp;gt; &amp;gt; afternoon, so i can announce a Wed (12/16) release. &amp;nbsp; Please, please
&lt;br&gt;&amp;gt; &amp;gt; don't leave this vote to drag out or require a re-vote. &amp;nbsp;I may not
&lt;br&gt;&amp;gt; &amp;gt; have time for this again until the new year. &amp;nbsp;Oh, and please forgive
&lt;br&gt;&amp;gt; &amp;gt; this little guilt trip. &amp;nbsp; I will still appreciate all of you even if
&lt;br&gt;&amp;gt; &amp;gt; it doesn't work out, but i'm rather hoping it does happen. :)
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; On Mon, Dec 7, 2009 at 4:18 PM, Nathan Bubna &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26771331&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;nbubna@...&lt;/a&gt;&amp;gt; wrote:
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; Ok, it seems to me that VELOCITY-731 set back performance enough for
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; people that we should not wait for 1.7 to have an official release
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; with the new &amp;quot;directive.if.tostring.nullcheck&amp;quot; config switch
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; available. &amp;nbsp;So, here's a 1.6.3 test build. &amp;nbsp;Please try it out and
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; report problems ASAP. :)
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; &lt;a href=&quot;http://people.apache.org/~nbubna/velocity/engine/1.6.3/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://people.apache.org/~nbubna/velocity/engine/1.6.3/&lt;/a&gt;&lt;br&gt;&amp;gt; &amp;gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; I plan to call for a release vote on Fri (12/11), aiming for a 12/16
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; release date.
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; (personal note: based on rev 888167 in the 1.6.x branch)
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; ---------------------------------------------------------------------
&lt;br&gt;&amp;gt; To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26771331&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev-unsubscribe@...&lt;/a&gt;
&lt;br&gt;&amp;gt; For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26771331&amp;i=4&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev-help@...&lt;/a&gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&lt;/div&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Velocity---Dev-f346.html&quot; embed=&quot;fixTarget[346]&quot; target=&quot;_top&quot; &gt;Velocity - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/-VOTE--Release-Velocity-Engine-1.6.3-tp26751238p26771331.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26770663</id>
	<title>Re: [VOTE] Release Velocity Engine 1.6.3</title>
	<published>2009-12-13T14:55:09Z</published>
	<updated>2009-12-13T14:55:09Z</updated>
	<author>
		<name>Nathan Bubna</name>
	</author>
	<content type="html">And my +1 makes three. :)
&lt;br&gt;&lt;br&gt;On Fri, Dec 11, 2009 at 1:48 PM, Nathan Bubna &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26770663&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;nbubna@...&lt;/a&gt;&amp;gt; wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Let's push this one out soon folks.  The release candidate is available here:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://people.apache.org/~nbubna/velocity/engine/1.6.3/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://people.apache.org/~nbubna/velocity/engine/1.6.3/&lt;/a&gt;&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; [ ] +1 Let's do it
&lt;br&gt;&amp;gt; [ ] +0 Have fun; i don't care.
&lt;br&gt;&amp;gt; [ ] -0  Not sure about this, but i won't stop you.
&lt;br&gt;&amp;gt; [ ] -1 No, because __________________
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I would really love to see the necessary +1 votes by Monday (12/14)
&lt;br&gt;&amp;gt; afternoon, so i can announce a Wed (12/16) release.   Please, please
&lt;br&gt;&amp;gt; don't leave this vote to drag out or require a re-vote.  I may not
&lt;br&gt;&amp;gt; have time for this again until the new year.  Oh, and please forgive
&lt;br&gt;&amp;gt; this little guilt trip.   I will still appreciate all of you even if
&lt;br&gt;&amp;gt; it doesn't work out, but i'm rather hoping it does happen. :)
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; On Mon, Dec 7, 2009 at 4:18 PM, Nathan Bubna &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26770663&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;nbubna@...&lt;/a&gt;&amp;gt; wrote:
&lt;br&gt;&amp;gt;&amp;gt; Ok, it seems to me that VELOCITY-731 set back performance enough for
&lt;br&gt;&amp;gt;&amp;gt; people that we should not wait for 1.7 to have an official release
&lt;br&gt;&amp;gt;&amp;gt; with the new &amp;quot;directive.if.tostring.nullcheck&amp;quot; config switch
&lt;br&gt;&amp;gt;&amp;gt; available.  So, here's a 1.6.3 test build.  Please try it out and
&lt;br&gt;&amp;gt;&amp;gt; report problems ASAP. :)
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &lt;a href=&quot;http://people.apache.org/~nbubna/velocity/engine/1.6.3/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://people.apache.org/~nbubna/velocity/engine/1.6.3/&lt;/a&gt;&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; I plan to call for a release vote on Fri (12/11), aiming for a 12/16
&lt;br&gt;&amp;gt;&amp;gt; release date.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; (personal note: based on rev 888167 in the 1.6.x branch)
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;/div&gt;&lt;br&gt;---------------------------------------------------------------------
&lt;br&gt;To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26770663&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev-unsubscribe@...&lt;/a&gt;
&lt;br&gt;For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26770663&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev-help@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Velocity---Dev-f346.html&quot; embed=&quot;fixTarget[346]&quot; target=&quot;_top&quot; &gt;Velocity - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/-VOTE--Release-Velocity-Engine-1.6.3-tp26751238p26770663.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26768788</id>
	<title>Re: [VOTE] Release Velocity Engine 1.6.3</title>
	<published>2009-12-13T11:13:39Z</published>
	<updated>2009-12-13T11:13:39Z</updated>
	<author>
		<name>Henning Schmiedehausen-4</name>
	</author>
	<content type="html">+1 looks good.
&lt;br&gt;&lt;br&gt;-h
&lt;br&gt;&lt;br&gt;&lt;br&gt;On Fri, Dec 11, 2009 at 12:48, Nathan Bubna &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26768788&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;nbubna@...&lt;/a&gt;&amp;gt; wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Let's push this one out soon folks.  The release candidate is available here:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://people.apache.org/~nbubna/velocity/engine/1.6.3/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://people.apache.org/~nbubna/velocity/engine/1.6.3/&lt;/a&gt;&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; [ ] +1 Let's do it
&lt;br&gt;&amp;gt; [ ] +0 Have fun; i don't care.
&lt;br&gt;&amp;gt; [ ] -0  Not sure about this, but i won't stop you.
&lt;br&gt;&amp;gt; [ ] -1 No, because __________________
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I would really love to see the necessary +1 votes by Monday (12/14)
&lt;br&gt;&amp;gt; afternoon, so i can announce a Wed (12/16) release.   Please, please
&lt;br&gt;&amp;gt; don't leave this vote to drag out or require a re-vote.  I may not
&lt;br&gt;&amp;gt; have time for this again until the new year.  Oh, and please forgive
&lt;br&gt;&amp;gt; this little guilt trip.   I will still appreciate all of you even if
&lt;br&gt;&amp;gt; it doesn't work out, but i'm rather hoping it does happen. :)
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; On Mon, Dec 7, 2009 at 4:18 PM, Nathan Bubna &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26768788&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;nbubna@...&lt;/a&gt;&amp;gt; wrote:
&lt;br&gt;&amp;gt;&amp;gt; Ok, it seems to me that VELOCITY-731 set back performance enough for
&lt;br&gt;&amp;gt;&amp;gt; people that we should not wait for 1.7 to have an official release
&lt;br&gt;&amp;gt;&amp;gt; with the new &amp;quot;directive.if.tostring.nullcheck&amp;quot; config switch
&lt;br&gt;&amp;gt;&amp;gt; available.  So, here's a 1.6.3 test build.  Please try it out and
&lt;br&gt;&amp;gt;&amp;gt; report problems ASAP. :)
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &lt;a href=&quot;http://people.apache.org/~nbubna/velocity/engine/1.6.3/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://people.apache.org/~nbubna/velocity/engine/1.6.3/&lt;/a&gt;&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; I plan to call for a release vote on Fri (12/11), aiming for a 12/16
&lt;br&gt;&amp;gt;&amp;gt; release date.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; (personal note: based on rev 888167 in the 1.6.x branch)
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; ---------------------------------------------------------------------
&lt;br&gt;&amp;gt; To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26768788&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;private-unsubscribe@...&lt;/a&gt;
&lt;br&gt;&amp;gt; For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26768788&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;private-help@...&lt;/a&gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;/div&gt;&lt;br&gt;---------------------------------------------------------------------
&lt;br&gt;To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26768788&amp;i=4&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev-unsubscribe@...&lt;/a&gt;
&lt;br&gt;For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26768788&amp;i=5&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev-help@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Velocity---Dev-f346.html&quot; embed=&quot;fixTarget[346]&quot; target=&quot;_top&quot; &gt;Velocity - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/-VOTE--Release-Velocity-Engine-1.6.3-tp26751238p26768788.html" />
</entry>

</feed>
