Hej,
mam pewien problem z przekazywaniem parametru przy przekierowaniu. Otóż na stronie index.html mam pewien prosty formularz z jednym polem, do którego użytkownik wpisuje tekst, a następnie serwis przetwarza go w pewien sposób - jednak nie jest to za bardzo istotne. Pod formularzem w thymeleafie dałem instrukcje warunkową, według której przetworzony tekst będzie wypisywany.
Nie ogarniam jednak do końca przekazania parametru przy przekierowaniu i zamiast przeładowanej strony index pokazuje mi się strona błędu z informacją:
EDIT: Źle nazwałem parametr w formularzu, teraz to poprawiłem, lecz wiadomość błędu która teraz się pojawia brzmi następująco
There was an unexpected error (type=Internal Server Error, status=500).
No message available
W logach konsoli widzę NullPointerException, ale skąd on wynika?
Metody w kontrolerze wyglądają tak:
To jest metoda mapująca stronę główną, na której jest formularz.
@RequestMapping("/")
public String home(@RequestParam(required = false, defaultValue = "") String statement, Model model){
model.addAttribute("statement", statement);
return "index";
}
Akcja formularza natomiast jest zmapowana na /translate i tutaj wykonuję sobie w serwisie pewne operacje na parametrze z formularza, a później chciałbym zwrócić wynik z powrotem do indexu.
@PostMapping("/translate")
public String translate(@RequestParam String statement, Model model){
translatorService.setNaturalLanguageStatement(statement);
model.addAttribute("statement",translatorService.getNaturalLanguageStatement());
return "redirect:/index";
}
}
Mam nadzieję, że w miarę przejrzyście opisałem problem. Nie chcę tego robić w javascripcie, bo nie ogarniam go w ogóle i nauka JS dopiero przede mną.
Z góry dzięki za pomoc i pozdrawiam :)