当前位置: 首页 > 知识库问答 >
问题:

Spring启动:在Web应用程序中配置FreeMarkerConfigurationFactoryBean

牛智志
2023-03-14

我正在尝试在web应用程序中使用Freemarker进行电子邮件模板制作。

我声明了一个FreeMarkerConfiguration FactoryBean,如下所示:

@Bean
public FreeMarkerConfigurationFactoryBean freeMarkerConfigurationFactoryBean(EmailTemplateService templateService) {
    FreeMarkerConfigurationFactoryBean configurationFactoryBean = new FreeMarkerConfigurationFactoryBean();
    configurationFactoryBean.setPreTemplateLoaders(templateService);
    return configurationFactoryBean;
}

运行我的JUnit时一切正常,但在我的webapp中运行时,我的bean被Spring启动FreeMarkerAutoConfiguration“覆盖”。

我已尝试:

  1. 从我的gradle文件中删除sping-boot-starter-freemarker
  2. @EnableAutoConfiguration(排除={FreeMarkerAutoConfigurationk.class})
  3. spring.freemarker.enabled=false

但没有成功。有什么想法吗?

谢谢各位。

共有1个答案

沈博涉
2023-03-14

由于您的应用程序是一个Web应用程序,您感兴趣的是Spring Boot的FreeMarkerWebConfiguration。它不使用FreeMarkerConfigurationFactoryBean,而是使用Freemarkerconfiguer。您应该创建一个FreeMarkerConfigure bean,并根据需要进行配置。例如:

@Bean
public FreeMarkerConfigurer freeMarkerConfigurer(EmailTemplateService templateService) {
    FreeMarkerConfigurer configurer = new FreeMarkerConfigurer();
    configurer.setPreTemplateLoaders(templateService);
    return configurer;
}
 类似资料:
  • “Spring-Boot-AutoConfigure”,版本:'2.4.1'

  • 我不熟悉测微计和普罗米修斯,我只使用dropwizards的指标。这让我有点困扰,我实际上需要有3个不同的实例来运行以查看指标 带测微计的Spring靴应用程序本身 使用dropwizard,我可以立即公开聚合指标。 这就是为什么我很好奇是否有可能将Prometheus与我的Spring Boots应用程序一起启动以立即公开很好的聚合数据。到目前为止,我还没有找到任何有用的东西,所以我希望这里的某

  • 在我的spring boot应用程序中,我配置了MQQueueConnectionFactory的两个不同实例(不同id),因为这是应用程序的需要。为此,我添加了ibm客户机JAR。 我还在代码中添加了spring jms依赖项,因为我需要JmsTemplate等类。添加此依赖项后,JmsAutoConfiguration在类路径中找到JmsTemplate并尝试配置bean。在这个过程中,它尝试

  • 我想知道,在SpringWeb应用程序中,是否有任何方法可以在没有Spring Boot的情况下使用SpringCloudConfig客户端。我想使用带有@Value注释的spring cloud config,我不喜欢在我的web应用程序中使用spring CloudServer rest api。我尝试了开发人员在spring CloudConfig Client中说的没有spring Boo

  • 我在Windows下使用PostgreSQL9.5安装SN5.5。不幸的是,我打错误"Webapp没有启动"。 下面是完整的堆栈跟踪。我想我首先在“Exception sending context initialized event to listener instance of class org.sonar.server.platform.PlatformServletContextList

  • 我正在尝试使用简单的spring启动应用程序。我在ApplicationContext上启动应用程序时遇到问题。 2017-04-26 11:17:31.101警告14528---[main]s.c.a.AnnotationConfigApplicationContext:上下文初始化期间遇到异常-取消刷新尝试:org。springframework。豆。工厂未满足的PendencyExcepti