解决加了@EnableHystrixDashboard后项目中freemarker配置失效导致404问题

去掉注解,手动配置如下

package com.mark.demo.security.config;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.boot.web.servlet.ServletRegistrationBean;
import org.springframework.cloud.client.actuator.HasFeatures;
import org.springframework.cloud.netflix.hystrix.dashboard.HystrixDashboardConfiguration;
import org.springframework.cloud.netflix.hystrix.dashboard.HystrixDashboardConfiguration.ProxyStreamServlet;
import org.springframework.cloud.netflix.hystrix.dashboard.HystrixDashboardController;
import org.springframework.cloud.netflix.hystrix.dashboard.HystrixDashboardProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

/*
*hxp(hxpwangyi@126.com)
*2017年10月20日
*
*/
@Configuration
@EnableConfigurationProperties(HystrixDashboardProperties.class)
public class HystrixDashboardConfig {
	@Autowired
	private HystrixDashboardProperties dashboardProperties;

	@Bean
	public HasFeatures hystrixDashboardFeature() {
		return HasFeatures.namedFeature("Hystrix Dashboard", HystrixDashboardConfiguration.class);
	}

	@Bean
	public ServletRegistrationBean proxyStreamServlet() {
		ProxyStreamServlet proxyStreamServlet = new ProxyStreamServlet();
		proxyStreamServlet.setEnableIgnoreConnectionCloseHeader(dashboardProperties
				.isEnableIgnoreConnectionCloseHeader());
		return new ServletRegistrationBean(proxyStreamServlet, "/proxy.stream");
	}

	@Bean
	public HystrixDashboardController hsytrixDashboardController() {
		return new HystrixDashboardController();
	}
}
然后加上freemarker配置

package com.mark.demo.security.config;

import java.util.Properties;

import org.springframework.boot.autoconfigure.freemarker.FreeMarkerProperties;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.core.annotation.Order;
import org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer;

/*
*hxp(hxpwangyi@126.com)
*2017年10月20日
*
*/
@Configuration
@EnableConfigurationProperties(FreeMarkerProperties.class)
public class FreemarkerConfig {
	private final FreeMarkerProperties properties;
	
	public FreemarkerConfig(ApplicationContext applicationContext,
			FreeMarkerProperties properties) {
		this.properties = properties;
	}
	@Bean
	public FreeMarkerConfigurer freeMarkerConfigurer() {
		FreeMarkerConfigurer configurer = new FreeMarkerConfigurer();
		configurer.setTemplateLoaderPaths("classpath:/templates/","/WEB-INF/ftl/");
		configurer.setDefaultEncoding("UTF-8");
		configurer.setPreferFileSystemAccess(properties.isPreferFileSystemAccess());
		Properties settings = new Properties();
		settings.putAll(this.properties.getSettings());
		configurer.setFreemarkerSettings(settings);
		return configurer;
	}
}

关键是注意这里的,多了一个值
configurer.setTemplateLoaderPaths("classpath:/templates/","/WEB-INF/ftl/");

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

hxpjava1

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值