2010-02-23 5 views
1

Je suis aux prises avec un bug/problème avec lequel j'ai des problèmes avec Zend_Search_Lucene. Maintenant j'ai 2 index que je recherche celui qui est analysé pages html/texte que j'utilise la fonction Zend_Search_Lucene_Document_Html :: loadHTML() pour lire le contenu et l'ajouter à l'un des index lucene.Zend_Search_Lucene ne parvient pas à retourner les documents

L'autre indice que je crée manuellement un document Lucene en utilisant la fonction Zend_Search_Lucene_Document(), en ajoutant du texte et des champs de mots clés au document. Les deux méthodes pour ajouter des données à mes index fonctionnent, et en utilisant Luke (outil génial) pour voir les index, je peux voir les différents documents dans les deux index et je peux écrire des requêtes manuelles en utilisant Luke qui retourne les résultats.

Je reçois actuellement des erreurs quand je recherche sur l'index contenant les documents créés manuellement. Lors de la création de requêtes à l'aide de l'API Query fournie dans le framework, j'obtiens le nombre de résultats que j'attends mais quand j'essaye d'obtenir le "Document" de ce hit de recherche, il n'y a rien retourné.

Je reçois les erreurs suivantes

Warning: fseek(): supplied argument is not a valid stream resource in C:\www\mysite\development\website\library\Zend\Search\Lucene\Storage\File\Filesystem.php on line 93 

Warning: fread(): supplied argument is not a valid stream resource in C:\www\mysite\development\website\library\Zend\Search\Lucene\Storage\File\Filesystem.php on line 158 

Warning: flock() expects parameter 1 to be resource, integer given in C:\www\mysite\development\website\library\Zend\Search\Lucene\Storage\File\Filesystem.php on line 214 

Uncaught exception 'Zend_Search_Lucene_Exception' with message 'Field name "itemname" not found in document.' 

Si je lance des recherches sur les index avec le contenu HTML et l'API de requête j'obtenir des résultats avec des documents en eux que je peux obtenir quelques-unes des données du document de .

Avec les deux requêtes, je génère des requêtes de recherche en utilisant la fonction Zend_Search_Lucene_Search_QueryParser :: parse() avec quelques sous-requêtes ajoutées.

est-il des problèmes connus lors de l'analyse pourquoi un document contre mes recherches courir bien, mais ceux sur les documents que je crée échouer avec les messages d'erreur ci-dessus?

Un grand merci,

Grant

Répondre

1

Juste une note, j'ai reçu ces erreurs lorsque j'ai essayé de stocker les résultats de recherche Lucene dans le fichier de session pour une utilisation sur une autre page.

Effacé la session, mettre dans un certain code pour stocker les informations de résultat dont je avais besoin comme une instance de stdClass(), puis sauvé que lors de la session et tout était ok à nouveau.

Je aurait fondamentalement que votre tente de récupérer quelque chose todo avec Lucene qui a été enregistré dans le système de fichiers, que ce soit Zend Cache, la session ou autre.

Questions connexes