2016-11-07 7 views
2

Я пытаюсь использовать SpringBoot с Freemarker и Sitemesh.Почему мой браузер загружает файл вместо рендеринга вывода SpringBoot & Sitemesh?

Когда я перехожу к URL-адресу в тот момент, когда запрос обрабатывается приложением, данные загружаются и выводятся HTML-файлы, но по какой-то причине браузер решил, что хочет загрузить файл (который содержит правильный контент), а чем рендеринг его как страницы.

Это работало некоторое время назад, проблема в том, что я не уверен, какое изменение я сделал, сломал его!

SiteMesh фильтр:

@WebFilter 
public class SitemeshFilter extends ConfigurableSiteMeshFilter { 

private static final Logger LOG = Logger.getLogger(SitemeshFilter.class); 

    @Override 
    protected void applyCustomConfiguration(SiteMeshFilterBuilder builder) { 
     LOG.debug("SiteMeshFilter creation"); 
     builder.addDecoratorPath("/*", "/templates/main.ftl") 
      .addExcludedPath("/h2console/*"); 
    } 
} 

Применение:

@ServletComponentScan 
@SpringBootApplication 
@EnableAutoConfiguration(exclude = {ErrorMvcAutoConfiguration.class}) 
public class ClubManagementApplication { 

    private static Logger LOG = Logger.getLogger(ClubManagementApplication.class); 

    public static void main(String[] args) { 
     SpringApplication.run(ClubManagementApplication.class, args); 
    } 
} 

Отрывок контроллера:

@Controller 
public class ClubController { 

    @Autowired 
    ClubService clubService; 

    @RequestMapping(value = {"Club/{id}","club/{id}"}) 
    public ModelAndView viewClub(@PathVariable("id") int clubId) { 
     ModelAndView mv = new ModelAndView("club"); 
     .... 
     return mv; 
    } 
} 

EDIT: Из HttpServletRequest объекта в контроллере ... принимаем: текст/HTML, приложение/XHTML + XML, заявки Листов ион/XML; д = 0,9, образ/WebP, /; д = 0,8

В заголовках ответа: Content-Type: применение/октет-поток; кодировка = UTF-8

я полагаю тип контента - проблема ... просто нужно найти, почему это делается так.

+0

Каково значение Content-Type получаемого HTTP-заголовка? –

+0

Вы совершенно правы @OrtomalaLokni тип контента неверен, просто попробуйте и выясните, почему – DaFoot

+0

Можно ли предоставить [mcve] (http://stackoverflow.com/help/mcve) в github? –

ответ

2

В случае, если кто-то еще спотыкается на этот вопрос, я сменил файл шаблона с ftl на расширение html и внезапно проснулся.

@Override 
protected void applyCustomConfiguration(SiteMeshFilterBuilder builder) { 
    LOG.debug("SiteMeshFilter creation"); 
    //builder.addDecoratorPath("/*", "/templates/main.ftl"); 
    builder.addDecoratorPath("/*", "/templates/main.html"); 
} 

 Смежные вопросы

  • Нет связанных вопросов^_^