2012-05-31 2 views
0

나는이 같은 봄 양식 작성이 가능합니다 빈 이름 순서에 대한 일반 대상 객체 :봄 양식 어느 BindingResult도

<form:form action="createOrder" method="Post" modelAttribute="order"> 
     <table> 
      <tr> 
       <th> 
        Order ID: 
       </th> 
       <td> 
        <form:input path="order.orderId"/> 
       </td> 
      </tr> 

      <tr> 
       <th> 
        Product Name: 
       </th> 
       <td> 
        <form:input path="order.productName"/> 
       </td> 
      </tr> 

      <tr> 
       <td> 
        <input type="submit" value="Submit"/> 
       </td> 
      </tr> 

     </table> 
    </form:form> 

주문 Order.jsp index.jsp를

<a href="/Spring_MVC/order.jsp">Order</a> 

을 .java :

public class Order { 

    private String orderId; 
    private String productName; 

    /** 
    * 
    */ 
    public Order() { 


    } 

    public Order(String orderId, String productName) { 
     super(); 
     this.orderId = orderId; 
     this.productName = productName; 
    } 

    public String getOrderId() { 
     return orderId; 
    } 

    public void setOrderId(String orderId) { 
     this.orderId = orderId; 
    } 

    public String getProductName() { 
     return productName; 
    } 

    public void setProductName(String productName) { 
     this.productName = productName; 
    } 
} 

OrderController.java :

@Controller 
public class OrderController { 

    private static final Logger logger = Logger.getLogger(LoginController.class.getName()); 

    /** 
    * 
    */ 
    public OrderController() { 
     super(); 
    } 

    @RequestMapping(value = "/createOrder", method=RequestMethod.POST) 
    public String createOrder(@ModelAttribute("order")Order order, BindingResult result) { 
     logger.log(Level.INFO, "Order ID: " + order.getOrderId()); 
     logger.log(Level.INFO, "Product Name: " + order.getProductName()); 

     // Implementation validator 

     // Data Binding the form properties to Order field 
     if (result.hasErrors()) { 
      logger.log(Level.INFO, "Error in Binding Result"); 
     } 

     return "/order"; 
    } 
} 

나는 빈 이름 순서에 대한 어느 BindingResult도 일반 대상 객체 (가) 가능한 얻을. 그것은 내가 GET을 사용하여 콩 이름 순서를 생성하고 서버에 POST하기 전에 먼저 웹에 전달해야합니까?

도와주세요. 감사합니다. .

답변

1

문제는 JSP 페이지에 있습니다.

입력 태그의 경로 속성에 필드 이름을 잘못 사용했습니다.

이렇게되어야합니다.

<form:input path="orderId"/> 

희망이 도움이 될 것입니다. 건배.

+0

시도해 보았지만 작동하지 않습니다. 위와 같이 index.jsp에있는 링크를 클릭하고 IllegalStateException을 던집니다. 도와주세요. – peterwkc

+0

양식을 표시하는 GET 요청 매핑은 어디에 있습니까 ?? 또한 ModelAttribute를 정의하고 @ModelAttribute에서 ** "order"**를 제거해야합니다. –

+0

나는 HTML 링크 . – peterwkc

0

모델을 포함해서는 안 input 태그 안에 당신의 path 속성이 이름 order 속성 reference 기준, 예 :

<form:input path="orderId" />