AppInitailizer.javaОшибка Spring MVC 4.3 404. Проблема с отображением пути. Servlet Mapping и конфигурация выглядит хорошо
public class AppInitializer extends AbstractAnnotationConfigDispatcherServletInitializer{
@Override
protected Class<?>[] getRootConfigClasses() {
return new Class[]{AppConfig.class};
}
@Override
protected Class<?>[] getServletConfigClasses() {
return null;
}
@Override
protected String[] getServletMappings() {
return new String[]{"/api/*"};
}
}
AppConfig.java
@Configuration
@ComponentScan
@EnableWebMvc
public class AppConfig {
}
UserController.java
@RestController
@RequestMapping("/users")
public class UserController {
@Autowired
private UserService userService;
@RequestMapping(method = RequestMethod.GET)
public List<User> getUsers(){
List<User> users = userService.findAll();
return users;
}
Когда я попытался выстрелить http://localhost:8080/practise/api/users, это приводит к «HTTP St atus 404 "-/practice/api/users (где практика - название проекта). В getServletMappings() я дал путь как/api/*, а класс UserController имеет сопоставление запросов как/users. Я не знаю, где я ошибся. Когда я обращаюсь к index.xml, он работает нормально.
Скриншот ошибки:
Error on the browser when I try to access the api of application
Когда огонь URL в журналах tomcat нет ошибки, поскольку для данного URL-адреса нет сопоставления. Я попытался напечатать заявление getRootConfigClasses(), getServletMappings(). В журналах также отсутствует инструкция печати. Поэтому я предполагаю, что конфигурация весеннего mvc может быть неправильной. Но как я мог понять это? –