Tag: freemarker

Freemarker在maven生成的jar中加载模板的位置

让我澄清一下我目前的做法。 我有一个maven项目,包架构如下所示: 的src / main / JAVA / COM / gearon /应用/ App.java 的src /主/ JAVA / COM / gearon /应用/配置/ Config.java 的src / main / JAVA / COM / gearon /应用程序/数据模型/ *。java的 我尝试使用下面的代码设置目录在Config.java中加载模板的目录: cfg = new Configuration(); cfg.setClassForTemplateLoading(Config.class, “/templates”); cfg.setDefaultEncoding(“UTF-8”); cfg.setTemplateExceptionHandler(TemplateExceptionHandler.RETHROW_HANDLER); 我把模板放在src / main / java / com / gearon / app / templates下 […]

使用freemarker生成html以在电子邮件中发送,无论如何使用渲染的jsp页面?

使用Spring和java邮件发件人发送电子邮件。 无论如何我可以使用普通的jsp视图和jstl标签 – 我不想学习另一堆标签/语法? 目前我的代码如下所示: StringBuffer content = new StringBuffer(); Configuration configuration = freeMarkerConfigurer.getConfiguration(); String templateName = “vslEmail.ftl”; Map templateVars = new HashMap(); templateVars.put(“firstName”, “john”); templateVars.put(“surname”, “doe”); try { content.append(FreeMarkerTemplateUtils.processTemplateIntoString(configuration.getTemplate(ftlName), tempalteVars)); } catch (Exception e) { // handle } // content.append(“Test data”); sendMime(defaultEmailAddress, subject, content.toString()); 我更愿意引用一个jsp而不是ftl?

Freemarker和Struts 2,有时候它会计算为序列+ extended_hash

首先让我说使用Struts2 + Freemarker是一个真正的爆炸。 但是有些东西让我发疯,因为我无法理解为什么会这样。 我在这里问,也许其他人有想法分享它。 我有一个行动,有财产。 说 private String myText; 然后我有一个二传手和一个吸气剂: public void setMyText(String myText) { this.myText = myText; } public String getMyText() { if (myText == null) myText = “(empty)”; return this.myText; } 结果(在struts.xml中)是一个freemarker结果。 所以在我的Freemarker模板中有一行如下: The text is: ${myText} 现在考虑我正在调用没有任何文本参数的动作:说url是 http:localhost:8080/myapp/myaction 由于getter提供了一个默认值,当处理动作并将结果传递给我的模板时,该属性被设置为默认值; 所以我得到(浏览器端的HTML) The text is: (empty) 如果我用参数集调用我的动作,而不是(我的意思是: http:localhost:8080/myapp/myaction?myText=hallo )事情出错了。 Freemarker触发以下exception: Exception occurred during […]

如何在另一个中嵌入一个DropWizard(带有freemarker)视图?

我正在使用DropWizard和Freemarker构建一个视图,该视图根据Web服务的结果显示不同类型的表单。 我已经将表单创建为视图 – 每个都有自己的ftl。 所以,在我的资源中,我发现我需要哪种forms,然后加载main.ftl,将表单视图作为参数传递(见下文)。 这不起作用。 谁能看到我们哪里出错? 或者使用DropWizard和freemarker将视图链接在一起有一种完全不同的方式吗? @GET public Form getForm() { FormView view = new FormView(service.getForm()); return new MainView(view); } public class FormView extends View { private final Form form; public FormView(Form form) { super(“formView.ftl”); this.form = form; } public Form getForm() { return form; } } public class MainView extends View { […]

Freemarker,PDF,页眉/页脚和分页符

Freemarker的一个常见用途是生成PDF。 不幸的是,我必须生成一个包含大量页面的pdf,并且“他们”要求我提供一些包含一些信息的页眉和一些页脚,例如“第2/60页”等等… 在网上搜索我发现了如何创建一个宏模板,但它只共享一些常见的标签(如css),但它没有告诉freemarker如何管理多页PDF。 除此之外,有时我在ftl内部有一个“分页符css类”,所以我无法确定创建新页面的时间和地点。 我在Java上使用Freemakrer 2.3 谢谢你的帮助。

如何从Freemarker模板访问Java系统属性?

我开始使用Freemarker来组装简单的HTML页面,使用FMPP Maven插件 。 到现在为止还挺好。 但我需要做的一件事是在页面上包含系统属性的值(Maven提供的系统属性之一)。 有没有办法从Freemarker模板访问系统属性? (如果没有,我可能只需要破解插件以允许从Maven传递值)

找不到Freemarker模板

我目前正试图让Freemarker使用Spring处理我的应用程序。 无论我尝试什么,我都会不断找到模板。 我不确定我是否正确配置了配置,但它从未找到我的模板。 这是我的spring bean配置: 每当我尝试在freemaker配置上调用getTemplate时,它总是发回模板未找到错误。 所以,如果我这样做 configuration.getTemplate(“testTemplate.ftl”) 它总是抛出IOException。 我不确定是否有人知道我做错了什么。 感谢你的帮助!

使用FreeMarker的Spring:无法解析名为“MyServlet”的servlet中名为“Home”的视图

我正在尝试创建一个非常简单的FreeMarker和Spring集成。 但是,当我运行我的示例时,我得到一个例外: GRAVE: Servlet.service() for servlet MyServlet threw exception javax.servlet.ServletException: Could not resolve view with name ‘Home’ in servlet with name ‘MyServlet’ at org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1162) at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:950) at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:852) at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:882) at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:778) at javax.servlet.http.HttpServlet.service(HttpServlet.java:617) at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857) at […]

将Spring Security JspTagLib添加到Freemarker模板 – 控制器unit testing问题

我已经将spring jsp security taglib添加到freemarker模板,因为我使用freemarker来查看我的web应用程序而不是jsps。 对于任何搜索如何进行设置的人,我发现添加弹簧库以便在Freemarker中使用JSP Taglibs以获得安全性是一个非常有用的问题。 总之,将以下内容添加到您希望使用标记的* .ftl文件中: 然后假设您正在使用maven将以下内容添加到您的pom.xml: org.springframework.security spring-security-taglibs ${spring.security.version} 一旦我设置了它,我运行我的弹簧控制器unit testing,他们都失败了。 问题是他们需要el-api.jar和jsp-api.jar来解决如何呈现Jsp标签。 它们作为Web应用程序运行的容器(tomcat)的一部分包含在内,因此应用程序的正常运行不需要它们。 所以我在测试范围内添加了这些作为maven依赖项。 javax.el el-api 2.2 test javax.servlet jsp-api 2.0 test 通过这个修复我的测试也抛出了一个错误,他们无法找到.tld文件的映射,即使它在你添加spring-security-taglibs maven依赖项时包含它。 org.springframework.web.util.NestedServletException: Request processing failed; nested exception is freemarker.template.TemplateModelException: No mapping defined for http://www.springframework.org/security/tags The failing instruction (print stack trace for 2 more): ==> #assign security = JspTaglibs[“http:/… [in […]

循环语句的freemarker模板

我想在freemarker模板中创建for语句。 我正在阅读如何http://freemarker.sourceforge.net/,但只有列表。 我如何创建声明或foreach。 parameter.put(“size”, size); 我想在freemarker模板中创建语句之类的 for (int number = 1; number <= size; number++) {