[ https://issues.apache.org/jira/browse/JEXL-198?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15316640#comment-15316640 ]
Terefang Verigorn edited comment on JEXL-198 at 6/6/16 3:29 PM: ---------------------------------------------------------------- i poked around the source and like to propose the following fixes: in JxltEngine.Template insert: {code} public Map<String, Object> getPragmas(); {code} in TemplateScript insert: {code} public Map<String, Object> getPragmas() { return this.getScript().getPragmas(); } {code} hope that helps. was (Author: terefang): i poked around the source and like to propose the following fixes: in JxltEngine.Template insert: {code} Map<String, Object> getPragmas(); {code} in TemplateScript insert: {code} Map<String, Object> getPragmas() { return this.getScript().getPragmas(); } {code} hope that helps. > JxltEngine Template deos not expose pragmas > ------------------------------------------- > > Key: JEXL-198 > URL: https://issues.apache.org/jira/browse/JEXL-198 > Project: Commons JEXL > Issue Type: Improvement > Affects Versions: 3.0, 3.0.1, 3.1 > Environment: any > Reporter: Terefang Verigorn > Priority: Minor > > JexlScript objects have a getPragmas() method which is awesome useful to > communicate static information after compilation/parsing but before > evaluation. > JxltEngine.Template objects lack that method. > usage case: JexlServlet vs JexlTemplateServlet > JexlServlet/output-csv.jxp: > {code} > #pragma output-charset "UTF-8" > #pragma output-content-type "text/csv" > _out.println("col1;col2;col3;col4;col5"); > for(row : _data) > { > _out.print(row.col1+";"); > _out.print(row.col2+";"); > _out.print(row.col3+";"); > _out.print(row.col4+";"); > _out.println(row.col5); > } > {code} > JexlTemplateServlet/output-csv.jxt: > {code} > $$ #pragma output-charset "UTF-8" > $$ #pragma output-content-type "text/csv" > col1;col2;col3;col4;col5 > $$ for(row : _data) { > ${row.col1};${row.col2};${row.col3};${row.col4};${row.col5} > $$ } > {code} > but since we cant get the pragmas from the template we have to write; > {code} > $$ http_response.setCharset("UTF-8"); > $$ http_response.setContentType("text/csv"); > col1;col2;col3;col4;col5 > $$ for(row : _data) { > ${row.col1};${row.col2};${row.col3};${row.col4};${row.col5} > $$ } > {code} > The actual case is that the templating engine cant be used "technology > agnostic", as we might want to use the same script for both http and mail (or > sms, xmpp, etc) formatting -- This message was sent by Atlassian JIRA (v6.3.4#6332)