sdx-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [sdx-users] Toujours le même problème pour les pièces jointes


From: Malo Pichot
Subject: Re: [sdx-users] Toujours le même problème pour les pièces jointes
Date: Mon, 22 Dec 2003 12:39:27 +0100
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.6b) Gecko/20031205 Thunderbird/0.4

Bonjour,

J'aimerais que les ID des mes fichiers attachés soient automatiquement générés, donc 
j'utilise l'attribut "generateId". Mais le problème, c'est que mon image n'est 
pas indexée et que je n'ai pas de message d'erreur. J'ai toutefois remarqué quelque 
détails :

  - quand j'attribue un id "manuellement" (sans l'attribut "generateId"), mon 
problème est résolu. Mais j'aimerais quand-même générer les ID automatiquement, donc cela ne me 
satisfait pas.

On avance dans la compréhension du problème. Tout tient dans l'utilisation du "generate-id" pour le document maître. L'indexation des documents attachés dans un tel cas n'avait, vraisemblablement, jamais été testée. Autrement dit, ça ne fonctionne pas parce que rien dans le code n'avait prévu ce cas de figure, pourtant intéressant. Nous en avons discuté ici et l'idée est intéressante. On va donc modifier le code dans ce sens. Cela ne semble pas très problèmatique.

Voilà la logique : on utilise le "generate-id" sur le <sdx:document> maître. Dans le <sdx:attDocument> on crée un identifiant unique dans le document grâce au paramètre "attid". Lors de l'indexation, si SDX rencontre le "attid" et pas de "id" pour un document attaché, il reprend l'identifiant du document maître, que cet identifiant ait été créé par le biais d'un "generate-id" ou non.
Dans ce cas, on peut avoir cette syntaxe :

<sdx:document generate-id="true"...>
 ...
 <sdx:attDocument attid="{identifiant unique dans le document}"... />
 ...
</sdx:document>

SDX se charge de l'identifiant unique dans la base de documents. A charge pour le développeur d'application de créer un identifiant unique dans le document. En fin de course, l'identifiant du document attaché (qui doit de toute manière être unique dans la base de documents) sera le résultat de la concaténation de l'identifiant du document maître et de l'identifiant du document attaché dans le document maître.

  - En ce qui concerne l'indexation des documents XML eux-même, j'arrive à utiliser 
l'attribut "generateId". Seulement, quand j'indexe deux fois de suite, plutôt 
que de mettre la base à jour, les documents sont dupliqués (ce qui paraît normal, 
puisqu'un nouvel identifiant est généré), ce qui ne me satisfait pas vraiment...

C'est le comportement normal du "generate-id".

  - quand je regarde dans mon entrepôt de type FS, les fichiers stockés ont tous des noms 
du type "docXXXXX.xml", même les images. Comment faire pour conserver leur nom, 
comme c'est fait dans sdxtest?

C'est le comportement normal pour un FS depuis la version 2.2.

Une dernière chose pour avoir un peu plus d'infos sur le fonctionnement de SDX/Tomcat, on peut modifier le niveau de "log" de Tomcat/SDX (par défaut, réglé sur 'ERRO'), en modifiant le fichier "logkit.xconf" dans le répertoire "WEB-INF".
Il faut régler les éléments <category> sur "DEBUG" au lieu de "ERROR".
Ca génére un énorme paquet d'informations, mais cela peut rendre pas mal de service dans un cas que l'on a du mal à comprendre.

A bientôt,

--
Malo





reply via email to

[Prev in Thread] Current Thread [Next in Thread]