因此,我已经使用Spring-Boot,Kotlin和Intellij设置了首次测试应用程序。
当我运行项目时,控制台中的所有内容似乎都可以正常启动。但是,当我在浏览器中导航到http://localhost:8080/
时,它给我一个404错误和一个页面,如下所示:
Whitelabel Error Page
This application has no explicit mapping for /error, so you are seeing this
as a fallback.
Wed Aug 29 07:54:39 MDT 2018
There was an unexpected error (type=Not Found, status=404).
No message available
为什么不导航到我创建的页面?
主类:
package com.daniel.anderson.demo
import ...
@SpringBootApplication
class DemoApplication
fun main(args: Array<String>) {
runApplication<DemoApplication>(*args)
}
控制器代码:
package com.daniel.anderson.demo.controlers
import ...
@Controller
class HtmlController {
@GetMapping("/")
fun blog(model: Model) : String {
model.addAttribute("title","Blog")
return "blog"
}
}
胡子文件: blog.mustache
{{> header}}
<h1>{{title}}</h1>
<p>hello world</p>
{{> footer}}
footer.mustache
</body>
</html>
header.mustache
<html>
<head>
<title>{{title}}</title>
</head>
<body>
顺便说一句,我在邮递员中遇到了同样的错误。
答案 0 :(得分:0)
问题出在控制器中的@Controller
,如果我将注释更改为@RestController
,那么它就可以了。我的理解是,我应该能够使用@Controller
批注,但看来您需要@RestController
所以我在这里Spring boot error 404
发现一些真正使用完整的信息答案 1 :(得分:-1)
我认为问题在于方法上缺少@ResponseBody注释
@GetMapping("/")
@ResponseBody
fun demo(model: Model): String {
model["title"] = "Demo"
return "Hello world?!"
}
这必须工作