अब एक जावा वेब फ्रेमवर्क चुनना? [बन्द है]


149

हम एक बड़ी वेबसाइट को माइग्रेट करने की योजना के चरण में हैं, जो एक जावा आधारित वेब फ्रेमवर्क के लिए एक कस्टम विकसित पीवीसी फ्रेमवर्क पर बनाया गया है, जो कि अजाक्स, समृद्ध मीडिया सामग्री, मैशप, टेम्पलेट आधारित लेआउट, सत्यापन, अधिकतम HTML / के लिए अंतर्निहित समर्थन प्रदान करता है। जावा कोड जुदाई। ग्रेल्स एक अच्छे विकल्प की तरह दिखते थे, हालांकि, हम एक स्क्रिप्टिंग भाषा का उपयोग नहीं करना चाहते हैं। हम जावा का उपयोग जारी रखना चाहते हैं। टेम्पलेट आधारित लेआउट एक प्राथमिक चिंता का विषय है क्योंकि हम इस वेब एप्लिकेशन को कई वेब साइटों के साथ समान कार्यक्षमता के साथ उपयोग करना चाहते हैं, लेकिन मौलिक रूप से अलग दिखते हैं और महसूस करते हैं।

क्या पोर्टल आधारित समाधान इस समस्या के लिए एक अच्छा फिट है?

"स्प्रिंग रूओ" या "प्ले" का उपयोग करने पर कोई भी जानकारी बहुत मददगार होगी।

मुझे इस तरह के पोस्ट मिलते हैं , लेकिन यह एक वर्ष से अधिक पुराना है। मतलब समय में चीजें बदल गई हैं!

संपादित 1: महान जवाब के लिए धन्यवाद! यह साइट इन-ट्रेंच प्रोग्रामर जानकारी के लिए सबसे अच्छा एकल स्रोत बन रही है। हालाँकि, मैं एक पोर्टल-सेमी डुओ का उपयोग करने के बारे में अधिक जानकारी की उम्मीद कर रहा था। जहिया माल दिखता है। कुछ इसी तरह?


1
"हम एक स्क्रिप्टिंग भाषा का उपयोग नहीं करना चाहते हैं", यह शर्म की बात है, अगर मैं पूछ सकता हूं तो क्यों? अगर आपको प्ले फ्रेमवर्क पसंद है तो आपको रेल के साथ JRuby आज़माना चाहिए। यह सादे जावा नहीं है, लेकिन JRuby से जावा कक्षाओं को कॉल करना सुपर आसान है।
ल्यूक

2
ग्रेव्स (यानी ग्रूवी) जावा के साथ बहुत अच्छा खेलता है, डरने की कोई जरूरत नहीं है।
एरिच किट्ज़म्यूलर

4
@ सहबच्ची: बस जिज्ञासु; 4 महीने बाद, आप किस फ्रेमवर्क के साथ गए? इससे खुश हैं?
जोनीक १

1
क्या यह 'समुदाय विकि' प्रश्न नहीं है?
मिकथोमप्सन

11
"लेकिन यह एक साल से अधिक पुराना है। इस बीच की चीजें निश्चित रूप से बदल गई हैं!" सिल्वर बुलेट निश्चित रूप से इस बीच का आविष्कार किया गया है ... :-)
ObiWanKenobi

जवाबों:


146

क्या पोर्टल आधारित समाधान इस समस्या के लिए एक अच्छा फिट है?

व्यक्तिगत रूप से, मैं बड़े वसा पोर्टल समाधानों से दूर रहूंगा (वे अक्सर उत्पादकता हत्यारे होते हैं)। मैंने गेटिन के बारे में अच्छी बातें सुनी हैं, लेकिन मुझे इसके साथ कोई वास्तविक अनुभव नहीं है।

"स्प्रिंग रूओ" या "प्ले" का उपयोग करने पर कोई भी जानकारी बहुत मददगार होगी।

