Solr - lazy loading error

Moinsn

Mitglied
Moinsn ...


Mit folgenden Code soll eine pdf an Apache Solr übermittelt werden ...
Leider bekomme ich einen "lazy loading error".
Dies lässt darauf schließen dass der Postbefehl via curl nicht richtig passt da Solr ansich zu funktionieren scheint.
Der Upload mit curl über die Konsole funktioniert.
Wär klasse wenn ihr mir zeigen könnt wie's richtig geht denn ich hab eigendl. keinen Plan
von PHP/HTML ... .
Mfg Felix

PHP:
<html>  
  <head>
    <title>PHP Solr Client Example</title>
  </head>
  <body>
      <form  accept-charset="utf-8" method="post">
          
      <input  name="search" type="hidden" value="action"/>
          
      <label for="q">Input:</label>
      <input  id="q" name="q" type="file" value="<?php echo htmlspecialchars($_POST['q'], ENT_QUOTES, 'utf-8'); ?>"/>
      <br/>
      <label for="q">yourID:</label>
      <input  id="id" name="id" type="text" value="<?php echo htmlspecialchars($_POST['id']); ?>"/>
      <input name="input" type="submit"/>
    </form> 

      
<?php

if(isset($_POST['search'])) {   
    $results = write($_POST['id'], $_POST['q']);
}

/**
 * $path = Pfad der zu indexierenden Datei
 * $id = id des Bewerbers im crm
 */
function write($id, $path) {    
     $ch = curl_init('http://localhost:8983/solr/update/extract?literal.id='.$id.'&uprefix=attr_&fmap.content=attr_content&commit=true" -F "myfile=@'.$path.'');
    curl_setopt ($ch, CURLOPT_POST, 1);// POST Request
    curl_setopt ($ch, CURLOPT_POSTFIELDS, array('myfile'=>$path));// POSTDATA    
    $result = curl_exec ($ch);// Request ausführen
    
    echo curl_error($ch); // Ausgabe Error

    curl_close($ch);
    return $result;
}

?>
      
    </body>
</html>
 
Zuletzt bearbeitet:

Moinsn

Mitglied
Einer der da gelisteten Curl Befehle müsste ja funktionieren ...
Aber leider weiß ich nicht welcher.
Ich bilde mir ein ich hätte das vor 2 Wochen mit einem Befehl zum laufen bekommen
in dem "data-binary" vor kam.
aber irgendwie will's einfach nicht laufen :(
 

Moinsn

Mitglied
Achso ...
If you are not working from the supplied example/solr directory you must copy all libraries from example/solr/libs into a libs directory within your own solr directory. The ExtractingRequestHandler is not incorporated into the solr war file, you have to install it separately.

aber ich arbeite im Solr- Example.
Ich habe das Beispiel von Apache so zu sagen 1zu1 übernommen :oops:


uns so sieht der RequestHandler in meiner SolrConfig.xml aus:
Sollte eigendl. auch korrekt sein, oder?
[XML] <!-- Solr Cell Update Request Handler

ExtractingRequestHandler - Solr Wiki

-->
<requestHandler name="/update/extract"
startup="lazy"
class="solr.extraction.ExtractingRequestHandler" >
<lst name="defaults">
<!-- All the main content goes into "text"... if you need to return
the extracted text or do highlighting, use a stored field. -->
<str name="fmap.content">text</str>
<str name="lowernames">true</str>
<str name="uprefix">ignored_</str>

<!-- capture link hrefs but ignore div attributes -->
<str name="captureAttr">true</str>
<str name="fmap.a">links</str>
<str name="fmap.div">ignored_</str>
</lst>
</requestHandler>[/XML]
 
Zuletzt bearbeitet:

Moinsn

Mitglied
Habs jetzt via
PHP:
exec('curl "http://localhost:8983/solr/update/extract?literal.id=doc3&uprefix=attr_&fmap.content=attr_content&commit=true" -F "myfile=@wiegand.pdf"');
hin bekommen.

Ist ne unschöne Lösung ....
aber es funktioniert

Mfg
 

Neue Themen


Oben