Mam problem z wiosną i prośbą o wpis. Ja konfigurowania metody kontrolera dla wywołania AJAX, patrz definicja metody poniżejWiosenne argumenty @RequestParam nie są przekazywane w metodzie POST.
@RequestMapping(value = "add.page", method = RequestMethod.POST)
@ResponseBody
public Object createComment(
@RequestParam(value = "uuid", required = false) String entityUuid,
@RequestParam(value = "type", required = false) String entityType,
@RequestParam(value = "text", required = false) String text,
HttpServletResponse response) {
....
Obojętnie jaki sposób mogę nawiązać połączenie HTML, wartości dla parametrów @RequestParam
są zawsze puste. Mam wiele innych metod, które wyglądają tak, główną różnicą jest to, że inne są metodami GET, podczas gdy ten jest POST. Czy nie jest możliwe użycie @RequestParam
z metodą POST?
Używam wersji Spring 3.0.7.RELEASE - Czy ktoś wie, co może być przyczyną problemu?
kod Ajax:
$.ajax({
type:'POST',
url:"/comments/add.page",
data:{
uuid:"${param.uuid}",
type:"${param.type}",
text:text
},
success:function (data) {
//
}
});
Jaki jest twój kod ajax? –
Zaktualizowałem pytanie za pomocą kodu Ajax. Coś mi mówi, że przekazuję parametry w treści żądania, a nie parametry żądania, tak jak się spodziewałem :( –
'@ RequestParam' działa zarówno z metodą POST, jak i GET (iw przejrzysty sposób). Z jakiego kodowania korzystasz? POST używa zawsze UTF-8 –