Неожиданная ошибка (тип = не найдено, статус = 404) - PullRequest
0 голосов
/ 13 марта 2019

Я работаю с использованием Spring Boot и у меня возникла ошибка: произошла непредвиденная ошибка (тип = Не найдено, статус = 404)

Мои .jsp страницы находятся в папке src>main>webapp>WEB-INF>views

application.properties:

spring.mvc.view.prefix:/WEB-INF/views/
spring.mvc.view.suffix:.jsp
spring.messages.basename=validation

Контроллер:

@Controller
public class UserController {
    @Autowired
    private UserService userService;

    @Autowired
    private SecurityService securityService;

    @Autowired
    private UserValidator userValidator;

    @GetMapping("/registration")
    public String registration(Model model) {
        model.addAttribute("userForm", new User());

        return "registration";
    }

    @PostMapping("/registration")
    public String registration(@ModelAttribute("userForm") User userForm, BindingResult bindingResult) {
        userValidator.validate(userForm, bindingResult);

        if (bindingResult.hasErrors()) {
            return "registration";
        }

        userService.save(userForm);

        securityService.autoLogin(userForm.getUsername(), userForm.getPasswordConfirm());

        return "redirect:/welcome";
    }

    @GetMapping("/login")
    public String login(Model model, String error, String logout) {
        if (error != null)
            model.addAttribute("error", "Your username and password is invalid.");

        if (logout != null)
            model.addAttribute("message", "You have been logged out successfully.");

        return "login";
    }

    @GetMapping({"/", "/welcome"})
    public String welcome(Model model) {
        return "welcome";
    }
}

Но он все еще не может найти страницы. Что мне делать?

Ответы [ 2 ]

1 голос
/ 13 марта 2019

Пожалуйста, попробуйте с этими изменениями:

  1. Поставить косую черту в конце: spring.mvc.view.prefix:/WEB-INF/views/
  2. Измените @RestController на @ Controller
0 голосов
/ 13 марта 2019

Вот 2 вещи, которые вы делаете неправильно.

1.RestController возвращает ответ в JSON по умолчанию, но вы хотите вернуть страницу JSP, поэтому измените ее на аннотацию контроллера, см. Разница между Spring-controller-and-restcontroller-annotation .

@Controller

2.Попробуйте добавить косую черту перед просмотром, как показано ниже.

spring.mvc.view.prefix:/WEB-INF/views/
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...