2013-06-30 25 views
2

我有一種向我的控制器提交新文章的表單。無法訪問SpringMVC控制器中的請求參數,同時重定向到URL

JSP頁面:

<form class="form-signin" method="post" 
    action="/articleViewer"> 
<div class="control-group" style="margin-top: -5px;"> 
    <label class="control-label text-info" for="commentContent"><strong>Post 
      Comment</strong></label> 
    <div class="controls"> 
     <textarea class="FormElement" name="area2" id="commentContent" 
     style="width: 100%;"></textarea> 
    </div> 
</div> 
<button type="submit" class="btn btn-primary" style="margin-left: 90%;">Post</button> 
</form> 

控制器的方法:

@RequestMapping(value="/articleViewer", method = RequestMethod.POST) 
public String saveArticleComment (HttpServletRequest request, HttpServletResponse response,Principal principal, ModelMap map) throws ServletException, IOException{ 
    //processing request 
    System.out.println("Link : "+Path.Jsp.ARTICLE_VIEWER_PAGE); 
    return Path.Jsp.ARTICLE_VIEWER_PAGE; //this ARTICLE_VIEWER_PAGE = /articleViewer 
} 
從上面的控制器方法我想重定向到哪裏我想通過 目前保存的物品ID的另一種方法

現在as http://<myurl>/article?articleId="xyz".

這是我處理重定向的get方法代碼。

@RequestMapping(value="/articleViewer", method= RequestMethod.GET) 
public String articleViewer(HttpServletRequest request, Principal principal, 
     ModelMap map, HttpServletResponse response) 
     throws DatabaseException { 
     //I wanna access article id here. 
    return Path.Jsp.ARTICLE_VIEWER_PAGE; 
} 

我想知道如何訪問上面的方法中傳遞的請求參數?

+0

這意味着你在失去URL一個重要的參數。 –

+0

Yess提交表單後,我失去了參數,它顯示頁面bloank bcz需要以ArticleID作爲輸入參數 – Complicated

+0

是的,您沒有發佈jsp,無法回答。 –

回答

1

如果您提交的行動網址不帶參數後,或爲此使用hidden字段,那麼您應該返回該參數作爲結果。所以,你不會丟失它,或者重定向到不再需要參數的頁面。要通過在URL參數中使用

<form class="form-signin" method="post" action="/articleViewer?varArticleID=94"> 
+0

通過使用這個我得到了URL/articleViewer? varArticleID = 79但它沒有調用我的Get方法代碼 – Complicated

+0

我的意思是在這個URL也是我的窗體是空的沒有文章沒有評論 – Complicated

+0

可能plz幫助我解決問題新的Spring MVC – Complicated

0

所以,如果你需要像在頁面提交更改表格的動作值一樣

<form class="form-signin" method="post" 
    action="/articleViewer?varArticleID={yourArticleid}"> 

同時提交後,你

return Path.Jsp.ARTICLE_VIEWER_PAGE+"?varArticleID="+request.getParameter("varArticleID"); 
+0

我的方法即saveArticleComment被映射到這個方法我應該怎麼把它映射到/ articleViewer?articleId = 94 – Complicated

+0

在返回它之後它給出了ERror 404 – Complicated

+0

什麼是在404上顯示的URL? – pikrut

1

我在回使用重定向屬性解決它......

return "redirect:/articleViewer?varArticleID="+getVarArticleID(); 
相關問題