Erreur dans la récupération de l'ontologie et l'affichage avec TDB
Bonsoir,
j'ai eu une erreur en exécutant mon code, que j'arrive pas à la résoudre
voici mon code:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58
| import java.io.File;
import java.io.FileReader;
import java.util.Iterator;
import com.hp.hpl.jena.query.Dataset;
import com.hp.hpl.jena.rdf.model.Model;
import com.hp.hpl.jena.rdf.model.Statement;
import com.hp.hpl.jena.tdb.TDBFactory;
public class TDB {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
//On crée un modèle Jena de données TDB dans un répertoire nommé
String directory = "MyDatabases/DB1" ;
Model model = TDBFactory.createModel(directory);
Model modelTemp = null;
//On lit le modele rdf existant (lors de la premiere utilisation)
String fileName = "C://Program Files//Protege_3.2.1//examples//famille//famille.owl";
File file = null;
try{
file = new File(fileName);
FileReader reader = new FileReader(file);
modelTemp = TDBFactory.createModel();
modelTemp.read(reader,null);
}catch(Exception e){
e.printStackTrace();
}
System.out.println("Liste de l'ontologie de base :");
Iterator stmtIter = modelTemp.listStatements();
while(stmtIter.hasNext()){
Statement stmt = (Statement) stmtIter.next();
//System.out.println(stmt);
model.add(stmt);
}
model.close();
//Récupération du modèle
Dataset dataset = TDBFactory.createDataset("MyDatabases/DB1") ;
Model m2=dataset.getDefaultModel();
System.out.println("Liste de l'ontologie :");
Iterator classIter = m2.listObjects();
while(classIter.hasNext()){
Object rdfn = (Object) classIter.next();
System.out.println(rdfn);
}
}
} |
voila l'erreur:
Citation:
ERROR [main] (MetaFile.java:281) - Failed to store properties: C:\Documents and Settings\Administrateur\workspace\NewManipulation\MyDatabases\DB1\this.info
java.io.FileNotFoundException: C:\Documents and Settings\Administrateur\workspace\NewManipulation\MyDatabases\DB1\this.info (Le chemin d'accès spécifié est introuvable)
at java.io.FileOutputStream.open(Native Method)
at java.io.FileOutputStream.<init>(FileOutputStream.java:212)
at java.io.FileOutputStream.<init>(FileOutputStream.java:104)
at org.openjena.atlas.lib.PropertyUtils.storeToFile(PropertyUtils.java:42)
at com.hp.hpl.jena.tdb.base.file.MetaFile.saveProperties(MetaFile.java:277)
at com.hp.hpl.jena.tdb.base.file.MetaFile.flush(MetaFile.java:263)
at com.hp.hpl.jena.tdb.sys.SetupTDB.locationMetadata(SetupTDB.java:674)
at com.hp.hpl.jena.tdb.sys.SetupTDB.buildDataset(SetupTDB.java:199)
at com.hp.hpl.jena.tdb.sys.DatasetGraphSetup.createDatasetGraph(DatasetGraphSetup.java:21)
at com.hp.hpl.jena.tdb.sys.CachingTDBMaker.createDatasetGraph(CachingTDBMaker.java:46)
at com.hp.hpl.jena.tdb.sys.TDBMaker._createGraph(TDBMaker.java:71)
at com.hp.hpl.jena.tdb.TDBFactory.createGraph(TDBFactory.java:94)
at com.hp.hpl.jena.tdb.TDBFactory.createGraph(TDBFactory.java:100)
at com.hp.hpl.jena.tdb.TDBFactory.createModel(TDBFactory.java:56)
at TDB.main(TDB.java:20)
Exception in thread "main" com.hp.hpl.jena.tdb.base.block.BlockException: Failed to create FileBase
at com.hp.hpl.jena.tdb.base.file.FileBase.<init>(FileBase.java:33)
at com.hp.hpl.jena.tdb.base.objectfile.ObjectFileDiskDirect.<init>(ObjectFileDiskDirect.java:39)
at com.hp.hpl.jena.tdb.base.file.FileFactory.createObjectFileDisk(FileFactory.java:23)
at com.hp.hpl.jena.tdb.sys.SetupTDB.makeObjectFile(SetupTDB.java:587)
at com.hp.hpl.jena.tdb.sys.SetupTDB.makeNodeTableBase(SetupTDB.java:545)
at com.hp.hpl.jena.tdb.sys.SetupTDB.makeNodeTable(SetupTDB.java:563)
at com.hp.hpl.jena.tdb.sys.SetupTDB.buildDataset(SetupTDB.java:244)
at com.hp.hpl.jena.tdb.sys.DatasetGraphSetup.createDatasetGraph(DatasetGraphSetup.java:21)
at com.hp.hpl.jena.tdb.sys.CachingTDBMaker.createDatasetGraph(CachingTDBMaker.java:46)
at com.hp.hpl.jena.tdb.sys.TDBMaker._createGraph(TDBMaker.java:71)
at com.hp.hpl.jena.tdb.TDBFactory.createGraph(TDBFactory.java:94)
at com.hp.hpl.jena.tdb.TDBFactory.createGraph(TDBFactory.java:100)
at com.hp.hpl.jena.tdb.TDBFactory.createModel(TDBFactory.java:56)
at TDB.main(TDB.java:20)
Caused by: java.io.FileNotFoundException: C:\Documents and Settings\Administrateur\workspace\NewManipulation\MyDatabases\DB1\nodes.dat (Le chemin d'accès spécifié est introuvable)
at java.io.RandomAccessFile.open(Native Method)
at java.io.RandomAccessFile.<init>(RandomAccessFile.java:233)
at java.io.RandomAccessFile.<init>(RandomAccessFile.java:118)
at com.hp.hpl.jena.tdb.base.file.FileBase.<init>(FileBase.java:31)
... 13 more
est ce que je dois changer de version du Jena TDB que j'utilise?
NB: j'utilise jenatdb 0.8.10, j'ai aimé bien de travaille avec Jena TDB 0.9.0 mais lorsque j’exécute mon code il m'a affiche un warn que je dois initialiser le log4j
Merci pour toute intervention :)