स्प्रिंग रो के बारे में, मैंने पिछले जवाबों जैसे स्प्रिंग रो बनाम (विकेट और स्प्रिंग) और इंटरनेट पर अन्य चीजों को पढ़ा है लेकिन मैं अभी भी आश्वस्त नहीं हूं (शायद मुझे यह नहीं मिला), मुझे इसकी परिपक्वता पर यकीन नहीं है , और, अधिक महत्वपूर्ण, मैं वास्तव में सोच रहा हूं कि स्प्रिंगस्रोस ग्रैसिल्स और रोओ के साथ क्या कर रहा है (नहीं, ग्रिल्स बनाम रूओ - क्यों स्प्रिंगसोर्स दो बहुत ही समान प्रौद्योगिकियों को आगे बढ़ा रहा है? मुझे विश्वास नहीं दिलाता है कि वे दोनों जीवित रहेंगे)।

मैं प्ले के बारे में ज्यादा नहीं कह सकता। मैंने हर किसी की तरह डेमो देखा है, लेकिन मैं वास्तविक जीवन प्रतिक्रिया पढ़ना चाहूंगा। तब तक मैं इंतजार करूंगा।

मुझे इसी तरह के पोस्ट (...) मिले। मतलब समय में चीजें बदल गई हैं!

हां और नहीं :) लेकिन आइए प्रेजेंटेशन फ्रेमवर्क नर्क में प्रवेश करें: आपके प्रश्न का एक भी उत्तर नहीं है (जैसे एक साल पहले), वहाँ आसपास दर्जनों चौखटे हैं और कोई स्पष्ट विजेता नहीं है। बस कुछ उद्धृत करने के लिए:

  • JSF: मेरे सहित इस घटक आधारित ढांचे के बारे में बहुत संदेह है, इसलिए मैं इसके बारे में बात करने के लिए सबसे अच्छा नहीं हूं लेकिन ...
  • JSF 2 (+ CDI / वेल्ड): JSF संशयवादियों को ( गेविन किंग द्वारा ) "दूसरा रूप लेने" के लिए प्रोत्साहित किया जाता है । वास्तव में, मुझे लगता है कि जेएसएफ 2 एक बड़ा सुधार है, खासकर सीडीआई के साथ, लेकिन ... यह अभी भी बहुत नया है (समझें, यह शुल्क की कमी है)। यदि आप जावा ईई 6 को गले लगाना चाहते हैं, तो इसे देखें।
  • विकेट: एक अन्य घटक आधारित रूपरेखा जो अधिक ध्यान दे रही है। मैं इसके बारे में ज्यादातर अच्छी बातें सुनता हूं: जेएसएफ की तुलना में सरल, अच्छी डिजाइन, उच्च परीक्षणशीलता, एचटीएमएल डिजाइनर अनुकूल, आदि। आप इसे पसंद कर सकते हैं।
  • टेपेस्ट्री: बस नहीं है (देखें कि आपने टेपेस्ट्री का उपयोग क्यों बंद किया? )
  • स्ट्रट्स 2, स्प्रिंग एमवीसी, स्ट्राइप्स: एक्शन आधारित फ्रेमवर्क। सभी सभ्य और आपकी आवश्यकताओं को कवर करेंगे (व्यक्तिगत रूप से, मुझे स्ट्राइप्स और कॉन्फ़िगरेशन दृष्टिकोण पर इसका सम्मेलन पसंद है, इसका एक विचार प्राप्त करने के लिए स्ट्राइप्स बनाम स्ट्रट्स 2 देखें )।
  • GWT, फ्लेक्स, ग्रेल्स: ये वो नहीं हैं जो आप ढूंढ रहे हैं। मैं वास्तव में फ्लेक्स और GWT की (नवीनतम संस्करण) के बारे में बात नहीं कर सकते, लेकिन मैं Grails करता है कि पता है कुछ प्रशंसकों

वास्तव में, मैं मैट राईबल की प्रस्तुतियों पर एक नज़र डालने का सुझाव दूंगा , उन्होंने वास्तव में वेब फ्रेमवर्क की तुलना करने, अपनी ताकत और कमजोरी दिखाने, तथ्यों और संख्याओं को इकट्ठा करने, रुझानों को दिखाने के लिए एक महान काम किया ... मैं सुझाता हूं:

वास्तव में, इन प्रस्तुतियों पर एक नज़र डालें, वे आपको एक उपयुक्त रूपरेखा खोजने में मदद करेंगे (कोई अद्वितीय उत्तर नहीं है लेकिन आप चयन को समाप्त कर सकते हैं) और अपनी बात बदल सकते हैं।


एक अच्छी नौकरी, मैंने वापस ले ली है :)। +1
अदील अंसारी

