import java.io.FileInputStream;
import java.io.StringWriter;
import java.util.Map;
+import java.util.Map.Entry;
import java.util.Properties;
import org.apache.velocity.Template;
import org.apache.velocity.VelocityContext;
try (FileInputStream in = new FileInputStream(configDir + "/" + TEMPLATE_PROPERTIES_FILE_NAME)) {
props.load(in);
} catch (Exception e) {
- logger.error("Caught exception loading properties!", e);
+ logger.warn("Properties not loaded for template node, using sensible defaults. " + e.getMessage());
}
// give sensible defaults for required properties
VelocityContext context = new VelocityContext();
context.put("ctx", ctx);
context.put("params", params);
+ //Adding these values directly to context makes working with the values cleaner
+ for (Entry<String, String> entry : params.entrySet()) {
+ context.put(entry.getKey(), entry.getValue());
+ }
StringWriter sw = new StringWriter();
template.merge(context, sw);
ctx.setAttribute(outputPath, sw.toString());
}
}
-}
\ No newline at end of file
+}