मैं जेएसएफ और प्राइमफेस के लिए बिल्कुल नया हूं और एकाधिक मेनू के साथ एक पूर्ण पृष्ठ लेआउट विकसित करने में कुछ समस्याएं हैं।नेस्टेड प्राइमफेस लेआउट में डायनामिक पेज अपडेट
मुद्दा # 1
इस प्रकार हम बाईं ओर नेस्टेड लेआउट इकाइयों के साथ PrimeFaces 3.3 का उपयोग कर एक पूरे पृष्ठ लेआउट:
:<p:layoutUnit id="west" position="west" header="Services" resizable="true" closable="true" collapsible="true" effect="drop">
<p:layout>
<p:layoutUnit id="inner_center" position="center">
<h:form id="formMainMenu">
<ui:include src="#{menuBean.pageToDisplay}.xhtml" />
</h:form>
</p:layoutUnit>
<p:layoutUnit id="inner_south" size="200" position="south">
<h:form id="formStartMenu">
<p:menu>
<p:submenu label="Start Menu">
<p:menuitem value="Start" actionListener="#{#menuBean.setPageToDisplay('template/menu/start')}" update=":inner_center" />
</p:submenu>
</p:menu>
</h:form>
</p:layoutUnit>
</p:layout>
</p:layoutUnit>
यहाँ समर्थन सेम है
@ManagedBean(name = "menuBean")
@SessionScoped
public class menuBean implements Serializable {
private String pageToDisplay = "template/menu/main";
public String getPageToDisplay() {
return this.pageToDisplay;
}
public void setPageToDisplay(String pageToDisplay) {
this.pageToDisplay = pageToDisplay;
} }
जब मैं मेनू Iteem पर क्लिक करता हूं, तो संपूर्ण layoutUnit (inner_c दर्ज करें) गायब हो जाता है। मैंने अजाक्स के साथ फॉर्म और पैनल नियंत्रण के कई संयोजनों की कोशिश की है और दूसरे पृष्ठ और मेनू को लोड करने के लिए नहीं मिल सकता है। शायद जेएसएफ में मेरे सीमित ज्ञान के कारण मेरा दृष्टिकोण गलत है। मुझे उम्मीद है कि यह कुछ आसान है और मैं इसे अभी याद कर रहा हूं।
मेनू से एटम क्रिया, मैं आंतरिक प्राइमफेस मेनू बीन को आंतरिक_सेंटर लेआउट इकाई में लोड करना चाहता हूं .. शायद मुझे ऐसा करने की आवश्यकता नहीं है और केवल मेनू को अजाक्स के माध्यम से कॉल करें?
ISSUE # 2 इन नेस्टेड लेआउट्यून्स के साथ, जब पृष्ठ लोड होता है, तो पैरेंट लेआउट यूटिट हेडर "सेवाएं" पूरी तरह गायब हो जाती है।
<p:layoutUnit id="west" position="west" header="Services" resizable="true" closable="true" collapsible="true" effect="drop">
समग्र दृष्टिकोण पर कोई भी मदद या सलाह बहुत सराहना की जाती है !!
धन्यवाद!
कुछ पर्यावरण की जानकारी: Mojara 2.1, प्राइमफेस 3.3, नेटबीन आईडीई 7.0.1 + ग्लासफ़िश –
मैं निश्चित रूप से नहीं कह सकता, लेकिन यह समस्या तब हो सकती है जब सम्मिलित पृष्ठों में एक फॉर्म घटक हो। नेस्टेड फॉर्म समस्याएं पैदा करेंगे। –
धन्यवाद। आप सही हैं .. यह अनुशंसा की जाती है कि लेआउट के अंदर फॉर्म रखे जाएं नियंत्रण नियंत्रण, जो मैंने किया है ... यह भी सुनिश्चित कर रहा है कि लोड किए गए पृष्ठों में कोई फॉर्म टैग मौजूद न हो। मैं ' 'और पैनल समूह का उपयोग करके पुनः प्रयास करने जा रहा हूं। शायद एक संदर्भ बंद है। आदर्श रूप में, मैं एक पृष्ठ लोड करना छोड़ना चाहता हूं और लेआउट में सीधे मेनू रख सकता हूं और मूल्य को पार करके इसे गतिशील रूप से पॉप्युलेट कर सकता हूं। ' ' .. हालांकि सुनिश्चित नहीं है कि सबसे अच्छा तरीका है। –