Tried your suggestion, still getting an error:
Caused by: java.lang.IllegalArgumentException: Encountered '$' at
index position: ids[
at org.orbroker.SQLParser$.inParmIdx(SQLParser.scala:80)
at org.orbroker.SQLParser$.org$orbroker$SQLParser$
$handleLine(SQLParser.scala:41)
at org.orbroker.SQLParser$$anonfun$parse$1.apply(SQLParser.scala:17)
at org.orbroker.SQLParser$$anonfun$parse$1.apply(SQLParser.scala:17)
at scala.collection.mutable.ResizableArray
$class.foreach(ResizableArray.scala:60)
at scala.collection.mutable.ArrayBuffer.foreach(ArrayBuffer.scala:44)
at org.orbroker.SQLParser$.parse(SQLParser.scala:17)
at org.orbroker.SQLStatement$.parseSQL(SQLStatement.scala:37)
at org.orbroker.StaticStatement.<init>(StaticStatement.scala:15)
at org.orbroker.config.BrokerBuilder$$anon
$1.<init>(BrokerBuilder.scala:111)
Query now looks like:
SELECT t.template_id, t.interface_name, t.node_type_id,
tam.template_attribute_map_id, tam.attribute_id, tam.optional,
tam.default_value
FROM templates as t, template_attributes_map as tam
WHERE t.template_id = tam.template_id
AND t.node_type_id IN (
<#if ids??>
<#list ids as id>
<#if (id_index > 0)> , </#if> :ids[${id_index}]
</#list>
</#if>
)