से मैं JSF और Primefaces उपयोग कर रहा हूँ और मेरे सवाल यह है:JSF ViewParam CommandButton
मैं एक पृष्ठ (page1.jsf) है (अंतरिक्ष सीमांकित) एक तार की सूची के साथ एक दृश्य के परम recive:
<f:metadata>
<f:viewParam name="list" value="#{bean1.list}" converter="listConverter"/>
</f:metadata>
सूची कनवर्टर स्ट्रिंग को अलग-अलग शब्दों की सूची में परिवर्तित करता है। यदि मैं यूआरएल के माध्यम से पृष्ठ तक पहुंचता हूं (उदाहरण: पेज 1.जेएसएफ? सूची = शब्द 1 शब्द 2 शब्द 3 ") सब ठीक काम करता है!
लेकिन अब मैं उस सूची को बनाने के लिए एक और पेज (पेज 2.जेएसएफ) का उपयोग करने की कोशिश कर रहा हूं । पदों की मैं एक Primeface DataTable उपयोग कर रहा हूँ, इस उदाहरण की सहायता: http://www.primefaces.org/showcase/ui/datatableRowSelectionRadioCheckbox.jsf
मैं उपयोगकर्ता के लिए संभव tomake चाहते एकाधिक पंक्तियों (चेक बॉक्स Primeface उदाहरण) का चयन करें और फिर एक बटन है कि page1.jsf पर रीडायरेक्ट करेगा प्रेस करने और चयनित आइटमों की सूची पैरामीटर के रूप में भी पास करती है (उदाहरण के लिए, प्राइमफेस शोकेस उदाहरण का उपयोग करके, चयनित कार मॉडल की एक सूची पास करें)
मैं टी करने की कोशिश कर रहा हूं उसके:
<p:commandButton action="page1?faces-redirect=true&includeViewParams=true" >
<f:attribute name="list" value="#{bean2.convertSelectedItemsToString()}" />
</p:commandButton>
या इस:
<p:commandButton action="page1?faces-redirect=true&includeViewParams=true" >
<f:param name="list" value="#{bean2.convertSelectedItemsToString()}" />
</p:commandButton>
जहां bean2 एक selectedItems [] चयनित वस्तुओं के साथ है।
कहने की जरूरत नहीं है ... यह काम नहीं कर रहा है।
कोई मदद? अग्रिम धन्यवाद।
एक अस्थायी समाधान के रूप में मैं आपका दूसरा दृष्टिकोण चला गया। लेकिन मुझे यह पसंद नहीं है, क्योंकि इस तरह से मेरा नियंत्रक (बीन) मेरे विचारों पर भारी निर्भर है। मुझे उम्मीद थी कि जेएसएफ मुझे एक बेहतर समाधान प्रदान करेगा। – userk
जेएसएफ में एक बैकिंग बीन सम्मेलन द्वारा "माना जाता है" एक दृश्य को वापस करने के लिए होता है, ताकि बैकिंग बीन निर्भर हो सके। 'बीन 2 नहीं है।convertSelectedItemsToString' पहले से ही विशिष्ट दिखता है, या आप वहां कुछ सामान्य कर रहे हैं? यदि आपको एक सामान्य समाधान की आवश्यकता है तो आप पेज में पैरामीटर के रूप में पास कर सकते हैं। अद्यतन उत्तर देखें। –
यह एक चालाक कामकाज है! वह में स्वयं कर लूँगा! धन्यवाद। – userk