मैट का हाल ही में जावा वेब f / ws से बाहर शूट भयानक था। अगर मुझे याद है स्ट्रट्स व्यावहारिक रूप से बहुत अधिक अमीर अधिक शक्तिशाली f / ws का एक ही स्कोर था। ऐसा कोई तरीका नहीं है कि कोई भी किसी को सादे जेन के रूप में समझ सके, जो स्ट्रेट्स के लायक था, जो कि जीडब्ल्यूटी या विकेट के पीछे केवल कुछ अंक हैं।
एम.पी.

3
हां, मुझे एहसास है कि कुछ लोगों को मेरी "मैट्रिक्स" या इसकी रेटिंग के लिए मेरा तर्क पसंद नहीं आया। अंत में, मैं इस मैट्रिक्स के साथ क्या करने की उम्मीद कर रहा था, बस एक वेब फ्रेमवर्क चुनने के लिए एक तकनीक को उजागर करना था। आप निम्नलिखित ब्लॉग पोस्ट में मेरी रेटिंग्स के पीछे तर्क के बारे में पढ़ सकते हैं: raibledesigns.com/rd/entry/how_i_calculated_ratings_for
मैट रिबल

जेएसएफ, स्प्रिंग एमवीसी, स्ट्राइप्स, स्ट्रट्स 2, टेपेस्ट्री और विकेट की तुलना करने के बारे में मैट रायबल की प्रस्तुति वास्तव में काफी पुरानी है ...
नेरवे

1
@iberck, मैं हाल ही में AngularJS के साथ प्रयोग कर रहा हूं। ईमानदारी से, मुझे विश्वास है कि यह सबसे अधिक छाया होगा यदि अतिशयोक्ति के बिना सभी वर्तमान वेब फ्रेमवर्क नहीं। इसके बस क्लाइंट पक्ष के लिए एक जेएस फ्रेमवर्क तो आप आसानी से अपने डेटा को पुनः प्राप्त कर सकते हैं और REST का उपयोग कर सर्वर से "कुशलतापूर्वक" कर सकते हैं। इसे आज़माएं, यह आपकी दुनिया को हिला देगा
मुहम्मद गेलबाना

41

मैं थोड़ी देर के लिए स्प्रिंग 3 और Jquery का उपयोग कर रहा हूं लेकिन Play के बारे में सुना और इसे शॉट दिया। मैं वास्तव में इसे पसंद करता हूं, Play PHP की तरह कुछ और स्प्रिंग जैसे भारी शुल्क जावा फ्रेमवर्क के बीच एक महान फिट है।

खेल के बारे में मुझे सबसे ज्यादा पसंद हैं:

  • जमीन से एक प्ले एप्लिकेशन प्राप्त करना बहुत आसान है, आपको स्प्रिंग के साथ स्क्रीन पर एक साधारण क्रूड एप्लिकेशन प्राप्त करने के लिए कोडिंग और कॉन्फ़िगरेशन के साथ बहुत दूर जाना होगा (हालांकि स्प्रिंग 3 ने इसे बहुत आसान बना दिया है)।
  • स्प्रिंग सिक्योरिटी कमाल की है लेकिन यह जटिलता की कीमत पर आती है। Play का सुरक्षा मॉड्यूल बहुत सरल है और संभवतः 90% अनुप्रयोगों की आवश्यकता को पूरा करता है।
  • आप सर्वलेट पर आधारित फ्रेमवर्क के साथ पूरी तरह से नया काम करने के बजाय PHP के साथ परिवर्तन देखने के लिए ब्राउज़र में एक कोड परिवर्तन और हिट ताज़ा कर सकते हैं।
  • त्रुटि संदेशों को अच्छी तरह से प्रदर्शित किया जाता है और अधिकांश समय ऐसा नहीं होता है। प्ले को अभी भी अपनी त्रुटि हैंडलिंग पर काम करने की आवश्यकता है
  • प्ले के लिए एक प्लगइन तंत्र है जो बहुत सरल है।
  • ऑब्जेक्ट दृढ़ता बहुत अच्छी तरह से किया जाता है कि मेमोरी डेटाबेस में और जेपीए फ्रेमवर्क के साथ आता है इसलिए बाहरी ऑब्जेक्ट पर्सिस्टेंट टूल का कोई कॉन्फ़िगरेशन नहीं है। मेमोरी डेटाबेस से वास्तविक RDBMS में जाना कॉन्फ़िगरेशन फ़ाइल में एक पंक्ति परिवर्तन है।
  • एमवीसी सेटअप बहुत अच्छी तरह से किया जाता है। जिस मॉडल वर्ग को आप अपने डोमेन ऑब्जेक्ट बनाने के लिए विस्तारित करते हैं, वह जेपीए इकाई प्रबंधक के साथ एकीकृत होता है। वे सिर्फ POJO नहीं हैं।
  • नियंत्रकों के लिए URL का मानचित्रण सरल और लचीला है और सभी एक "मार्गों" फ़ाइल में है।
  • जब भी आप कोई प्रोजेक्ट बनाते हैं तो Play सभी जार निर्भरता को संभालता है और Play को प्रोजेक्ट को ग्रहण करने की एक उपयोगिता है (या जो भी IDE आपको पसंद है) प्रोजेक्ट ताकि यह सीधे आपके पसंदीदा IDE में आयात हो।

