2012-01-19 10 views
8

से सोलर में इंडेक्स पीडीएफ दस्तावेज मूल रूप से मैं सोलर में शब्द या पीडीएफ दस्तावेज़ों को इंडेक्स करने की कोशिश कर रहा हूं और एक्स्ट्रेक्टिंग रिवेस्ट हैंडलर पाया है, लेकिन यह पता नहीं लगा सकता कि सी # में कोड कैसे लिखना है जो HTTP पोस्ट अनुरोध करता है जैसे कि सोलर विकी: http://wiki.apache.org/solr/ExtractingRequestHandlerसी # क्लाइंट

मैंने सोलर ज़िप में उदाहरण/solr निर्देशिका से फ़ाइलों का उपयोग करके टॉमकैट 7 (7.0.22) पर सोलर 3.4 स्थापित किया है और मैंने कुछ भी नहीं बदला है। ExtractingRequestHandler को solrconfig.xml में बॉक्स से कॉन्फ़िगर किया जाना चाहिए और उपयोग करने के लिए तैयार है, है ना?

क्या आप में से कुछ सी # (HttpWebRequest) उदाहरण दे सकते हैं कि आप HTTP POST अनुरोध कैसे करते हैं और पीडीएफ फ़ाइल अपलोड करते हैं जैसे कि सौर विकी में कर्ल का उपयोग करके किया जाता है?

मैंने इस साइट पर पूरी तरह से देखा है और कई अन्य इस उदाहरण के बारे में एक उदाहरण या ट्यूटोरियल ढूंढने की कोशिश कर रहे हैं, लेकिन कुछ भी नहीं मिला है।

संपादित करें:

मैं अंत में यह SolrNet का उपयोग कर काम करने के लिए पाने में कामयाब रहे!

ताकि इसे आप Solr ज़िप से अपने Solr स्थापना निर्देशिका में lib-फ़ोल्डर को यह नकल करने की जरूरत है काम करने के लिए: से

  • अपाचे-Solr सेल 3.4.0.jar फ़ाइल के जिले फोल्डर
  • सामग्री योगदान \ निष्कर्षण \ lib निर्देशिका

SolrNet 0.4.0 बीटा 2 के साथ, इस कोड का काम करता है:

Startup.Init<IndexDocument>("YOUR-SOLR-SERVICE-PATH"); 
var solr = ServiceLocator.Current.GetInstance<ISolrOperations<IndexDocument>>(); 

using (FileStream fileStream = File.OpenRead("FILE-PATH-FOR-THE-FILE-TO-BE-INDEXED")) 
{ 
    var response = 
     solr.Extract(
      new ExtractParameters(fileStream, "doc1") 
      { 
       ExtractFormat = ExtractFormat.Text, 
       ExtractOnly = false 
      }); 
} 

solr.Commit(); 

परेशानी के लिए खेद है। मुझे उम्मीद है कि दूसरों को यह उपयोगी लगेगा।

+0

बहुत उपयोगी जानकारी -> यह मेरे लिए काम करता है। – FrenkyB

+0

क्या आप अपना इंडेक्स डॉक्यूमेंट क्लास पोस्ट कर सकते हैं? धन्यवाद! – CmdrTallen

+0

निकालें पैरामीटर का उपयोग करने के लिए आपको SolrNet> 0.3.1 ("इंस्टॉल-पैकेज SolrNet -Pre") – CmdrTallen

उत्तर

3

मैं SolrNet क्लाइंट का उपयोग करने की सलाह दूंगा। यह ExtractingRequestHandler का समर्थन करता है।

+0

की आवश्यकता है, मैं पहले से ही SolrNet का उपयोग करता हूं लेकिन यह नहीं पता था कि ExtractingRequestHandler समर्थित था। क्या इस पर कुछ प्रकार का दस्तावेज है? – jonasm

+0

मैं सोलरनेट दस्तावेज पर रहा हूं और ऐसा लगता है कि यह केवल नवीनतम बीटा रिलीज में समर्थित है। यदि संभव हो तो मैं अभी भी एक HttpWebRequest का उपयोग कर एक उदाहरण पसंद करूंगा। – jonasm

+0

हालांकि सोलरनेट का संस्करण जो इसका समर्थन करता है वह बीटा रिलीज है, यह पूरी तरह से स्थिर और प्रयोग योग्य है। मैं सोलरनेट का उपयोग 2 से अधिक वर्षों से कर रहा हूं और बिना किसी मुद्दे के हमारे उत्पादन वातावरण में बीटा रिलीज चला रहा हूं। उदाहरण के लिए, मैं SolrNet स्रोत - https://github.com/mausch/solrnet का पता लगाऊंगा क्योंकि मुझे पता है कि यह सोलर को कॉल करने के लिए एक HttpWebRequest कर रहा है, इसलिए आप जो भी कर रहे हैं उसका पालन करने में सक्षम होना चाहिए। –

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