В хорошей борьбе с Spring / Thymeleaf решили попробовать превратить консольное приложение в веб-приложение.
У меня есть форма с 3 разными кнопками, каждая из которых использует свой метод вконтроллер.Затем я намереваюсь заставить методы каждый делать свое дело и возвращать результаты по мере необходимости, но в настоящее время получаю сообщение об ошибке в отношении параметров.
При просмотре в Интернете кажется, что я следую примерудано, но не радость, любая помощь очень ценится.
Исключение:
This application has no explicit mapping for /error, so you are seeing this as a fallback.
Sat Mar 02 17:08:48 GMT 2019
There was an unexpected error (type=Bad Request, status=400).
Parameter conditions "action=tb_name" not met for actual request parameters: tb_name={tb_name}
Контроллер:
@RequestMapping(value="/sparql", method=RequestMethod.POST, params="action=tb_age")
public String tb_age(Model model){
String queryString = "tb_age query";
String queryResult = "tb_age result";
model.addAttribute("sparqlQuery", queryString);
model.addAttribute("sparqlAnswer", queryResult);
model.addAttribute("now", dateTime);
return "sparqlanswer";
}
@RequestMapping(value="/sparql", method=RequestMethod.POST, params="action=dc_age")
public String dc_age(Model model){
String queryString = "dc_age query";
String queryResult = "dc_age result";
model.addAttribute("sparqlQuery", queryString);
model.addAttribute("sparqlAnswer", queryResult);
model.addAttribute("now", dateTime);
return "sparqlanswer";
}
Форма HTML-страницы:
<p>
<form action="#" data-th-action="@{/sparql/question}" data-th-object="${model}" method="post">
<p>How old is tb</p><button type="submit" name="action" value="tb_age">Ask?</button>
<p>How old is dc</p><button type="submit" name="action" value="dc_age">Ask?</button>
<p>What is the birth name of tb?</p><button type="submit" name="tb_name" value="tb_name">Ask?</button>
</form>
</p>
HTML-страница результатов, которую я пересылаю:
<p>Results:</p>
<p>Question asked: </p>
<p>Sparql Query: <strong th:text="${sparqlQuery}"></strong></p>
<p>Answer: <strong th:text="${sparqlAnswer}"></strong></p>