प्ले के बारे में जो चीजें मुझे पसंद नहीं हैं

  • दस्तावेज़ीकरण अभी तक सभी तरह से नहीं है, बहुत सारी अनिर्दिष्ट सुविधाएँ अभी भी मौजूद हैं।
  • फ्रेमवर्क सर्वर है इसलिए आपको प्रत्येक एप्लिकेशन को एक पोर्ट समर्पित करना होगा। मुझे लगता है कि कोई व्यक्ति वर्चुअल होस्ट प्लगइन पर काम कर रहा है, लेकिन मैंने इसे अभी तक कार्रवाई में नहीं देखा है।
  • यह युवा है, परियोजना बहुत बढ़िया है और प्रौद्योगिकी बहुत बढ़िया है लेकिन इसे वास्तव में कुछ और डेवलपर्स की आवश्यकता है। मुझे इसमें कुछ समय समर्पित करना अच्छा लगेगा, हम देखेंगे।

17

मेरे लिए शीर्ष विकल्प विकेट है । मार्कअप और जावा कोड का स्पष्ट पृथक्करण। घटकों को लिखना और उनका उपयोग करना बहुत आसान है। अजाक्स, परीक्षण क्षमता का उपयोग करने के लिए सरल। आप अपने पृष्ठों / घटकों में सही डीबग कर सकते हैं और अपने जेएसएफ कार्यान्वयन से गुप्त त्रुटि संदेश प्राप्त नहीं कर सकते हैं;)

प्रदर्शन के मामले में एक अच्छा तुलना विकेट <-> JSF भी है


4
+1 विरासत, बहुरूपता और रचना के साथ शुद्ध ओओपी अभिविन्यास का उल्लेख नहीं करना। इसके अलावा, XML- कॉन्फिग फाइल मुफ्त!
Xavi लोपेज़

3
यह कहते हुए कि लोग यहां ढाले हैं क्योंकि उन्हें सुझाई गई रूपरेखा पसंद नहीं है। सिर्फ मेरे विकेट का जवाब नहीं, लगभग सभी के पास कुछ डाउन वोट हैं ..
बर्ट'

13

मेरे लिए शीर्ष तीन विकल्प हैं (वर्णानुक्रम में):

वे:

  • अच्छा अजाक्स समर्थन है
  • आपको वास्तविक वेब-साइट बनाने की अनुमति देता है, एप्लिकेशन नहीं (जैसे GWT)
  • स्थिर, अच्छी तरह से प्रलेखित, व्यापक रूप से उपयोग किया जाता है
  • MVC
  • शुद्ध जावा
  • मिडलवेयर के रूप में स्प्रिंग के साथ आसान एकीकरण

17
मुझे नहीं पता कि कोई कैसे दावा कर सकता है कि JSF का उपयोग "वास्तविक वेब-साइट बनाने के लिए" किया जा सकता है। कोई भी ढांचा जो POST के उपयोग को बाध्य करता है, इस संबंध में तुरंत हार जाता है।
स्टीफन टिलकोव

