Ошибка DefaultHandlerExceptionResolver , концепция переадресации при весенней загрузке, статус=405

#java #spring #spring-boot #thymeleaf

Вопрос:

Я новичок в концепции переадресации с помощью spring boot и Thymeleaf.
Я хочу использовать переадресацию в своем приложении с одного контроллера на другой, получая атрибут SessionAttribute.

Я разместил форму на /домашней странице, и когда я нажимаю кнопку «Отправить», запрос отправляется в базу данных, но приложение не отображает следующую (service.html) страница с использованием перенаправления.

 @Controller
@SessionAttributes("user")
public class SavingUser{

@Autowired
private UserRepository userRepository;



@GetMapping("/home")
public String addUser(Model model){
    model.addAttribute("user", new Customer());
    return "index";
}

@PostMapping("/registerUser")
public Callable <String> userRegistration(@Valid @ModelAttribute("user") Customer user, BindingResult result, Model model, HttpServletRequest request){
 ---
 ----
    return()->{
        if(result.hasErrors()) {
         ---
     }
        ----
        return "redirect:/greetingCustomer";
    };
}
 

Перенаправление на другой контроллер —

 @Controller
 public class GreetingService {

@PostMapping("/greetingCustomer")
public String greetCustomer(@SessionAttribute("user")Customer customer, Model model) throws IOException {
    System.out.println("A new user "   customer.getName()   " is trying to request a quote");
    model.addAttribute("person",customer.getName());
    return "redirect:/service";
 }
}
 

Я уже разместил ‘service.html» файл в пути к классу.
Я использовал ту же концепцию с JSP, и она хорошо работала.
Есть идеи, в чем проблема ?

Ответ №1:

Как я вижу, когда вы используете return "redirect:/greetingCustomer"; , вы можете перенаправить только на приветствие. Если вы хотите перенаправить на страницу сервиса, используйте return "redirect:/service";