Thursday 15 March 2012

java - Spring MVC form:radiobuttons tag not setting value attribute -


यहां मेरे नियंत्रक से संबंधित कोड है:

  @ModelAttribute ("store_location_types") सार्वजनिक StoreLocationType [] getStoreLocationTypes () {वापसी StoreLocationType.values ​​(); }   

यहां स्टोर लॉकेशन टाइप की परिभाषा है, जो एक ही नियंत्रक में परिभाषित है:

  निजी एंमान स्टोर स्थान स्थान {भौतिक ("भौतिक"), ऑनलाइन ("ऑनलाइन "); निजी स्ट्रिंग डिस्प्ले Name; निजी स्ट्रिंग मान; निजी स्टोर स्थान प्रकार (स्ट्रिंग प्रदर्शननाम) {this.displayName = displayName; This.value = this.name (); } सार्वजनिक स्ट्रिंग getDisplayName () {return.displayName; } सार्वजनिक स्ट्रिंग getValue () {return.value; }}   

यहां प्रासंगिक JSP कोड है:

  & lt; li & gt; & Lt; लेबल & gt; स्थान प्रकार: & lt; / लेबल & gt; & Lt; फ़ॉर्म: radiobuttons path = "StoreLocationType" आइटम = "$ {store_location_types}" itemLabel = "displayName" itemValue = "मान" / & gt; & Lt; / li & gt;   

जब पृष्ठ प्रदान किया जाता है, तब वह उत्पन्न होता है:

  & lt; li & gt; & Lt; लेबल & gt; स्थान प्रकार: & lt; / लेबल & gt; & LT; अवधि & gt; & Lt; इनपुट आईडी = "स्टोर स्थान" टाइप 1 "नाम =" स्टोर स्थान स्थान "प्रकार =" रेडियो "मान =" "& gt; & Lt; label = "StoreLocationType1" & gt; भौतिक & lt; / label & gt; & Lt; / span & gt; & LT; अवधि & gt; & Lt; input id = "StoreLocationType2" name = "StoreLocationType" प्रकार = "रेडियो" मान = "" & gt; & Lt; label = "StoreLocationType2" & gt; ऑनलाइन & lt; / label & gt; & Lt; / span & gt; & Lt; / li & gt;   

मूल्य गुण मेरे enum के "मान" फ़ील्ड के साथ आबादी नहीं हैं I मुझसे यहां क्या गलत हो रहा है? मुझे क्या देखने की उम्मीद है:

  & lt; span & gt; & Lt; इनपुट आईडी = "स्टोर स्थान" टाइप 1 "नाम =" स्टोर स्थान स्थान "प्रकार =" रेडियो "मान =" भौतिक "& gt; & Lt; label = "StoreLocationType1" & gt; भौतिक & lt; / label & gt; & Lt; / span & gt; & LT; अवधि & gt; & Lt; इनपुट आईडी = "स्टोर स्थान" टाइप 2 "नाम =" स्टोर स्थान स्थान "प्रकार =" रेडियो "मान =" ऑनलाइन "& gt; & Lt; label = "StoreLocationType2" & gt; ऑनलाइन & lt; / label & gt; & Lt; / span & gt;   

इनपुट टैग का मान विशेषता StorLocationType.ONLINE.getValue ()

मुझे आपके कोड में कोई समस्या नहीं मिल रही है जब मैंने परीक्षण किया तो यह अच्छी तरह से काम करता है

लेकिन इस मामले में आप इसे सरल तरीके से कर सकते हैं आपको enum में value फ़ील्ड जोड़ने की आवश्यकता नहीं है यदि आप itemValue की और

form: radiobuttons & gt; विशेषता को छोड़ देते हैं तो itemValue विशेषता के मूल्य के लिए वसंत Eum के उदाहरणों का नाम रखेगा।

तो आप ऐसा कर सकते हैं।

Enum

  निजी एंमान स्टोर स्थान स्थान {भौतिक ("भौतिक"), ऑनलाइन ("ऑनलाइन"); निजी स्ट्रिंग डिस्प्ले Name; निजी स्टोर स्थान प्रकार (स्ट्रिंग प्रदर्शननाम) {this.displayName = displayName; } सार्वजनिक स्ट्रिंग getDisplayName () {return.displayName; }}   

जेएसपी

  & lt; लेबल & gt; स्थान प्रकार: & lt; / लेबल & gt; & Lt; फ़ॉर्म: radiobuttons path = "StoreLocationType" आइटम = "$ {store_location_types}" itemLabel = "displayName" / & gt;    

No comments:

Post a Comment