3
मैंने JSF के साथ "वास्तविक वेबसाइटें" विकसित की हैं, और मैंने बिना किसी समस्या के ऐसे उपयोग किया है। इसके अलावा, POST का उपयोग केवल तभी किया जाता है जब आप कुछ पोस्ट कर रहे हों। आप सरल GET नेविगेशन का उपयोग करने के लिए हमेशा स्वतंत्र हैं। सैद्धांतिक रूप से, यदि आप किसी संसाधन को संशोधित कर रहे हैं, तो क्या यह GET का उपयोग करना गलत है, नहीं?
बोझो

इसके अलावा, आपको पास्कल को कम करना होगा, साथ ही जेएसएफ का सुझाव देने के लिए;)
बूझो

3
कोई अपराध नहीं है, लेकिन यह 'सामान' की एक सूची की तरह लगता है जिसे आपने वर्षों पहले देखा होगा, इसलिए मैं इसे देखकर आश्चर्यचकित हूं। मेरे अनुभव में, ज्यादातर उन गलत तरीकों से आगे बढ़े हैं। मुझे लगता है कि यदि आप पहले से ही इन में एक विशेषज्ञ हैं तो वे उत्कृष्ट विकल्प होंगे, लेकिन मैं ओ एंड एम प्रोग्रामर्स के लिए चिंतित रहूंगा, जिन्हें विशेषज्ञों द्वारा परियोजना छोड़ने के बाद काम करना होगा। कोई भी वास्तव में इस सामान को और अधिक IMO नहीं सीख रहा है।
मानस

1
टिप्पणियों की यह पंक्ति वास्तव में थोड़ी प्रफुल्लित करने वाली है। JSF बिल्कुल अच्छी तरह से वेब साइटों के लिए इस्तेमाल किया जा सकता है, और यह GET और POST दोनों के लिए प्रथम श्रेणी का समर्थन है। हाथ में स्थिति के लिए सबसे उपयुक्त है का उपयोग करें। वास्तव में जैसा कि Bozho इंगित करता है, अगर यह एक संसाधन को संशोधित करता है तो GET का उपयोग न करें, अन्यथा ऐसा करने के लिए स्वतंत्र महसूस करें।
अर्जन टिजम्स


10

अन्य उत्तरों के विपरीत, मैं लोकप्रिय वेब फ्रेमवर्क के नुकसान (IMHO) को उजागर करना चाहूंगा:

JSF2 - जारी और पहले से ही वृद्ध। अभी भी केवल कुछ समाचार / लेख / ब्लॉग पोस्ट / अनुभव बाहर। मुझे संदेह है। फिर भी रिचफेसेस / आइसफैस की अगली प्रमुख रिलीज का इंतजार है जो पूरी तरह से jsf 2 का समर्थन करती है - वर्तमान में केवल अल्फा बिल्ड डाउनलोड किए जा सकते हैं।

स्ट्रट्स 2 - यदि आप अभी भी स्ट्रट्स पर भरोसा कर रहे हैं और अपने अधिकांश कोड को रिफलेक्टर करना चाहते हैं, तो यह केवल एक अच्छी बात है। अन्यथा: नहीं।

जीडब्ल्यूटी - मुझे एकल-पृष्ठ और जावा-> जावास्क्रिप्ट दृष्टिकोण पसंद नहीं है। मुझे यकीन नहीं है कि एक सत्र - कई विचारों / खिड़कियों को आसानी से प्राप्त किया जा सकता है। मेरे लिए, इस फ्रेमवर्क का उपयोग बड़े पैमाने पर उपयोगकर्ताओं के लिए सिंगल-विंडो रिच इंटरनेट अनुप्रयोगों के लिए किया जाना चाहिए।

विकेट - अच्छा तरीका, लेकिन थोड़ी सी क्रिया और बहुत कम प्रलेखन उपलब्ध है (एक्शन बुक में अच्छे विकेट को छोड़कर, लेकिन यह केवल 1.3 को कवर करता है)। इसके अलावा, मेरे लिए इसमें बड़ी परियोजनाओं का अभाव है जो इसके ऊपर बनी हैं। और मैं वर्तमान में यह नहीं देख सकता कि विकेट की सड़क कहाँ से यात्रा कर रही है या अगर यह पहले से ही एक मृत अंत तक चला गया है।

