I am trying to use the MarkupTemplateEngine to render a template in MJML but after trying for a while I am starting to doubt if it is possible. Is it possible or not ? If yes, I would like to have an example that works to test with.
So far what I did :
import groovy.text.markup.*
String mjmlTemplate = '''
mjml {
mj-head {
mj-title('Hello World')
mj-preview('This is a preview text')
}
mj-body {
mj-section {
mj-column {
mj-text('Hello World from MJML')
}
}
}
}
'''
TemplateConfiguration config = new TemplateConfiguration();
MarkupTemplateEngine engine = new MarkupTemplateEngine(config);
def template = engine.createTemplate(mjmlTemplate)
def renderedMJML = template.make().toString()
println renderedMJML
the error I got :
Caught: java.lang.NullPointerException: Cannot invoke method minus() on null object
java.lang.NullPointerException: Cannot invoke method minus() on null object
at GeneratedMarkupTemplate0$_run_closure1$_closure2.doCall(GeneratedMarkupTemplate0:4)
at GeneratedMarkupTemplate0$_run_closure1$_closure2.doCall(GeneratedMarkupTemplate0)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
at GeneratedMarkupTemplate0$_run_closure1.doCall(GeneratedMarkupTemplate0:3)
at GeneratedMarkupTemplate0$_run_closure1.doCall(GeneratedMarkupTemplate0)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
at GeneratedMarkupTemplate0.run(GeneratedMarkupTemplate0:2)
at test.run(test.groovy:30)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
If I test with rendering HTML it works fine.
New contributor
Grace is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.