Bonsoir,
j'ai eu une erreur en exécutant mon code, que j'arrive pas à la résoudre
voici mon code:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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:
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
log4j:WARN No appenders could be found for logger (com.hp.hpl.jena.tdb.info).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
Merci pour toute intervention