Précédent   Forum du club des développeurs et IT Pro > Autres langages > XML/XSL et SOAP > XQUERY/SGBD
XQUERY/SGBD Le langage XQUERY et tout ce qui a trait aux relations XML et bases de données : BDD XML native, intégration/extraction de XML, XML dans BDD relationnelle... Avant de poster -> FAQ XML, Sources XML
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 09/09/2011, 17h41   #1
kraps
Candidat au titre de Membre du Club
 
Inscription : juin 2009
Messages : 27
Détails du profil
Informations personnelles :
Localisation : France

Informations forums :
Inscription : juin 2009
Messages : 27
Points : 10
Points : 10
Par défaut Lister les éléments d'une collection

Bonjour à tous

J'ai créé une collection "ctrav" via Java sur une installation d'eXist.
Dans cette collection j'ai inséré un nombre important de fichiers xml.

Si je fais:
Code :
collection("/db/ctrav")
J'ai bien en sorti le contenu de tous mes fichiers xml.

Par contre impossible d'accéder à un de ces fichiers directement, aucun path de ceux que j'ai essayé ne donne de résultat (fn:doc-available retournant false également). Voici le genre de choses que j'ai essayées pour ouvrir un "fichier.xml" donné, sans résultat :
Code :
1
2
3
4
doc("/db/ctrav/fichier.xml")
doc("/db/ctrav/chemin.../fichier.xml")
doc("/db/ctrav/sousdossier/*")
doc("*/fichier.xml")
Ma question est donc, comment lister les éléments de ma collection et le chemin pour y accéder ? (sans afficher le contenu de ces fichiers xml)

Merci d'avance à tous. Très bon weekend !
kraps est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/09/2011, 11h25   #2
kraps
Candidat au titre de Membre du Club
 
Inscription : juin 2009
Messages : 27
Détails du profil
Informations personnelles :
Localisation : France

Informations forums :
Inscription : juin 2009
Messages : 27
Points : 10
Points : 10
Merci à tous pour votre aide.

Je pensais qu'eXist se baserait sur les informations du fichier (tel que son nom), mais non un identifiant aléatoire était généré du type : 5236c3c4.xml

Solution, expliciter clairement le nom à utiliser à partir du fichier :

Code :
1
2
3
4
XMLResource document = (XMLResource) col.createResource(f.getName(), "XMLResource");
document.setContent(f);
System.out.print("Stockage du document " + f.getName() + "...\n");
col.storeResource(document);
Le fichier est alors accessible via "/db/ctrav/nomdemonfichier.xml"

Bonne semaine à tous.

ps: j'ai trouvé la source du problème lors du debug en inspectant les propriétés de l'objet document
kraps est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Cette discussion est résolue.
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 21h23.


 
 
 
 
Partenaires

Hébergement Web