2012-11-14 10 views
8

में निम्नलिखित जावा स्थिति में struts2 में अनुवाद कैसे करती है?struts2: IF

if(company.getAffiliateId().asInt() != com.foo.bar.Affiliates.XYZ.asInt()){ 
// do something 
} 

company.getAffiliateId() रिटर्न BigDecimal

com.foo.bar.Affiliates है एक enum

यह काम नहीं करता:

<s:if test="%{company.affiliateId.asInt() != com.foo.bar.Affiliates.XYZ.asInt() }"> 
    alert("do something"); 
</s:if> 

उत्तर

8

उपयोग toStringकी तुलना करने के लिए विधि।

<s:if test="ENUM.toString() == 'some_enum_as_string'"> 

और तुम JSP

<s:if test="@[email protected]() == 'some_enum_as_string'"> 
4

में enums उपयोग करना चाहते हैं समझ लिया, यह मेरे लिए काम करता है:

<s:if test="%{company.affiliateId != @[email protected]() }"> 
+0

मुझे लगता है कि enum वर्ग एक डेटाबेस तालिका के आधार पर बनाया गया था। इसमें कोई स्थिर तरीका नहीं है: निजी int आईडी; निजी सहयोगी (int आईडी) {this.id = id; } सार्वजनिक बिगडेसिमल asBigDecimal() {वापसी BigDecimal.valueOf (आईडी); } सार्वजनिक int asInt() {वापसी आईडी; } –

+0

हम्म .. आप सही हैं। मेरे उत्तर के गलत हिस्से को हटा दिया। –