Ajax Post 400 Bad Request
-
Spring mvc 4 ile ufak bir uygulama geliştiriyorum. Anlam veremediğim aptal bir hata ile karşı karşıyayım.
Şimdi bir tane controller classım var. Orada bir methodum var
@JsonView(Views.Public.class) @RequestMapping(value = "/malzemeTanim/malzemeEkleGuncelle", method = RequestMethod.POST, consumes = "application/json") public @ResponseBody boolean malzemeEkleGuncelle(@RequestBody Malzeme malzeme) { boolean sonuc =malzemeTanimService.insertOrUpdate(malzeme); return sonuc; }
Şöyle bir şey yapıyorum. Aldığım malzeme nesnesini db ye ekle güncelle yapıyor. Bu methodu çağıran bir ajax call um var o da şöyle.
$( '#btnkaydet' ).click(function() { var malzeme {} malzeme["id"] = $('#id').val(); malzeme["adi"] = $('#txtMalzemeAdi'); malzeme["kodu"] = $('#txtMalzemeKod'); malzeme["aciklama"] = $('#txtAciklama'); malzeme["aktifMi"] = $('#aktifMi').val(); $.ajax({ type : "POST", contentType: "application/json; charset=utf-8", url : "malzemeTanim/malzemeEkleGuncelle", data : JSON.stringify(malzeme), dataType : 'json', success : function(result) { if(result){ alert('Kayıt Başarılı '); }else { alert('Kayıt Başarısız'); } }, error : function(e) { console.log("ERROR: ", malzeme); } });Şimdi sorun şurada başlıyor. Kaydet butonuna tıkladığımda anlamsızca
POST http://localhost:8080/ServoLazer/malzemeTanim/malzemeEkleGuncelle 400 (Bad Request) hatası alıyorum. Aynı işlemi GET ile yapınca uyumsuz karakter hatası alıyorum.
2 gün önce aynı method sıkıntısız çalışıyordu :(
Json için çıktı görünümü şöyle ,
bi el atıverin hele çözelim (:
-
malzeme["id"] = $('#id').val();malzeme["adi"] = $('#txtMalzemeAdi');malzeme["kodu"] = $('#txtMalzemeKod');malzeme["aciklama"] = $('#txtAciklama');malzeme["aktifMi"] = $('#aktifMi').val(););1) adi,kodu,aciklama niye böyle gidiyor ? direk o inputun elementini döndürür sana, buda stringify ile serialize ederken sıkıntı çıkartır.anlamadığım diğer bir konu post ederken direk elementi göndermene rağmen attığın ss de xx şeklinde post etmeye çalışıyor. orası da ayrı bir mesele.2) id boş gidiyor oda bir sorun olabilir. içerisini elle doldurup post etmeyi dene bakalım ne olacak?3) Malzeme classında tanımlanan property ler ile clienttan giden parametreler arasında tip uyuşmazlığı olabilir mi?başka da bir hata göremedim.
saybirs tarafından 31/Tem/17 22:11 tarihinde düzenlenmiştir -
saybirs bunu yazdı
malzeme["id"] = $('#id').val();malzeme["adi"] = $('#txtMalzemeAdi');malzeme["kodu"] = $('#txtMalzemeKod');malzeme["aciklama"] = $('#txtAciklama');malzeme["aktifMi"] = $('#aktifMi').val(););1) adi,kodu,aciklama niye böyle gidiyor ? direk o inputun elementini döndürür sana, buda stringify ile serialize ederken sıkıntı çıkartır.anlamadığım diğer bir konu post ederken direk elementi göndermene rağmen attığın ss de xx şeklinde post etmeye çalışıyor. orası da ayrı bir mesele.2) id boş gidiyor oda bir sorun olabilir. içerisini elle doldurup post etmeyi dene bakalım ne olacak?3) Malzeme classında tanımlanan property ler ile clienttan giden parametreler arasında tip uyuşmazlığı olabilir mi?başka da bir hata göremedim.abi direk elementi değil de içeriğini veriyor. xx leri ben elle doldurarak yazdım zaten. adı kodu açıklamanın öyle olduğunıu fark etmemiştim normalde .val olması lazım hemen deniyorum
abi bu kez de methodu hiç çağıramadım :D
malzeme classımdaki propertylerle clientdakiler uyuyor. sadece id alanı int pojo da. clientta ise hidden bir label. onun sıkıntı yaratacağını sanmıyorum ama.
sLeymN tarafından 31/Tem/17 22:24 tarihinde düzenlenmiştir -
flood bizden sorulur
sLeymN tarafından 31/Tem/17 22:14 tarihinde düzenlenmiştir -
özelden teamviewer gönder istersen bakalım hocam.
-
saybirs bunu yazdı
özelden teamviewer gönder istersen bakalım hocam.
team gönderdim. Ajax call yaparken hata yapmışım değiştirdim sonuç hala aynı :/
