2012-12-24 6 views
0

Button을 누르면 메소드 showEnteredData가 실행되기를 원합니다. 그러나이 함수는 실행되지 않습니다. 내가 자동으로해야한다고 생각 했어. 무엇이 문제입니까? 당신의 도움에 대한 감사합니다 =)Java Spring MVC Webform POST 요청 메소드

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> 
<%@ page session="false"%> 

    <div id="leer" style="float: left;"></div> 
    <div class="filmFilter"> 
     <form action="articles" method="get"> 

      <select name="dropdownFilmeFilter"> 
       <option value="aufsteigend">Preis: aufsteigend</option> 
       <option value="absteigend">Preis: absteigend</option> 
       <option value="bewertung">Kundenbewertung</option> 
       <option value="erscheinungsdatum">Erscheinungsdatum</option> 
      </select> 

      <input type="submit" value="Done" /> <a href="home">bring me back 
       home</a> 
     </form> 

    </div> 

@RequestMapping(value = "/articles") 
public String showHome (Model model){ 
    List<Article> article = (List<Article>) gd.findAll(Article.class); 
    model.addAttribute("articles", article); 


    return "articles"; 
} 


@RequestMapping(value = "/articles", method = RequestMethod.POST) 
public String showEnteredData(@RequestParam("dropdownFilmeFilter") String filter, Model model) { 
    System.err.println("hohooh"); 


    List<Article> article = (List<Article>) gd.sortByAttribute(Article.class, "price", true); 
    article.clear(); 

    if (filter == "aufsteigend"){ 
     article = (List<Article>) gd.sortByAttribute(Article.class, "price", true); 
    } 
    model.addAttribute("articles", article); 

    return "articles"; 
} 

답변

3

당신은 "게시물"에 양식 태그의 방법을 변경하거나 RequestMethod.GET에 @의 RequestMapping의 방법을 변경할 수 있습니다. 첫 번째 옵션을 권하고 싶습니다.

+1

+1 형식을 POST로 바꾸면 의미가 없으므로 양식에 GET을 사용할 이유가 없으며 향후 관리자 (사용자가 아닐 수도 있음)를 혼동시킬 수 있습니다. – GreyBeardedGeek

관련 문제