2008-09-25 11 views
8

मेरे पास एक चरणीय संख्या कॉलम और डेटा स्क्रोलर वाला डेटा टेबल है। मैं सर्वर साइड सॉर्टिंग कैसे सक्षम कर सकता हूं? मैं पसंद करता हूं कि इसे कॉलम हेडर पर क्लिक करने वाले उपयोगकर्ता द्वारा निकाल दिया जाए।रिचफेस में सर्वर-साइड डेटाटेबल सॉर्टिंग

<rich:datascroller for="instanceList" actionListener="#{pageDataModel.pageChange}"/> 
<rich:dataTable id="instanceList" rows="10" value="#{pageDataModel}" 
       var="fieldValues" rowKeyVar="rowKey"> 
    <rich:columns value="#{pageDataModel.columnNames}" var="column" index="idx"> 
    <f:facet name="header"> 
     <h:outputText value="#{column}"/> 
    </f:facet>   
    <h:outputText value="#{classFieldValues[idx]}" /> 
    </rich:columns> 
</rich:dataTable> 

मेरे पास पहले से ही इस तरह के निष्पादन के लिए बीन पर एक विधि है।

public void sort(int column) 

उत्तर

6

मैं इसे मैन्युअल रूप से कर रहा हूं। मैं हेडर टेक्स्ट टैग में एक समर्थन टैग जोड़ रहा हूं, जैसे।

<h:outputText value="#{column}"> 
    <a4j:support event="onclick" action="#{pageDataModel.sort(idx)}" 
       eventsQueue="instancesQueue" 
       reRender="instanceList,instanceListScroller"/> 
</h:outputText> 

आरोही/अवरोही तीर प्राप्त करने के लिए, मैंने एक सीएसएस कक्षा जोड़ा।

<h:outputText value="#{column}" styleClass="#{pageDataModel.getOrderClass(idx)}" > 
    <a4j:support event="onclick" action="#{pageDataModel.sort(idx)}" 
       eventsQueue="instancesQueue" 
       reRender="instanceList,instanceListScroller"/> 
</h:outputText> 
0

"समृद्ध: कॉलम" की "sortBy" संपत्ति पर नज़र डालें, शायद यही वह है जिसे आप ढूंढ रहे हैं। Richfaces Reference

+2

मुझे यह विशेषता लगातार काम करने के लिए नहीं मिल सकती है। वैसे भी उन्होंने सर्वर साइड सॉर्टिंग कहा। समृद्ध नहीं है: सॉर्ट के साथ कॉलम क्लाइंट साइड सॉर्टिंग? –

0

क्या आप सूची पुनर्प्राप्त करते समय संग्रह.sort() का उपयोग करते हैं?

1

आपके डेटामॉडल को "संशोधित" इंटरफेस को लागू करने की आवश्यकता है।

डेटाटेबल सर्वर को सॉर्टिंग और फ़िल्टरिंग करने के लिए कॉल करेगा।

1

इस समाधान यहाँ करने के लिए एक काफी सुरुचिपूर्ण समाधान नहीं है:

http://livedemo.exadel.com/richfaces-demo/richfaces/sortingFeature.jsf?tab=ex-usage

इस डेमो टैग का उपयोग कर से बचा जाता है।

+2

यह दिखाता है कि बाहरी सॉर्टिंग कैसे करें, लेकिन सॉर्टिंग अभी भी क्लाइंट पक्ष पर हो रही है। मेरा मानना ​​है कि ओपी हेडर्स पर क्लिक करने से क्लिक ईवेंट को पकड़ने में दिलचस्पी लेता है और फिर बैकएंड पर क्रमबद्ध अंतर्निहित डेटासोर्स होता है। –

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