2012-10-16 61 views
0

我的spring3.1 mvc服務器可以通過添加@ResponseBody來響應右邊的json結果,對spring設置文件應該沒有問題。包含servlet.xml在jQuery發送json請求到spring mvc服務器後得到400錯誤

<mvc:annotation-driven/> 

我把Jackson Jars放在classpath中。

而且我的HTML文件中.ajaxSetup也設置的contentType爲「應用/ JSON的」()方法。我能看到的帖子標題是正確的螢火蟲。

我也試過包括json2.js調用JSON。字符串化方法

JSON格式樣品:

{"link":"http:xxxxx","ticker":"xxxxx"} 

的responseBody類是文獻:

public class Document implements Serializable{ 
    public String getLink(){...} 
    public String setLink(String link){...} 
    public String getTicker(){...} 
    public String setTicker(String ticker){...} 
} 

控制器代碼:

public class LoadFile {                                                                                           

    @RequestMapping(value="/loadFile",method=RequestMethod.POST)                                     
    public @ResponseBody Document loadFile(@RequestBody Document document){ 
     ... 
    } 
} 

的HTML代碼:加入@ResponseBody

$(function() {                                                 
    $.ajaxSetup({                                                
     contentType:"application/json;charset=utf-8" 
    });                                      
    $.post(url, { link: link, ticker:ticker },                                    
     function(data) { 
      .... 
     },"json" 
    ); 
} 

文檔類可以返回作爲JSON對象,但是,當作爲@RequestBody,服務器返回400錯誤。不知道發生了什麼。

+0

更換@RequestBody你能提供更多的代碼,JavaScript和控制器代碼? – insomiac

+0

固定參考[鏈接] http://stackoverflow.com/questions/5908466/jquery-spring-mvc-requestbody-and-json-making-it-work-together/5908847#5908847我猜gae jackson lib有一些衝突用spring,所以不得不明確的轉換器包名。但仍然使用RequestBody,而不是ModelAttribute – atu0830

回答

0

我最近有類似的問題。對我來說,它在變量名稱周圍添加了「」,這給了我400錯誤。像這樣嘗試:

{link:"http:xxxxx",ticker:"xxxxx"} 

還要確保您的變量對應於您的數據庫,具體取決於Spring3.1如何處理數據。 (例如按正確的順序)

我希望能幫到你。

+0

對不起,我的json樣本來自螢火蟲。但代碼是{link:「http:xxxxx」,ticker:「xxxxx」},所以不應該是調用該方法的原因 – atu0830

0

通過@ModelAttribute

+0

,但文檔的屬性爲空。基礎spring文件,它可以從窗體或會話創建文件。如何從jquery post創建文檔? – atu0830

+0

它應該工作,確保鏈接和代碼有價值。你可以看看它們上的螢火蟲 –

+0

螢火蟲顯示兩個參數都有正確的值但服務器端的文件還是沒有任何屬性。 – atu0830

相關問題