Je souhaite extraire des métadonnées contenues dans...

cancel
Showing results for 
Search instead for 
Did you mean: 
stebans
Member II

Je souhaite extraire des métadonnées contenues dans...

Bonjour,

Je souhaite extraire des métadonnées contenues dans des fichiers Word par exemple (dans le contenu du document et/ou dans les propriétés). Je veux également que des métadonnées soient rajoutées au document (par exemple la version du document). Il est possible d'utiliser la librairie POI pour cela, mais je manque d'info sur l'implémentaion de la classe Java et sur la config pour enregistrer le bean. Je suis parti de la démarche présentée sur http://newton.typepad.com/content/2007/02/building_a_cont.html(1), ainsi que sur le wiki http://wiki.alfresco.com/wiki/Step-By-Step:_Creating_A_Custom_Model, http://wiki.alfresco.com/wiki/MAGE-ML_Metadata_Extractor, ou http://forums.alfresco.com/viewtopic.php?p=21590&sid=97901c8fefa1d200582dbb4a9d7fa549.

Les exemples (1) et (2) sont malheureusement incomplets, surtout sur la partie Java. Je voudrais savoir 1. si j'ai raté une doc et 2. si qqn aurait une classe Java qui pourrait servir de modèle…

Merci pour votre aide,
Stéphane
3 Replies
bmagnier
Member II

Re: Je souhaite extraire des métadonnées contenues dans...

Bonjour,

En ce qui concerne des classes d'exemples, le plus simple serait peut-être de jeter un oeil aux classes Alfresco, situées dans le package org.alfresco.repo.content.metadata (archive repository.jar).

Bertrand.
stebans
Member II

Re: Je souhaite extraire des métadonnées contenues dans...

Bonjour,

Merci beaucoup pour votre aide. Je n'aurais pas cherché dans cette librairie.

Stéphane
stebans
Member II

Re: Je souhaite extraire des métadonnées contenues dans...

Bonjour,

j'ai pu utiliser l'extracteur de métadonnées pour Office (OfficeMetadataExtracter) présent dans repository.jar et le modifier pour extraire des métadonnées personnalisées (par exemple les "mots-clés" présents dans les propriétés des documents Word) avec Apache POI.

J'arrive à afficher les champs de nouvelles métadonnées personnalisées dans l'interface web, mais pour l'instant, je n'arrive absolument pas à afficher sur la page web la métadonnée que j'ai extraite du document Word. Pourtant, j'arrive à modifier l'auteur qui est extrait par défaut :
public class MyOfficeMetadataExtracter extends AbstractMetadataExtracter {
    //métadonnée présente dans le modèle par défaut
    static final QName PROP_AUTHOR = QName.createQName("http://www.alfresco.org/model/content/1.0", "author");

    //métadonnée rajoutée dans mon modèle et affichée sur la page web sans problème
    static final QName PROP_KEYWORD = QName.createQName("http://mon.model.perso/model/content/1.0", "keyword");

    //…
    public void extractInternal(ContentReader reader, final Map<QName, Serializable> destination) throws Throwable {
        //… plus simplement, je soumets une string quelconque :
        trimPut(PROP_AUTHOR, "mon auteur", destination);   
        trimPut(PROP_KEYWORDS, "mon mot-cle", destination);
        //…
    }
}
Lors de la soumission d'un document, le champ "auteur" affiche bien "mon auteur", mais le champ "mot-clé" n'affiche rien du tout ! Je ne vois pas contourner ce problème pour afficher les métadonnées personnalisées et je ne vois pas ce que j'ai pu oublier !

J'espère un tuyau de la part de ceux qui ont écrit leurs propres extracteurs !
Merci
Stéphane