स्प्रिंग एमवीसी - ने अभी तक यह कोशिश नहीं की है, लेकिन आपको अपने ढांचे में ठीक से काम करने के लिए अपने क्लासपाथ में कई जार (स्प्रिंग मेस) को शामिल करना होगा। और यह जेएसपी (अधिकांश परियोजनाओं में) पर निर्भर करता है, जिसे मैं पहले से ही मृत मानता हूं। और आपको केवल एक शुद्ध MVC फ्रेमवर्क मिलता है - अन्य सभी चीजों (अजाक्स और अन्य) को लागू / एकीकृत करना होगा।

धारियाँ - एक छोटा और अच्छा डिज़ाइन किया गया MVC फ्रेमवर्क, लेकिन बहुत कम दस्तावेज़ीकरण, बहुत कम कमिट / कमिटर्स, बहुत कम रिलीज़, बहुत कम उद्योग समर्थन, बहुत कम मेलिंग सूची गतिविधि।

मैं भी उत्सुक हूं अगर मुझे वहां से एक बड़ी रूपरेखा याद आती है (मैंने टेपेस्ट्री को जानबूझकर छोड़ दिया) जो आपके लिए एक विकल्प हो सकता है (और मेरे लिए भी,)।


मुझे इसे संभालने का सबसे अच्छा तरीका मिल गया है जो कि पायथन वेब फ्रेमवर्क के समान है: पिक एंड चूज़ इन द बेस्ट। उदाहरण के लिए: स्प्रिंग + JAX-RS
एडम जेंट

GWT के बारे में आपकी टिप्पणी गलत है। एक बड़ी चीज़ के बजाय कई अलग-अलग पृष्ठ रखना काफी आसान है। दूसरे "कार्रवाई" और अच्छी तरह से शुरू करने के लिए दूसरे पृष्ठ पर एक लिंक डालें।
एम.पी.

मैं कई विंडो (या टैब) के बारे में भी बात कर रहा हूं। क्या एक ही सत्र में एक साथ एक से अधिक विंडो का उपयोग करना वास्तव में संभव है?
MRalwasser

1
+1 इस पोस्ट को 2 नकारात्मक आवाज़ें क्यों मिलीं? सकारात्मक लोगों की तुलना में इस तरह के संदेहपूर्ण विचार समान रूप से महत्वपूर्ण हैं (यदि अधिक नहीं)! और ये मुझे रचनात्मक की तरह लगते हैं।
पियोट्र सोबस्ज़क

8

मुझे JAX-RS से बड़ी सफलता मिली है । यह एकमात्र जावा वेब फ्रेमवर्क है जिसमें जेएसआर कल्पना और सर्वलेट और पोर्टलेट कल्पना के अलावा कई कार्यान्वयन हैं (हालांकि यह एक बुरी बात हो सकती है)।

एक बात जो जावा के बारे में बुरी और अच्छी है, वह यह है कि आप फ्रेमवर्क चुन सकते हैं और मेल कर सकते हैं (अजगर में यह सुविधा / समस्या भी है)। यह अच्छा है क्योंकि आपको अपने सभी अंडे एक टोकरी में रखने की ज़रूरत नहीं है।

यहाँ एक सामान्य जावा वेब एप्लीकेशन स्टैक रेसिपी है:

जावास्क्रिप्ट / फ्लैश + अनुरोध / प्रतिक्रिया / हैंडलिंग + निर्भरता इंजेक्शन + दृढ़ता

जावास्क्रिप्ट: JQuery, प्रोटोटाइप, Dojo

अनुरोध / प्रतिक्रिया: स्प्रिंग एमवीसी, स्ट्राइप्स, और मेरा पसंदीदा JAX-RS (जर्सी, अपाचे सीएक्सएफ)

निर्भरता इंजेक्शन: वसंत, गिटार

दृढ़ता: जेपीए (हाइबरनेट, Google ऐप स्टोरेज), हाइबरनेट, जेडडीओ और बहुत कुछ।

मुझे जावा को "कम चूसना" बनाने के लिए एस्पेक्टेज का उपयोग करने में भी बड़ी सफलता मिली है। स्प्रिंग के @Configurable और AspectJ के ITD मिश्रण का उपयोग करके आप डोमेन ऑब्जेक्ट्स की तरह रेल प्राप्त कर सकते हैं (यह वही है जो Roo करता है लेकिन आपको ऐसा करने के लिए Roo की आवश्यकता नहीं है)।


