Bahar JSON 406 (Kabul edilemez)alma isteği
bu benim javascript:
function getWeather() {
$.getJSON('getTemperature/' $('.data option:selected').val(), null, function(data) {
alert('Success');
});
}
bu benim denetleyicisi
@RequestMapping(value="/getTemperature/{id}", headers="Accept=*/*", method = RequestMethod.GET)
@ResponseBody
public Weather getTemparature(@PathVariable("id") Integer id){
Weather weather = weatherService.getCurrentWeather(id);
return weather;
}
spring-servlet.xml
<context:annotation-config />
<tx:annotation-driven />
Bu hata çıkıyor
GET http://localhost:8080/web/getTemperature/2 406 (Not Acceptable)
Başlıklar:
Yanıt Başlıkları
Server Apache-Coyote/1.1
Content-Type text/html;charset=utf-8
Content-Length 1070
Date Sun, 18 Sep 2011 17:00:35 GMT
Başlıkları İsteği
Host localhost:8080
User-Agent Mozilla/5.0 (Windows NT 6.1; WOW64; rv:6.0.2) Gecko/20100101 Firefox/6.0.2
Accept application/json, text/javascript, */*; q=0.01
Accept-Language en-us,en;q=0.5
Accept-Encoding gzip, deflate
Accept-Charset ISO-8859-1,utf-8;q=0.7,*;q=0.7
Connection keep-alive
X-Requested-With XMLHttpRequest
Referer http://localhost:8080/web/weather
Cookie JSESSIONID=7D27FAC18050ED84B58DAFB0A51CB7E4
İlginç bir not:
406 hatası alıyorum, ama hazırda sorgu bu arada çalışır. Bu tomcat günlük, her zaman ben dropbox seçimi değiştir: şöyle diyor
select weather0_.ID as ID0_0_, weather0_.CITY_ID as CITY2_0_0_, weather0_.DATE as DATE0_0_, weather0_.TEMP as TEMP0_0_ from WEATHER weather0_ where weather0_.ID=?
Sorun ne olabilir? Tüm kabul ipuçlarını orada çalıştım daha önce ÇOK benzer iki soru vardı, ama sanırım işe yaramadı...
Herhangi bir öneriniz var mı? Soru sormaya çekinmeyin...
CEVAP
406 Kabul Edilemez
Kaynak isteği tarafından tanımlanan içerik özelliklere sahip olan varlıkları tepki üreten kabul edilemez başlıkları isteği gönderdi kabul veremiyor.
Yani, sizin istek başlığı application/json ve denetleyicisi dönmek mümkün değil, kabul. Bu doğru HTTPMessageConverter @ResponseBody açıklamalı dönüş değeri karşılamak için bulunabilir neden olur. HTTPMessageConverter otomatik olarak 3-d sınıf parti kütüphaneler ** 14, belli kullandığınızda kayıtlı.
Ya sizin sınıf doğru Jackson kütüphane yok, ya da kullanmadın
<mvc:annotation-driven>
Yönerge.
Ben başarılı bir şekilde çoğaltılmış bir senaryo ve iyi iki kütüphane ve headers="Accept=*/*"
Bu Direktifi kullanarak çalıştı.
- jackson-core-asl-1.7.4.jar
- jackson-mapper-asl-1.7.4.jar
Alma "JSON isteği serisi için çok...
Olan yöntem bağımsız değişkenleri mant...
Nasıl JSON POST isteği HTTPClient kull...
Bir JSON dan veri alma R dosyası...
jQuery geçerli json gönderme isteği vü...