2014-02-19 38 views
0

我開發已經創造了一個bean類,所有的setter和getter方法存在像一個Web應用程序:如何從春豆類獲取數據?

private String LeaveType; 
private String leavePeriod; 

private String reason; 
private String FirstApprover; 

private String finalApprover; 
private String selectHours; 

public String getLeaveType() { 
    return LeaveType; 
} 

public void setLeaveType(String leaveType) { 
    LeaveType = leaveType; 
} 

public String getLeavePeriod() { 
    return leavePeriod; 
} 

public void setLeavePeriod(String leavePeriod) { 
    this.leavePeriod = leavePeriod; 
} 

public String getReason() { 
    return reason; 
} 

public void setReason(String reason) { 
    this.reason = reason; 
} 

public String getFirstApprover() { 
    return FirstApprover; 
} 

public void setFirstApprover(String firstApprover) { 
    FirstApprover = firstApprover; 
} 

public String getFinalApprover() { 
    return finalApprover; 
} 

public void setFinalApprover(String finalApprover) { 
    this.finalApprover = finalApprover; 
} 

public String getSelectHours() { 
    return selectHours; 
} 

public void setSelectHours(String selectHours) { 
    this.selectHours = selectHours; 
} 

在上面的類從HTML頁面的詳細信息會保存temprory當點擊OB提交數據I想通過創建該類的對象而不是從數據庫中獲取它來獲取它在我的另一個控制器類中,並試圖獲得空值,是否有任何辦法擺脫這個問題。 cotrooler類:

@RequestMapping(value = "/leaveapplyform", method = RequestMethod.GET) 
     public String showForm(ModelMap model,HttpServletRequest request) 
     { 
     log.info("Inside Controller returning to leaveapplyform page...."); 

     LeaveApplyForm leaveapplyform = new LeaveApplyForm(); 
     model.put("leaveapplyform", leaveapplyform);  


    return GlobalConstants.LEAVE_APPLY; 
     } 


@RequestMapping(value = "/leaveapplyform" ,method = RequestMethod.POST) 
    public String processForm(@ModelAttribute("leaveapplyform") LeaveApplyForm leaveapplyform,HttpServletRequest request, HttpServletResponse response, ModelMap model) 
    { 
     leaveapplyform = (LeaveApplyForm) model.get("leaveapplyform"); 
System.out.println(leaveapplyform.getReason());//Here goes wrong 

}} 

回答

0

一個可能slution將使用Flash屬性(如果你使用一個版本的Spring MVC> = 3.1)。所以,你改變你的第一showForm方法如下:

public String showForm(@ModelAttribute("leaveapplyform")LeaveApplyForm leaveapplyform, HttpServletRequest request, final RedirectAttributes redirectAttributes) { 
      log.info("Inside Controller returning to leaveapplyform page...."); 

      LeaveApplyForm leaveapplyform = new LeaveApplyForm(); 
      redirectAttributes.addFlashAttribute("leaveapplyform", leaveapplyform); 

      return GlobalConstants.LEAVE_APPLY; 
    } 

,然後在processForm直接的說法leaveapplyform訪問,它不應該是空