2012-02-19 63 views
0

我有一個spring 3應用程序,我正在使用jquery發佈ajax請求。現在我想在ajax響應結束後將我的頁面重定向到另一個頁面。 Pojo由第一個頁面控制器返回,該控制器將傳遞給第二個控制器。我知道如何重定向,但不知道如何將這個POJO傳遞到一個表單控制器如何使用值對象重定向另一個頁面

$.ajax({ 
        type: "POST", 
        url: "/xxx/xxx/xxx/accept", 
        data: "bId=" + bId+ 
        "&minDelTime=" +minDelTime, 
        success: function(response){ 
         if(response.errorText == null) { 
               //this works fine 
          alert(response.orderId); 
//this is where i have to redirect with response as parameter       
window.location.replace("/xxx/xxx/xxx/confirm/"+response.orderId); 

         } else { 
          alert(response.errorText); 
         }      
         }, 

我的下一個頁面控制器 -

@Controller 
@RequestMapping("/xxx/xxx/confirm") 
public class ConfirmationController { 
@RequestMapping(value = "/orderVo", method = RequestMethod.GET) 
    public String showOrderConfirmPage(@PathVariable MasterVo orderVo, Model model) { 
     LOGGER.info("Entry showOrderConfirmPage()"); 
     LOGGER.debug("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ : " + orderVo.toString()); 
     LOGGER.info("Exit showOrderConfirmPage()"); 
     return "/xxx/orderConfirmView"; 
    } 
} 

但我總是得到錯誤。有人可以告訴我如何將對象(Pojo)傳遞給新頁面控制器嗎?

更新 -

我試圖序列化對象 -

success: function(response){ 
         if(response.errorText == null) { 
        $.post("orderVo", response.serialize(), function(data) { 
       window.location.replace("/xxx/xxx/xxx/confirm/"); 
          }); 

但我正在逐漸遺漏的類型錯誤:對象#有沒有方法 '連載'

回答

1

爲什麼不只是重定向?

return "redirect:/xxx/orderConfirmView"; 
0

閱讀有關序列化。

你使用的是jQuery嗎?有一種簡單的方法來從HTML表單序列化數據。

+0

是我使用jQuery和更新了我的代碼上面,但現在我得到遺漏的類型錯誤:對象#有沒有方法「連載」錯誤 – Sachin 2012-02-19 18:03:35

+0

當這些數據從何而來? jQuery在html和表單上運行。你必須序列化表單,而不是對象(在jQuery中)。 – Kamil 2012-02-19 18:44:18

+0

是的,這是問題,數據來自Spring控制器類作爲Java POJO對象,我想將該對象傳遞給另一個控制器 – Sachin 2012-02-19 18:54:47

相關問題