2010-05-11 9 views
7

जहाँ तक मुझे पता है कि ब्रेडक्रंब के दो "प्रकार" हैं।क्या ब्रेडक्रंब नेविगेशन को लागू करने के लिए कोई जेएसएफ घटक हैं?

स्थिर/पदानुक्रम एक

  • वर्क्स ढेर
  • प्रविष्टियां जब कोई उपयोगकर्ता चला जाता है "गहरा" साइट
  • प्रविष्टियां में poped कर रहे हैं जब उपयोगकर्ता "ऊपर" से चला जाता है में धकेल दिया जाता है की तरह साइट
  • सभी उपयोगकर्ताओं के लिए समान है (किसी दिए गए पृष्ठ के लिए)
  • इतिहास के बजाय स्थान दिखाता है

एक साधारण उदाहरण के घर होगा -> बड़े श्रेणी -> लघु श्रेणी -> अनुच्छेद

गतिशील/ऐतिहासिक एक

  • वर्क्स एक कतार
  • प्रविष्टियां पर धकेल दिया जाता है की तरह अंत में जब कोई उपयोगकर्ता दूसरे पृष्ठ पर जाता है
  • अधिकतम आकार पहुंचने पर प्रविष्टियों को हटा दिया जाता है जब अधिकतम आकार
  • अलग है प्रत्येक उपयोगकर्ता के लिए, क्योंकि यह वैयक्तिकृत है।
  • स्थान के बजाय समयरेखा/इतिहास दिखाता है।

एक साधारण उदाहरण छोटे श्रेणी होगा -> होम -> बड़े श्रेणी -> घर

सवाल यह है:

वहाँ नेविगेशन के इन प्रकार के लिए किसी भी पहले से तैयार JSF घटक हैं?

उत्तर

2

primefaces देखते हैं, वहाँ घटकों के बहुत हैं और आप ब्रेडक्रम्ब भी http://www.primefaces.org:8080/showcase/ui/breadCrumb.jsf

+0

अच्छा है, लेकिन यह सिर्फ प्रस्तुति हिस्सा है। मुझे जेएसएफ का लाभ उठाने वाले बैक एंड भाग में दिलचस्पी है। मैं आसानी से jQuery/CSS के साथ उपयोगकर्ताओं के लिए एक आकर्षक breadcrumb बना सकता है। – kazanaki

+0

@ कज़ानाकी: आप अपने खुद के प्रश्न का विरोधाभास कर रहे हैं। आप एक जेएसएफ घटक के लिए पूछ रहे थे। लेकिन आप स्पष्ट रूप से अधिक रुचि रखते हैं कि स्वयं को कैसे कार्यान्वित किया जाए। खैर, यह खुला स्रोत है। एक नज़र देख लो। त्रिनिदाद में भी एक बीटीडब्ल्यू है। – BalusC

+0

@ बालससी: मैं समझता हूं कि आप क्या कह रहे हैं और शायद मेरा प्रश्न स्पष्ट नहीं है। मान लें कि मैं प्राइफेस घटक चुनता हूं। तब तक जब तक मैं गलत नहीं हूं तब भी मुझे सर्वर-साइड डेटा संरचना मैन्युअल रूप से बनाने की आवश्यकता है कि प्राइमफ़ेस केवल रेंडर करेगा। मुझे कुछ ऐसा लगता है जो FACEScontext में प्लग करता है और पृष्ठ रीडायरेक्ट के स्वचालित रूप से ट्रैक रखता है। अन्यथा मैं एक सरल इटरेटर और एच: outputtext से इस डेटा संरचना पर प्राइमफेस से क्या हासिल करूं? मैं खुद को कुछ भी लागू नहीं करना चाहता हूं। कम कोड सबसे अच्छा है। लेकिन मैं इसे प्राइमफेस घटक से भरता हूं, मुझे वास्तव में कुछ भी हासिल नहीं होता है। – kazanaki

0

मैं एक ही मुद्दा है पा सकते हैं! लेकिन मुझे लगता है कि समाधान @balusC

द्वारा उल्लिखित एक होगा, अब मैं वर्तमान दृश्य पथ प्राप्त करने के लिए केवल ब्रेडक्रंब का उपयोग कर रहा हूं।

<h:form id="breadcrumb"> 
         <p:breadCrumb> 
          <p:menuitem value="#{bundle.Index}" action="/index?faces-redirect=true" immediate="true"/> 
          <p:menuitem value="#{view.viewId.substring(0, view.viewId.length()-6)}" url="#{view.viewId.substring(0, view.viewId.length()-6)}.jsf" ajax="false"/> 

         </p:breadCrumb> 
        </h:form> 

मैं .jsf उपयोग कर रहा हूँ के रूप में URL पैटर्न चेहरे और के बाद से viewid =/ * .xhtml **, मैं इसे सबस्ट्रिंग था, .xhtml-स्ट्रिंग को हटाने और .jsf जोड़ने स्ट्रिंग।

इसलिए हमें एक बैकिंग बीन की आवश्यकता है जो दर्शक (पथ) प्राप्त करने का काम करता है और उसे ऑर्डर सूची में डाल देता है। javascript:history.back() और history.forward() का उपयोग भी संभव है!

0

this link में आप अपने प्रश्न के लिए उचित उत्तर मिल सकता है मैं आशा है कि यह अगले प्रश्नकर्ता में मदद मिलेगी

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