2017-12-15 3 views
2

gefunden verwende ich SpringBoot 1.5.9 und erstellt src/main/resources/static/index.html:Frühling Boot - index.html nicht durch den Controller

<!DOCTYPE html><html><head><meta charset="utf-8"/> 
<title>Home</title></head> 
<body><h2>Hello World!!</h2></body> 
</html> 

Meine einfache Steuerung ist der Umgang mit "/" und der Weiterleitung an index.html:

@Controller 
    public class MyController { 
     @RequestMapping("/") 
     public String home(Model model) { 
      System.out.println("In MyController!!!"); 
      return "index"; 
    }} 

wenn jedoch, nachdem ich meine Hauptmethode laufen aus:

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

und ich zu meinem Browser zeigen: http://localhost:8080/ Ich erhalte: Whitelabel Fehler Page-Es ist ein unerwarteter Fehler (type=Not Found, status=404)

aber war, wenn ich versuche, direkt auf die Seite zuzugreifen - es funktioniert: http://localhost:8080/index.html

Basierend auf der SpringBoot Dokumentation der statischen Inhalt unter src/main/resources/static/ sollte gerendert werden. Wenn ich Ordner src/main/resources/templates/ erstellen und meine index.html dort, und auch Spring-Boot-Starter-Thymeleleaf-Abhängigkeit in meine pom.xml einfügen, dann funktioniert alles gut. Ich bin jedoch verwirrt, warum dieses grundlegende Rendering von src/main/resources/static/index.html nicht funktioniert. Jede Hilfe wird geschätzt.

+0

Entfernen Sie Ihre 'MyController' Klasse, sollte es ohne es funktionieren –

Antwort

1

gefunden einfach die Lösung: die Steuerung MyController die Dateierweiterung angeben sollten:

return "index.html"; 
Verwandte Themen