4
मैं सहमत हूँ। अपनी खुद की स्टैक स्थापित करने में अधिक समय लगता है, लेकिन फिर आपको वही मिलता है जो आप चाहते हैं। मैं वर्तमान में jQuery, जर्सी, स्प्रिंग और JPA2 का उपयोग कर रहा हूं। JAX-RS महान है क्योंकि आपकी प्रतिक्रिया पर आपका पूर्ण नियंत्रण है।
ब्रायन डिकैसा

6

मैंने धारियों को वास्तव में प्रभावी और आश्चर्यजनक रूप से हल्का पाया है .... इसका उद्देश्य स्ट्रट्स की तुलना में अधिक हल्का होना है । मैंने उन दोस्तों से सुना है जो फुलटाइम वेब डेवलपर्स हैं जो JSF के साथ परेशान होने के लायक नहीं है, हालांकि मुझे कोई फ़र्स्टहैंड अनुभव नहीं है, और उदाहरणों (!) के साथ वापस नहीं कर सकते।


5

Resthub पर एक नज़र डालें , कि उन्हीं सिद्धांतों का पालन करें जो खेलते हैं! लेकिन मावेन 3 / स्प्रिंग 3 / जर्सी / jQuery जैसे कुछ एंटरप्राइज़ ग्रेड फ्रेमवर्क / टूल का पुन: उपयोग करके कार्यान्वित किया गया।

Resthub अन्य फ्रेमवर्क की तुलना में बहुत विघटनकारी है क्योंकि यह एक पूर्ण स्टैक टूलकिट है, लेकिन बिना किसी सर्वरसाइड MVC या सर्वलेट आधारित फ्रैमवर्क के। इसके बजाय, यह एक jQuery यूआई आधारित जीयूआई का उपयोग करता है जो JAX-RS (REST) ​​वेबसर्विसेज और एक जावास्क्रिप्ट टेम्प्लेटिंग प्रणाली का उपयोग करता है जो एम्बेडेड जेएस पर आधारित होता है।

सर्वर स्टेटलेस होते हैं, और हम क्लाइंट साइड पर सेशन रखने के लिए HTML5 सेशनस्टोरेज का उपयोग करते हैं। यह दृष्टिकोण आरआईए और मापनीयता के लिए डिजाइन है।

कुछ डेमो एप्लिकेशन प्रदान किए जाते हैं (भले ही निर्माणाधीन हों)।


3

JSF एक अच्छा framewrok है, लेकिन JSF 1.2 में इसकी रिलीज से आने वाले वर्षों के लिए दृष्टि की कमी थी। JSF 2.0 आशाजनक दिखती है और इसमें कई नई चीजें जोड़ी गई हैं जैसे कि mj JSF 1.2 ajax सपोर्ट, फेसलेट्स, एनोटेशन सपोर्ट और डिफाल्ट कन्वेंशन (कम XML), 1.2 की तुलना में आसान कंपोनेंट बिल्डिंग।

यह वसंत के साथ अच्छी तरह से एकीकृत करता है, अगर आप डीआई समर्थन के लिए चिंतित हैं।


2

मैं स्प्रिंग की सिफारिश को पूरा करूंगा। मैं एक बहुत बड़ा प्रशंसक नहीं हूँ GWT, मुझे नहीं लगता कि जावा -> जावास्क्रिप्ट क्रॉसकॉम्पलर अभी तक काफी है। मैं एक AJAX ऐप पर काम कर रहा हूं जो सर्वर पर स्प्रिंग और क्लाइंट पर jQuery का उपयोग करता है। यद्यपि तकनीकी रूप से jQuery के लिए "आउट-ऑफ-द-बॉक्स" समर्थन नहीं है, वसंत-एमवीसी AjaxView को लागू करना मृत सरल है और कोड की लगभग 25 पंक्तियां ले ली हैं।


2

हो सकता है कि एक छोटे से दिखाने के लिए देर से काटा, लेकिन मैं है उल्लेख करने के लिए Vaadin । प्रोग्रामिंग जावा में विशेष रूप से एक घटक-आधारित दृष्टिकोण के साथ किया जाता है। क्लाइंट-सर्वर संचार डेटा ट्रांसपोर्टेशन की तुलना में उपयोगकर्ता की बातचीत के बारे में अधिक है, सभी व्यावसायिक तर्क सर्वर पर रहते हैं।


1
मैं वैडिन का उपयोग करता हूं, इसका सिर्फ एक जटिल अनुप्रयोग के निर्माण के लिए अच्छा नहीं है।
रादन


