2011-05-31 81 views
5

लागू करना मेरा प्रश्न है: आप निम्नलिखित आवश्यकताओं के आधार पर सरल डीएमएस (दस्तावेज़ प्रबंधन) को कार्यान्वित करने पर कैसे जाएंगे?सरल दस्तावेज़ प्रबंधन

  1. डीएमएस शॉल्स को वेब एप्लिकेशन वितरित किया जाना चाहिए।
  2. दस्तावेज़ संस्करण के लिए समर्थन।
  3. दस्तावेज़ लॉकिंग के लिए समर्थन।
  4. दस्तावेज़ खोज।

मैं पहले से ही स्पष्ट हूं कि मैं किस तकनीक का उपयोग करना चाहता हूं। मैं स्ट्रिंग एमवीसी, हाइबरनेट और रिलेशनल (सबसे अधिक संभावना MYSQL) डेटाबेस का उपयोग करूंगा।

एक बात मुझे बहुत स्पष्ट नहीं है कि अगर मुझे webdav का उपयोग करने की आवश्यकता है, क्योंकि मैं सिर्फ अपलोड या डाउनलोड कर सकता हूं। मुझे यह बात है क्योंकि मुझे बिंदु 2 को लागू करने की आवश्यकता है। और विशेष रूप से बिंदु 3. किसी भी तरह। क्या यह सही रास्ता है?

इसके साथ कोई भी उदाहरण या अनुभव बहुत आसान होगा :)। हो सकता है कि मिल्टन वेबडाव चुनने के लिए सबसे अच्छी लाइब्रेरी न हो?

+0

ठीक है मैं देखता हूं बीमार मेरे प्रश्न को अद्यतन करता है, डीएमएस द्वारा मेरा मतलब है दस्तावेज़ प्रबंधन। – Eduard

उत्तर

3

@Eduard किया पर एक नज़र हो सकता है, - कर रहे हैं आप इसे कॉलेज/विश्वविद्यालय अभ्यास या कुछ ऐसा करते हैं जो उत्पादन वातावरण में वास्तविक उपयोगकर्ताओं को प्रभावित करेगा?

बहुत विचित्र लगने के जोखिम पर; पहिया को दोबारा लागू न करें! मैं निश्चित रूप से जेसीआर का उपयोग करने के लिए दूसरा कॉल करूंगा, इस तरह आप एक मानक के आधार पर हैं और तीसरे पक्ष के कार्यान्वयन नहीं कर रहे हैं।

जेसीआर एक अच्छी तरह से परिभाषित मानक है (जिसका अर्थ है कि बहुत से लोगों ने व्यावसायिक प्रयास (यानी भारी मात्रा में नकद और विशेषज्ञता) का निवेश किया है)। मैं गंभीरता से जेसीआर की तलाश में पुनर्विचार करना चाहूंगा - इसे एक एपीआई के रूप में सोचें जहां तीसरे पक्ष कार्यान्वयन प्रदान करते हैं (कोई विक्रेता लॉकिन नहीं)।

उन सुविधाओं पर नज़र डालें जो आपको आउट-ऑफ-द-बॉक्स मिलेगा, मेरा मानना ​​है कि आपको आवश्यक कार्यक्षमता का 99 - 110% जेसीआर कार्यान्वयन के माध्यम से उपलब्ध है। इसके अलावा आप इस तथ्य से लाभ उठाएंगे कि आप जिस कोड का उपयोग करेंगे, उसका वास्तविक दुनिया स्थितियों में सैकड़ों लोगों द्वारा परीक्षण किया गया है।

मैं bmscomp से कहाँ अलग होता Jackrabbit http://jackrabbit.apache.org/ सुझाव है

+0

आप मुझे आश्वस्त कर रहे हैं :) क्योंकि आप सभी एक ही बात +1 कह रहे हैं। – Eduard

+0

इसे सुनकर खुशी हुई =)। यदि ऑफ-द-सेल्फ उत्पाद आपको आवश्यकतानुसार + 80% प्रदान करता है (और शुरुआत से एक एक्स्टेंसिबल एपीआई के रूप में डिज़ाइन किया गया है), तो आप आगे बढ़ेंगे और आपके अधिक विशिष्ट एक्सटेंशन को वापस करने की संभावना होगी व्यापक समुदाय (या तो कोड सबमिशन, ब्लॉग या विकी पोस्ट के माध्यम से) वेबडैव फ्रंट पर: http://jackrabbit.apache.org/jackrabbit-webdav-library.html शुभकामनाएं और खुश कोडिंग – earcam

+0

