वर्तमान में, मैं सॉर्टिंग/फ़िल्टरिंग क्षमताओं के साथ एक डाटाटेबल का उपयोग करके अपने डेटाबेस से सफलतापूर्वक छवि मेटाडेटा प्रदर्शित कर रहा हूं। मेरे डेटाटेबल के नीचे मैं एक तृतीय पक्ष छवि कवरफ्लो (http://www.jacksasylum.eu/ContentFlow/) का उपयोग कर अपनी छवियों को सफलतापूर्वक प्रदर्शित कर रहा हूं। मैं इस बिंदु पर दोनों को प्रदर्शित करने के लिए एक ही सूची का उपयोग कर रहा हूं। मेरे डेटाटेबल के भीतर अपना डेटा फ़िल्टर करने के बाद मुझे फ़िल्टर किए गए डेटाटेबल परिणामों के साथ अपने कवरफ्लो में अपनी छवि सूची को गतिशील रूप से अपडेट करने की आवश्यकता है।प्राइमफेस सेव/पास फ़िल्टर किए गए डेटाटेबल परिणाम सूची
प्राइमफेस का उपयोग करके ऐसा करने का सबसे अच्छा तरीका क्या है? क्या कोई मुझे एक कामकाजी उदाहरण की ओर इशारा करने में सक्षम होगा?
यहाँ मेरी कोड है:
screenshotData.xhtml
<h:form>
<p:dataTable var="scrshot" value="#{screenshots}" paginator="true" rows="8"
paginatorTemplate="{CurrentPageReport} {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
rowsPerPageTemplate="5,10,15" widgetVar="dataTable" draggableColumns="true"
emptyMessage="No screenshot data found with given criteria">
<f:facet name="header">
<p:outputPanel>
<h:outputText value="Search all fields:"/>
<p:inputText id="globalFilter" onkeyup="dataTable.filter()" style="width:150px" />
</p:outputPanel>
</f:facet>
<p:column headerText="Time" sortBy="#{scrshot.time}" filterBy="#{scrshot.time}" filterMatchMode="startsWith">
<h:outputText value="#{scrshot.time}" />
</p:column>
<p:column headerText="Id" sortBy="#{scrshot.id}" filterBy="#{scrshot.id}" filterMatchMode="startsWith">
<h:outputText value="#{scrshot.id}" />
</p:column>
<p:column headerText="User" sortBy="#{scrshot.user}" filterBy="#{scrshot.user}" filterMatchMode="startsWith">
<h:outputText value="#{scrshot.user}" />
</p:column>
</p:dataTable>
</h:form>
<br/>
<h:form>
<p:outputPanel id="imgBlock" layout="block">
<div class="ContentFlow" style="width: 1400px; height: 500px" align="center">
<div class="loadIndicator"><div class="indicator"></div></div>
<div class="flow">
<a4j:repeat var="img" value="#{screenshots}" rendered="true">
<div class="item">
<img class="content" id="images" src="ImgServlet?id=#{img.id}" title="#{img.time}" draggable="true"/>
<div class="label">#{img.id}</div>
</div>
</a4j:repeat>
</div>
<div class="globalCaption"></div>
<div class="scrollbar"><div class="slider"><div class="position"></div></div></div>
</div>
</p:outputPanel>
</h:form>
...............
Screenshot.java
@Entity
@XmlRootElement
@Table(name="imgTable", uniqueConstraints = @UniqueConstraint(columnNames = "id"))
public class Screenshot implements Serializable, PhotoInterface {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue
private Long id;
private String user;
private Timestamp time;
-------- Getters/Setters ---------
ScreenshotListProducer.java
@RequestScoped
public class ScreenshotListProducer {
@Inject
private EntityManager em;
private List<Screenshot> screenshots;
@Produces
@Named
public List<Screenshot> getScreenshots() {
return screenshots;
}
जानकारी के लिए धन्यवाद! मैंने इसे कार्यान्वित किया और आउटपुट पैनल में फ़िल्टर किए गए परिणाम प्रदर्शित कर सकते हैं! वर्तमान में, मैं एक डेटाटेबल के भीतर चयनित रिकॉर्ड की छवियों को प्रदर्शित करने की कोशिश कर रहा हूं। मुझे इस प्रश्न के दायरे के बाहर ContentFlow कार्यान्वयन के साथ कोई समस्या दिखाई देती है। आप यहां उस पर देख सकते हैं: http://stackoverflow.com/questions/11660247/display-db-images-using-contentflow-coverflow-illegalstateexception-error आपकी मदद के लिए धन्यवाद! – user1530469
यह सुनकर अच्छा लगा कि आपकी प्रगति बढ़ रही है। यदि मेरा उत्तर आपके द्वारा पूछे गए प्रश्न का उत्तर देता है, तो उत्तर को स्वीकार करने के लिए स्वतंत्र महसूस करें, मुझे धन्यवाद कि सभी धन्यवाद ;-) रास्ते में स्टैक ओवरफ्लो में आपका स्वागत है। – siebz0r