1

मुझे लगता है कि आप जो ढूंढ रहे हैं, वह जहिया के करीब है। यह GWT, मैशअप, मीडिया कंटेंट आदि का समर्थन करता है।

http://www.jahia.org/cms/lang/en/home/Jahiapedia/Jahia_Templates http://www.jahia.net/downloads/jahia/jahia6.0.0/readme/index.html


अछा लगता है! क्या यह खुला स्रोत / उद्यम के लिए स्वतंत्र है? क्या यह व्यापक रूप से उपयोग किया जाता है?
cosmos

यह सभी बुनियादी सामान और और उद्यम संस्करण के साथ एक समुदाय संस्करण है के साथ कुछ अतिरिक्त आदि इस जगह की जाँच करें jahia.com/jahia/Jahia
सैयद एम Shaaf


1

देखिए इसका नैनेट

इसका मूल रूप से सर्वर में जावा W3C ब्राउज़र है, आश्चर्यजनक रूप से सरल (सर्वर में DHTML), AJAX के गहन सिंगल पेज इंटरफ़ेस अनुप्रयोगों को बढ़ावा देता है


फ्रेमवर्क के पूरी तरह से प्रलेखित फीचर शोकेस जैसा कुछ नहीं: innowhere.com/itsnat/…
रवींद्रनाथ अकिला

0

कुछ ऐसा जो केवल एक बुलेट से अधिक का हकदार है, खिलाड़ी आधारित आरआईए फ्रेमवर्क हैं। पूर्व। Adobe Flex + Java (निश्चित रूप से यह इस बात पर टिका हो सकता है कि क्या आपकी "साइट" वास्तव में "साइट" है या "एप्लिकेशन" की तरह अधिक है, आप फ्लेक्स में ब्लॉग साइट नहीं करेंगे।)

ajax,

AJAX-as-a-buzzword अर्थ में, Flex आमतौर पर AMF का उपयोग करता है (एक बाइनरी प्रोटोकॉल जो AJAX ऐप्स द्वारा उपयोग किए जाने वाले प्रोटोकॉल की तुलना में अधिक कुशल है), हालांकि आप फ्लेक्स के साथ भी सख्ती से AJAX सामान कर सकते हैं। तो फ्लेक्स AJAX का समर्थन करता है, लेकिन "AJAX से बेहतर" का भी समर्थन करता है।

समृद्ध मीडिया सामग्री, मैशप,

फ्लेक्स 'वर्चुअल मशीन' प्लेटफ़ॉर्म पर चलता है, इसलिए मुझे लगता है कि इसमें बहुत कम ज़रूरतें हैं।

टेम्पलेट आधारित लेआउट,

यह निश्चित नहीं है कि यह वास्तव में क्या हो रहा है, लेकिन यह फ्लेक्स mxml की तरह लगता है।

सत्यापन,

निश्चित रूप से समर्थित, हालाँकि आप कुछ पसंदीदा चीजें करना चाहते हैं, अगर आप कल्पना करना चाहते हैं। (ऐसा नहीं है कि आपके पास है।) अच्छी बात यह है कि आप जितना चाहें उतना परिष्कृत हो सकते हैं - या नहीं।

अधिकतम HTML / जावा कोड पृथक्करण

आप फ्लेक्स / सिल्वरलाइट / JavaFX जैसे 'वर्चुअल मशीन' विकास के दृष्टिकोण का उपयोग करके अधिक अलग नहीं हो सकते। यह आपके सर्वर-साइड लॉजिक और डेटा एक्सेस लेयर से आपके प्रेजेंटेशन कोड को अलग रखने में सक्षम नहीं है - यह सुनिश्चित करता है कि वे अलग हो जाएं। आपके विकास के वातावरण का 'वर्चुअलाइज़ेशन' करने से आपको क्रॉस-ब्राउज़र संगतता, एक सुसंगत लक्ष्य प्लेटफ़ॉर्म, नए ब्राउज़र या नए ब्राउज़र के बारे में कोई चिंता नहीं होती है जो आपके एप्लिकेशन को तोड़ता है, लाइन जावा की तरह डिबगिंग क्षमताओं में से एक है, और एक अधिक पेशेवर / प्रभावशाली दिखने वाला अंतिम उत्पाद है। ।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.