2013-07-29 4 views
5

के लिए स्प्रिंग एमवीसी फॉर्म त्रुटियों को प्रदर्शित करने के लिए कैसे करें मैं ऑब्जेक्ट गुणों के लिए सत्यापन त्रुटियों को प्रदर्शित करने के लिए स्प्रिंग के <form:errors> टैग का उपयोग करने से परिचित हूं, लेकिन आप वर्ग स्तर पर त्रुटि कैसे प्रदर्शित करते हैं?कक्षा त्रुटि

@ScriptAssert(lang = "javascript", 
     script = "_this.isExistingEmployee == true || (_this.phoneNumber != null && _this.address != null)", 
     message = "New hires must enter contact information") 
public class JobApplicationForm { 

    @NotBlank(message = "First Name is required") 
    private String firstName; 

    @NotBlank(message = "Last Name is required") 
    private String lastName; 

    @NotNull(message = "Please specify whether you are an existing employee in another area") 
    private Boolean isExistingEmployee; 

    private String phoneNumber; 

    private String address; 
} 

@ScriptAssert यहाँ अभी पुष्टि की है कि यदि आवेदक ने संकेत दिया है कि वे एक मौजूदा कर्मचारी हैं वे संपर्क जानकारी को छोड़ सकते हैं, लेकिन यदि नहीं वे करना होगा:

यहाँ मैं किस बारे में बात कर रहा हूँ का एक उदाहरण है इसे दर्ज करें जब यह सत्यापन विफल हो जाता है, तो त्रुटि किसी दिए गए फ़ील्ड पर नहीं बल्कि कक्षा पर होती है।

फॉर्म के भीतर, मैं <form:errors path="firstName"> के साथ एक फ़ील्ड पर एक त्रुटि दिखा सकता हूं और मैं <form:errors path="*"> का उपयोग कर एक बार में सभी त्रुटियों (वर्ग और फ़ील्ड) को प्रदर्शित कर सकता हूं लेकिन मैं वर्ग स्तर की त्रुटियों को अलग और प्रदर्शित कैसे कर सकता हूं?

उत्तर

13

केवल कक्षा-स्तर की त्रुटियों को दिखाने के लिए, पथ को खाली छोड़ दें।

<form:errors path=""> 
स्प्रिंग डॉक्स से

:

  • पथ = "*" - प्रदर्शित करता है सभी त्रुटियों
  • पथ = "lastName" - प्रदर्शित करता है lastName क्षेत्र से जुड़े सभी त्रुटियों
  • अगर पथ छोड़ा गया है - ऑब्जेक्ट त्रुटियां केवल प्रदर्शित होती हैं

रेफरी: http://static.springsource.org/spring/docs/3.2.x/spring-framework-reference/html/view.html#view-jsp-formtaglib-errorstag

संबंधित मुद्दे