संपादित करें: देख रहे हैं जैकबब्बिट थोड़ा करीब है, मुझे लगता है कि यह आपके द्वारा किए जाने वाले 99.99% की तरह अधिक पेशकश कर रहा है (और यह एक सक्रिय परियोजना है और मेलिंगलिस्ट और जिरा पर बहुत सारे समर्थन होंगे)। आपके द्वारा सूचीबद्ध चार बिंदुओं से, सभी शामिल हैं और यदि सहकारी लॉकिंग आपके द्वारा प्लग करने योग्य होने के बाद नहीं है: http://jackrabbit.apache.org/api/2.1/org/apache/jackrabbit/core/util/ RepositoryLockMechanism.html और http://wiki.apache.org/jackrabbit/RepositoryLock – earcam

3

विकल्प 1:

मैं WebDAV, उस पर कोई वास्तविक अनुभव के बारे में निश्चित नहीं हूँ। लेकिन मैं आपको मोंगोडीबी जैसे दस्तावेज़ डेटाबेस का उपयोग करने की अत्यधिक अनुशंसा करता हूं।

MongoDB साथ

, आप कर सकते हैं:
1. Handle document versions
2. MongoDB atomic operations है, आप दस्तावेज़ लॉकिंग के अपने तर्क जोड़ सकते हैं।

इससे आपको अपने दस्तावेज़ों की दुकानों की खोज के कुछ शानदार लाभ मिलेगा।

विकल्प 2:

Apache Jackrabbit: एक सामग्री भंडार

एक सामग्री भंडार संरचित के लिए समर्थन और असंरचित सामग्री, पूर्ण पाठ खोज, संस्करण, साथ एक पदानुक्रमित सामग्री की दुकान है लेनदेन, अवलोकन, और अधिक। या 3 पार्टियों पर निर्भरता के बारे में JCR जावा सामग्री भंडार http://en.wikipedia.org/wiki/Content_repository_API_for_Java उपयोग के बारे में

+0

यह अच्छा लगता है और मैं इसे देखता हूं। लेकिन मैं उत्तर के लिए और अधिक देख रहा हूं जो मुझे इस कार्यक्षमता को विकसित करने के तरीके पर और अधिक नेतृत्व करेगा। MogoDB रास्ता बहुत विशिष्ट डीबी है - मुझे अपने ऐप की आवश्यकता है ताकि डेटाबेस विशिष्ट न हो। और सामग्री भंडार का उपयोग करने के लिए जब मुझे केवल दस्तावेजों को स्टोर करने की आवश्यकता होती है तो लगता है कि ओवरकिल लगता है। – Eduard

2

लगता है कि तुम काम Alfresco या और Exo ढांचे पर किया वे एक अच्छा काम

+1

हां उन्होंने अच्छा काम किया लेकिन उनका समाधान मेरे लिए बहुत जटिल है। मुझे उन दस्तावेजों के संस्करण को स्टोर करने की ज़रूरत है जो उन्हें लॉक करने के लिए उपलब्ध हैं और उन्हें खोजना मुश्किल है। एक और बात यह है कि मैं तीसरे पक्ष के समाधान पर निर्भर नहीं होना चाहता हूं। तो मैं इसे अपने आप से विकसित करना पसंद करता हूं। – Eduard

2

आप इन ओपन सोर्स प्रोजेक्ट का उपयोग कर सकते अपनी आवश्यकताओं को पूरा करने के लिए:

  1. http://sourceforge.net/projects/logicaldoc/ - LogicalDOC के साथ एक आधुनिक दस्तावेज़ प्रबंधन प्रणाली है एक अच्छा इंटरफ़ेस, उपयोग करने में आसान और बहुत तेज़। यह एक लचीला और स्केलेबल डीएमएस मंच प्रदान करने के लिए ओड सोर्स जावा प्रौद्योगिकियों जैसे जीडब्ल्यूटी, स्प्रिंग, लुसीन का उपयोग करता है। http://www.logicaldoc.com

  2. http://sourceforge.net/projects/openkm/ - OpenKM दस्तावेज़ प्रबंधन - डीएमएस Updated 2011-05-25 OpenKM शक्तिशाली स्केलेबल दस्तावेज़ प्रबंधन प्रणाली (डीएमएस) है। ओपनकेएम जेबॉस + जे 2 ईई + अजाक्स वेब (जीडब्ल्यूटी) + जैकबैबिट (लुसीन) ओपन सोर्स टेक्नोलॉजीज का उपयोग करता है। http://www.openkm.com/

1

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

हालांकि वेबडैव एक साधारण और क्रॉस प्लेटफॉर्म फ़ाइल ट्रांसफर प्रोटोकॉल के रूप में प्राकृतिक पसंद की तरह दिखता है, लेकिन मुझे कभी भी अच्छे अनुभव नहीं हुए। या तो ग्राहक या सर्वर अच्छी तरह से काम नहीं किया (Konqueror, इंटरनेट एक्सप्लोरर, ज़ोप 2, ...)। प्रोटोकॉल से इतना सार और फ़ाइल तक पहुंचने के कई तरीके प्रदान करते हैं।

+0

+1 मुझे लगता है कि वेबडाव अधिक परेशानी है तो मैंने कल्पना की जब मैंने इस विषय को खोजना शुरू किया। – Eduard

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