Я пытаюсь получить доступ к http://localhost:8080/EventTracker/greeting на моей машине. Однако, я получаю ошибку 404. Я следую за PluralSight Введение в учебник Spring MVC4, и кажется, что мой код соответствует тем, что есть в видео. Я использую два java-файла WebConfig и WebAppInitializer для настройки моего приложения. Я что-то пропустил? Я думаю, что я скопировал строки за строкой, но все еще не работал.HTTP Status 404 -/EventTracker/приветствие
HelloController.java
@Controller
public class HelloController {
@RequestMapping(value="/greeting")
public String sayHello(Model model) {
model.addAttribute("greeting", "Hello World");
return "hello.jsp";
}
}
WebAppInitializer.java
public class WebAppInitializer implements WebApplicationInitializer{
@Override
public void onStartup(ServletContext servletContext) throws ServletException {
WebApplicationContext context = getContext();
servletContext.addListener(new ContextLoaderListener(context));
ServletRegistration.Dynamic dispatcher = servletContext.addServlet("DispatcherServlet", new DispatcherServlet(context));
dispatcher.setLoadOnStartup(1);
dispatcher.addMapping("*.html");
}
private WebApplicationContext getContext() {
AnnotationConfigWebApplicationContext context = new AnnotationConfigWebApplicationContext();
context.setConfigLocation("com.pluralsight.WebConfig");
return context;
}
}
WebConfig.java
@Configuration
@EnableWebMvc
@ComponentScan(basePackages = "com.pluralsight")
public class WebConfig {
}
hello.jsp
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<h1>${greeting}</h1>
</body>
</html>
EDITED 9/15 4:25 вечера PST При использовании http://localhost:8080/EventTracker/greeting.html, я все еще получаю ту же ошибку, существо ошибки:
16:24:41.925 [http-nio-8080-exec-3] DEBUG o.s.web.servlet.DispatcherServlet - DispatcherServlet with name 'DispatcherServlet' processing GET request for [/EventTracker/greeting.html]
16:24:41.931 [http-nio-8080-exec-3] WARN o.s.web.servlet.PageNotFound - No mapping found for HTTP request with URI [/EventTracker/greeting.html] in DispatcherServlet with name 'DispatcherServlet'
16:24:41.931 [http-nio-8080-exec-3] DEBUG o.s.web.servlet.DispatcherServlet - Successfully completed request
Можете ли вы разместить свой файл DispatcherServlet.xml? Похоже, ваша ошибка связана с тем, что ваше приложение не находит правильное сопоставление в вашем файле DispatcherServlet. – jeffkempf
У меня нет файлов xml для конфигурации. Все конфигурации выполняются с помощью java-файлов. – LinhSaysHi
Если вы решили использовать xml-файлы, я отправил ответ, который поможет вам устранить ошибку 404. Я не уверен только в использовании java-файлов. – jeffkempf