From gunnar.grimnes at dfki.de Mon Aug 4 14:53:01 2008 From: gunnar.grimnes at dfki.de (Gunnar Aastrand Grimnes) Date: Mon, 04 Aug 2008 14:53:01 +0200 Subject: [Rdf2go-devel] adding two models In-Reply-To: <4884700E.30004@deri.org> References: <48845BF0.9080705@deri.org> <48846D69.2070003@dfki.de> <4884700E.30004@deri.org> Message-ID: <4896FBAD.6070804@dfki.de> Sorry for the long ping time here. As I said, we cannot fix the AbstractModel the way you suggest as the two models MAY be the same and underlying implementations may block when trying to read and write at the same time. However, the sesame driver implementation clearly could be improved. I made a ticket for this: http://octopus13.fzi.de:8080/browse/RTGO-54 - Gunnar Mariusz Cygan wrote: > /** > * Implementation of the RDF2Go model interface for an OpenRDF Repository. > * > * Note that RepositoryModel and RepositoryModelSet only work well together > * because they both keep their RepositoryConnections in auto-commit > mode. This > * cannot be changed by the user. Do mass-updates using {@link > #update(Diff)}, > * {@link #addAll(Iterator)} or {@link #removeAll(Iterator)}, then the > current > * connection will be used in non-autocommit mode and commited, including a > * rollback when it fails. > */ > public class RepositoryModel extends AbstractLockingModel implements > Model { > > > The sesame plugin doesn't override the addModel method. Of course I can > use model.addAll(model.iterator()) as it is done in one transaction and > is much faster. As for now I'm not using any ModelSets. > > I should be able to find some time and fix this in sesame patch, but I > was thinking that maybe it would be better if you rewrite the addModel > in AbstractModel using model.addAll(model.iterator()). > > Cheers, > > Mariusz Cygan > Research Assistant, DERI > National University of Ireland, Galway > > > Gunnar Aastrand Grimnes wrote: >> This method is strangely awkward. I guess the reason is that you want >> to be able to have do this: >> >> ModelSet ms= ... >> >> m1=ms.getModel(uri1); >> >> m2=ms.getModel(uri2); >> >> m2.addModel(m1); >> >> and this strange caching of all statements in a hashset is required >> for some implementations not to deadlock? >> >> Anyway - this special case should be detectable by the implementation >> and handled separately. >> >> Have you checked if the sesame plugin does not override this method? >> >> If not can you try to write such a method? :) >> >> Cheers, >> >> - Gunnar >> >> Mariusz Cygan wrote: >>> Hi, >>> >>> I was investigating Model.addModel(Model) implementation in the >>> AbstractModel class. >>> >>> /** subclasses should overwrite this for performance reasons */ >>> public void addModel(Model model) { >>> ClosableIterator it = model.iterator(); >>> Set statements = new HashSet(); >>> while (it.hasNext()) { >>> Statement stmt = it.next(); >>> statements.add(stmt); >>> } >>> it.close(); >>> for( Statement stmt : statements) { >>> this.addStatement( stmt.getSubject(), >>> stmt.getPredicate(), stmt.getObject()); >>> } >>> } >>> >>> In the Sesame plugin implementation it takes a lot of time to add two >>> models because every addStatement is a separate transaction. The >>> comments suggest though to use Model.addAll(Iterator). Don't you >>> think it would be a good idea to rewrite the addModel in the abstract >>> implementation or at least override this method in Sesame plugin? >>> >>> Best, >>> -- Gunnar Aastrand Grimnes gunnar.grimnes [AT] dfki.de DFKI GmbH Knowledge Management Trippstadter Strasse 122 D-67663 Kaiserslautern Germany Office: +49 631 205 75-117 Mobile: +49 177 277 4397 From mariusz.cygan at deri.org Mon Aug 18 10:50:17 2008 From: mariusz.cygan at deri.org (Mariusz Cygan) Date: Mon, 18 Aug 2008 10:50:17 +0200 Subject: [Rdf2go-devel] developer's question Message-ID: <48A937C9.2070401@deri.org> Hi, I would be interested in adding some code to RDF2GO, particularly more configuration options in OpenRDF modelFactory. We need such functionality for our project (JeromeDL) and we were thinking that it would be a good idea to add this to the trunk. Sometime ago you mentioned that RDF2Go lacks some features in that area. For now the only option is to provide RDF2Go with pre-configured repository. What is your policy for outside developers? In the attachments you can find some early drafts of classes we use in our project. -- Mariusz Cygan Research Assistant, DERI National University of Ireland, Galway -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: OpenRDF.java Url: http://ontoware.org/pipermail/rdf2go-devel/attachments/20080818/2b9cf970/attachment.ksh -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: OpenRDFTest.java Url: http://ontoware.org/pipermail/rdf2go-devel/attachments/20080818/2b9cf970/attachment-0001.ksh From grant.ingersoll at gmail.com Thu Aug 21 16:41:25 2008 From: grant.ingersoll at gmail.com (Grant Ingersoll) Date: Thu, 21 Aug 2008 10:41:25 -0400 Subject: [Rdf2go-devel] RDFTool and SimpleDataFormat In-Reply-To: <1157399385.20080722145901@fzi.de> References: <1157399385.20080722145901@fzi.de> Message-ID: <2E24F1A7-CC85-4347-AC83-9389D117ED9A@gmail.com> Boy, talk about getting buried in email, sorry for not seeing this sooner. Yes, I have used the ThreadLocal way for some time now w/o issue. -Grant On Jul 22, 2008, at 8:59 AM, Max Voelkel wrote: > Hi, today is RDF2Go clean-up day. I stumbled over a very old > email from Grant > Ingersoll . > > He noticed that RDFTool (maintained by Leo) has an issue with > Threads and > SimpleDataFormat. I was surprised and Googled, until I found a > huge heated > debate about just how bad SimpleDataFormat is. > > http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4228335 > > The discussion seems to conclude, that there is no good fix in > general an the > solution from Grant (using ThreadLocal) was also discouraged by some. > Now I am overwhelmed around the complexity of the issue (has > nothing to do with > RDF at all). > > Leo, Grant can you help to resolve & explain the issue? > > Grants proposal in brief: > > 1) > private static DateFormat dateTimeFormat = null; > --> > private static ThreadLocal dateTimeFormatTL = new > ThreadLocal(); > > 2) > > public static DateFormat getDateFormat() { > if (dateFormat == null) { > dateFormat = new SimpleDateFormat("yyyy-MM- > dd"); > } > return dateFormat; > } > --> > public static DateFormat getDateFormat() { > DateFormat dateFormat = dateFormatTL.get(); > if (dateFormat == null) { > dateFormat = new SimpleDateFormat("yyyy-MM- > dd"); > dateFormatTL.set(dateFormat); > } > return dateFormat; > } > > Lots more infos are here > http://blogs.atlassian.com/developer/2007/07/dateformat_objects_and_threads.html > > > Btw, the current code of the class is here > http://semweb4j.googlecode.com/svn/trunk/org.semweb4j.rdf2go.impl.util/src/main/java/org/ontoware/rdf2go/util/RDFTool.java > > There are so many options, which way should we go? > Does using ThreadLocals solves all problems you have, Grant? > > Kind Regards, > Max > -- > Max V?lkel > voelkel at fzi.de | www.Xam.de > office +49 721 96 54-854 > mobile +49 171 83 59 678 > -- > FZI Forschungszentrum Informatik an der Universit?t Karlsruhe > Haid-und-Neu-Str. 10-14, D-76131 Karlsruhe > Tel.: +49-721-9654-0, Fax: +49-721-9654-959 > Stiftung des b?rgerlichen Rechts, Az: 14-0563.1 Regierungspr?sidium > Karlsruhe. > Vorstand: Prof. Dr.-Ing. R?diger Dillmann, Dipl. Wi.-Ing. Michael Flor > Prof. Dr. Dr.-Ing. Jivka Ovtcharova, Prof. Dr. rer. nat. Rudi Studer > Vorsitzender des Kuratoriums: Ministerialdirigent G?nther Le?nerkraus > From gunnar.grimnes at dfki.de Tue Aug 26 13:44:20 2008 From: gunnar.grimnes at dfki.de (Gunnar Aastrand Grimnes) Date: Tue, 26 Aug 2008 13:44:20 +0200 Subject: [Rdf2go-devel] problem with rdfreactor class hierarchy Message-ID: <48B3EC94.9000807@dfki.de> Hi all, Marko Brunzel recently ran into an interesting problem using rdfreactor and the rdf2go sesame driver. While processing an RDF list with our utility class he got the exception: java.lang.IllegalArgumentException: Unexpected object type: org.ontoware.rdfreactor.schema.rdfs.List at org.openrdf.rdf2go.ConversionUtil.toOpenRDF(ConversionUtil.java:77) at org.openrdf.rdf2go.RepositoryModel.findStatements(RepositoryModel.java:359) at org.semanticdesktop.nepomuk.util.RDFUtils.getOnlySingleValue(RDFUtils.java:107) at org.semanticdesktop.nepomuk.util.RDFUtils.getRDFList(RDFUtils.java:98) at org.semanticdesktop.nepomuk.comp.taskservice.utils.RDFTester2.testTaskOrdering3(RDFTester2.java:149) at org.semanticdesktop.nepomuk.comp.taskservice.utils.RDFTester2.testTaskOrdering1(RDFTester2.java:61) at org.semanticdesktop.nepomuk.comp.taskservice.utils.RDFTester2.main(RDFTester2.java:40) The problem here is partially in the sesame adapter, which does the following: if (object instanceof URI) { return toOpenRDF((URI)object, factory); } else if (object instanceof String) { return toOpenRDF((String)object, factory); } else if (object instanceof PlainLiteral) { return toOpenRDF((PlainLiteral)object, factory); } else if (object instanceof LanguageTagLiteral) { return toOpenRDF((LanguageTagLiteral)object, factory); } else if (object instanceof DatatypeLiteral) { return toOpenRDF((DatatypeLiteral)object, factory); } else if (object instanceof BlankNode) { return toOpenRDF((BlankNode)object, factory); } else if (object instanceof Variable) { return toOpenRDF((Variable)object, factory); } else { throw new IllegalArgumentException("Unexpected object type: " + object.getClass().getName()); } I.e. it works on the assumption that rdf-nodes it gets handed are either URIs, BlankNodes, Literals or Variables... This seems a perfectly reasonable assumption given the RDF Model - but leaves no scope for Resources that are not URIs or BlankNodes, which unfortunately seems to be all the java classes for core-RDF classes, List, Class, Alt, etc. as bundled with rdfreactor :( Now where do we fix this? It is of course trivial to fix the openrdf adapter to attempt to treat any Resource that is not URI or BlankNode as a URI, but is this OK? Cheers, - Gunnar -- Gunnar Aastrand Grimnes gunnar.grimnes [AT] dfki.de DFKI GmbH Knowledge Management Trippstadter Strasse 122 D-67663 Kaiserslautern Germany Office: +49 631 205 75-117 Mobile: +49 177 277 4397 From voelkel at fzi.de Wed Aug 27 15:07:13 2008 From: voelkel at fzi.de (Max Voelkel) Date: Wed, 27 Aug 2008 15:07:13 +0200 Subject: [Rdf2go-devel] problem with rdfreactor class hierarchy In-Reply-To: <48B3EC94.9000807@dfki.de> References: <48B3EC94.9000807@dfki.de> Message-ID: <997035060.20080827150713@fzi.de> Hi all, I am investigating this. Certainly either an RDFReactor or RDF2Go issue. Kind Regards, Max -- FZI Forschungszentrum Informatik an der Universit?t Karlsruhe Haid-und-Neu-Str. 10-14, D-76131 Karlsruhe Tel.: +49-721-9654-0, Fax: +49-721-9654-959 Stiftung des b?rgerlichen Rechts, Az: 14-0563.1 Regierungspr?sidium Karlsruhe. Vorstand: Prof. Dr.-Ing. R?diger Dillmann, Dipl. Wi.-Ing. Michael Flor Prof. Dr. Dr.-Ing. Jivka Ovtcharova, Prof. Dr. rer. nat. Rudi Studer Vorsitzender des Kuratoriums: Ministerialdirigent G?nther Le?nerkraus From voelkel at fzi.de Wed Aug 27 15:28:29 2008 From: voelkel at fzi.de (Max Voelkel) Date: Wed, 27 Aug 2008 15:28:29 +0200 Subject: [Rdf2go-devel] problem with rdfreactor class hierarchy In-Reply-To: <48B3EC94.9000807@dfki.de> References: <48B3EC94.9000807@dfki.de> Message-ID: <72854470.20080827152829@fzi.de> Hi all, so the underlying issue is quite complicated. RDFReactor generates all classes in the end as implementing org.ontoware.rdf2go.model.node.Resource. URI and BlankNode are sub-interfaces of this one. All RDFReactor entities are instantiated with a Resource and delegate in the end to it, if somebody wants a URI, BlankNode or whatever. In then end, my proposed solution is this: for each type create TWO classes Person_URI implements URI Person_BlankNode implements BlankNode and let th euser decide, which one to use. To ease this, generate a factory PersonFactory with a method .create( URI ) returns a Person_URI .create( BlankNode ) returns a Person_BlankNode etc. If you have smarter/nicer ideas, add them to the issue [1] === Workaround === If you know you created the instance with a URI, use .asURI() if you have a cretaed it with a BlankNode, use .asBlankNode(). Ridiculous, but works. -- snippet -- RepositoryModelFactory repositoryModelFactory = new RepositoryModelFactory(); Model model = repositoryModelFactory.createModel(); model.open(); URI a = new URIImpl("urn:test:a"); URI b = new URIImpl("urn:test:b"); List list = new List(model, "urn:test:list", true); //assertTrue( list instanceof URI ); --> fails model.addStatement(a, b, list.asURI() ); model.close(); -- snippet -- [1] http://octopus13.fzi.de:8080/browse/REAC-28 Tuesday, August 26, 2008, 1:44:20 PM, you wrote: GAG> Hi all, GAG> Marko Brunzel recently ran into an interesting problem using rdfreactor GAG> and the rdf2go sesame driver. While processing an RDF list with our GAG> utility class he got the exception: GAG> java.lang.IllegalArgumentException: Unexpected object type: GAG> org.ontoware.rdfreactor.schema.rdfs.List GAG> at org.openrdf.rdf2go.ConversionUtil.toOpenRDF(ConversionUtil.java:77) GAG> at GAG> org.openrdf.rdf2go.RepositoryModel.findStatements(RepositoryModel.java:359) GAG> at GAG> org.semanticdesktop.nepomuk.util.RDFUtils.getOnlySingleValue(RDFUtils.java:107) GAG> at GAG> org.semanticdesktop.nepomuk.util.RDFUtils.getRDFList(RDFUtils.java:98) GAG> at GAG> org.semanticdesktop.nepomuk.comp.taskservice.utils.RDFTester2.testTaskOrdering3(RDFTester2.java:149) GAG> at GAG> org.semanticdesktop.nepomuk.comp.taskservice.utils.RDFTester2.testTaskOrdering1(RDFTester2.java:61) GAG> at GAG> org.semanticdesktop.nepomuk.comp.taskservice.utils.RDFTester2.main(RDFTester2.java:40) GAG> The problem here is partially in the sesame adapter, which does the GAG> following: GAG> if (object instanceof URI) { GAG> return toOpenRDF((URI)object, factory); GAG> } GAG> else if (object instanceof String) { GAG> return toOpenRDF((String)object, factory); GAG> } GAG> else if (object instanceof PlainLiteral) { GAG> return toOpenRDF((PlainLiteral)object, factory); GAG> } GAG> else if (object instanceof LanguageTagLiteral) { GAG> return toOpenRDF((LanguageTagLiteral)object, factory); GAG> } GAG> else if (object instanceof DatatypeLiteral) { GAG> return toOpenRDF((DatatypeLiteral)object, factory); GAG> } GAG> else if (object instanceof BlankNode) { GAG> return toOpenRDF((BlankNode)object, factory); GAG> } GAG> else if (object instanceof Variable) { GAG> return toOpenRDF((Variable)object, factory); GAG> } GAG> else { GAG> throw new IllegalArgumentException("Unexpected object type: " + GAG> object.getClass().getName()); GAG> } GAG> I.e. it works on the assumption that rdf-nodes it gets handed are either GAG> URIs, BlankNodes, Literals or Variables... GAG> This seems a perfectly reasonable assumption given the RDF Model - but GAG> leaves no scope for Resources that are not URIs or BlankNodes, which GAG> unfortunately seems to be all the java classes for core-RDF classes, GAG> List, Class, Alt, etc. as bundled with rdfreactor :( GAG> Now where do we fix this? It is of course trivial to fix the openrdf GAG> adapter to attempt to treat any Resource that is not URI or BlankNode as GAG> a URI, but is this OK? GAG> Cheers, GAG> - Gunnar Kind Regards, Max -- Max V?lkel voelkel at fzi.de | www.Xam.de office +49 721 96 54-854 mobile +49 171 83 59 678 -- FZI Forschungszentrum Informatik an der Universit?t Karlsruhe Haid-und-Neu-Str. 10-14, D-76131 Karlsruhe Tel.: +49-721-9654-0, Fax: +49-721-9654-959 Stiftung des b?rgerlichen Rechts, Az: 14-0563.1 Regierungspr?sidium Karlsruhe. Vorstand: Prof. Dr.-Ing. R?diger Dillmann, Dipl. Wi.-Ing. Michael Flor Prof. Dr. Dr.-Ing. Jivka Ovtcharova, Prof. Dr. rer. nat. Rudi Studer Vorsitzender des Kuratoriums: Ministerialdirigent G?nther Le?nerkraus From voelkel at fzi.de Thu Aug 28 13:42:13 2008 From: voelkel at fzi.de (Max Voelkel) Date: Thu, 28 Aug 2008 13:42:13 +0200 Subject: [Rdf2go-devel] maven repository downtime saturday, 30.08.08 Message-ID: <187507298.20080828134213@fzi.de> Hi, on Saturday, 30.08.08, the maven repository and maven generated sites will be down from 9 am to 3 pm. Kind Regards, Max -- FZI Forschungszentrum Informatik an der Universit?t Karlsruhe Haid-und-Neu-Str. 10-14, D-76131 Karlsruhe Tel.: +49-721-9654-0, Fax: +49-721-9654-959 Stiftung des b?rgerlichen Rechts, Az: 14-0563.1 Regierungspr?sidium Karlsruhe. Vorstand: Prof. Dr.-Ing. R?diger Dillmann, Dipl. Wi.-Ing. Michael Flor Prof. Dr. Dr.-Ing. Jivka Ovtcharova, Prof. Dr. rer. nat. Rudi Studer Vorsitzender des Kuratoriums: Ministerialdirigent G?nther Le?nerkraus From huebner at fzi.de Thu Aug 28 17:19:32 2008 From: huebner at fzi.de (=?ISO-8859-15?Q?Paul_H=FCbner?=) Date: Thu, 28 Aug 2008 17:19:32 +0200 Subject: [Rdf2go-devel] RDF2Go Problem when Running aperture osgi example Message-ID: <48B6C204.2040402@fzi.de> Hello Together, i am using the osgi version of aperture. right now i'll try to update to the latest version in the svn, but when testing if everything still works fine i detected some problems with the RDF2Go sesame2 adapter bundle. If i try to start the aperture osgi example i got an "java.lang.ClassNotFoundException: org.ontoware.rdf2go.impl.StaticBinding". This Class (package) is exported by the RDF2Go sesame2 adapter bundle and Imported by the aperture example bundle, so in my opinion evrything should be OK but the osgi environment is telling me s.th. different :-( So now my Question: does anyone know about this Problem? Are there solutions for this problem ? I would be pleased about any hint or help. I am using the current stable equinox version and put the osgi console stack trace at the end of the mail. kind regards, Paul -------------------------------------- osgi console log output ------------------------------------------------------------------- osgi> All registries successfully found Trying to crawl the dir: C:\Users\pnk RDF will be printed to the standard output 28.08.2008 17:13:48 org.ontoware.rdf2go.osgi.RDF2GoActivator start WARNUNG: RDF2Go cannot find configuration value for default RDF2Go factory. No Default ModelFactory will be available. Please set org.ontoware.rdf2go.defaultmodelfactory ss Framework is launched. id State Bundle 0 ACTIVE org.eclipse.osgi_3.4.0.v20080605-1900 1 ACTIVE org.eclipse.osgi.util_3.1.300.v20080303 2 ACTIVE org.eclipse.osgi.services_3.1.200.v20070605 3 ACTIVE jcl104.over.slf4j_1.3.0 4 ACTIVE org.openrdf.sesame2_2.1.2 5 RESOLVED org.semanticdesktop.aperture.example_1.1.1.beta_SNAPSHOT 6 ACTIVE org.semanticdesktop.aperture.impl_1.1.1.beta_SNAPSHOT 7 ACTIVE org.semanticdesktop.aperture_1.1.1.beta_SNAPSHOT 8 ACTIVE org.semweb4j.rdf2go.api_4.6.2 9 ACTIVE org.semweb4j.rdf2go.impl.base_4.6.2 10 ACTIVE org.openrdf.rdf2go_4.6.2 11 ACTIVE org.semweb4j.rdf2go.impl.util_4.6.2 12 ACTIVE slf4j.api_1.3.0 13 ACTIVE slf4j.jdk14_1.3.0 osgi> start 5 All registries successfully found Trying to crawl the dir: C:\Users\pnk RDF will be printed to the standard output org.osgi.framework.BundleException: Exception in org.semanticdesktop.aperture.examples.osgi.ExampleFileCrawlerActivator.start() of bundle org.semanticdesktop.aperture.exampl e. at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:1028) at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:984) at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:346) at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:265) at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:257) at org.eclipse.osgi.framework.internal.core.FrameworkCommandProvider._start(FrameworkCommandProvider.java:257) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.eclipse.osgi.framework.internal.core.FrameworkCommandInterpreter.execute(FrameworkCommandInterpreter.java:150) at org.eclipse.osgi.framework.internal.core.FrameworkConsole.docommand(FrameworkConsole.java:302) at org.eclipse.osgi.framework.internal.core.FrameworkConsole.console(FrameworkConsole.java:287) at org.eclipse.osgi.framework.internal.core.FrameworkConsole.run(FrameworkConsole.java:223) at java.lang.Thread.run(Thread.java:619) Caused by: org.ontoware.rdf2go.exception.ModelRuntimeException: java.lang.ClassNotFoundException: org.ontoware.rdf2go.impl.StaticBinding at org.ontoware.rdf2go.RDF2Go.checkModelFactory(RDF2Go.java:174) at org.ontoware.rdf2go.RDF2Go.getModelFactory(RDF2Go.java:90) at org.semanticdesktop.aperture.rdf.impl.RDFContainerFactoryImpl.(RDFContainerFactoryImpl.java:26) at org.semanticdesktop.aperture.examples.osgi.ExampleFileCrawler.crawl(ExampleFileCrawler.java:100) at org.semanticdesktop.aperture.examples.osgi.ExampleFileCrawlerActivator.doCrawl(ExampleFileCrawlerActivator.java:65) at org.semanticdesktop.aperture.examples.osgi.ExampleFileCrawlerActivator.start(ExampleFileCrawlerActivator.java:53) at org.eclipse.osgi.framework.internal.core.BundleContextImpl$2.run(BundleContextImpl.java:1009) at java.security.AccessController.doPrivileged(Native Method) at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:1003) ... 14 more Caused by: java.lang.ClassNotFoundException: org.ontoware.rdf2go.impl.StaticBinding at org.eclipse.osgi.framework.internal.core.BundleLoader.findClassInternal(BundleLoader.java:481) at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass(BundleLoader.java:397) at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass(BundleLoader.java:385) at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:87) at java.lang.ClassLoader.loadClass(ClassLoader.java:251) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:169) at org.ontoware.rdf2go.RDF2Go.checkModelFactory(RDF2Go.java:162) ... 22 more Nested Exception: org.ontoware.rdf2go.exception.ModelRuntimeException: java.lang.ClassNotFoundException: org.ontoware.rdf2go.impl.StaticBinding at org.ontoware.rdf2go.RDF2Go.checkModelFactory(RDF2Go.java:174) at org.ontoware.rdf2go.RDF2Go.getModelFactory(RDF2Go.java:90) at org.semanticdesktop.aperture.rdf.impl.RDFContainerFactoryImpl.(RDFContainerFactoryImpl.java:26) at org.semanticdesktop.aperture.examples.osgi.ExampleFileCrawler.crawl(ExampleFileCrawler.java:100) at org.semanticdesktop.aperture.examples.osgi.ExampleFileCrawlerActivator.doCrawl(ExampleFileCrawlerActivator.java:65) at org.semanticdesktop.aperture.examples.osgi.ExampleFileCrawlerActivator.start(ExampleFileCrawlerActivator.java:53) at org.eclipse.osgi.framework.internal.core.BundleContextImpl$2.run(BundleContextImpl.java:1009) at java.security.AccessController.doPrivileged(Native Method) at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:1003) at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:984) at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:346) at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:265) at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:257) at org.eclipse.osgi.framework.internal.core.FrameworkCommandProvider._start(FrameworkCommandProvider.java:257) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.eclipse.osgi.framework.internal.core.FrameworkCommandInterpreter.execute(FrameworkCommandInterpreter.java:150) at org.eclipse.osgi.framework.internal.core.FrameworkConsole.docommand(FrameworkConsole.java:302) at org.eclipse.osgi.framework.internal.core.FrameworkConsole.console(FrameworkConsole.java:287) at org.eclipse.osgi.framework.internal.core.FrameworkConsole.run(FrameworkConsole.java:223) at java.lang.Thread.run(Thread.java:619) Caused by: java.lang.ClassNotFoundException: org.ontoware.rdf2go.impl.StaticBinding at org.eclipse.osgi.framework.internal.core.BundleLoader.findClassInternal(BundleLoader.java:481) at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass(BundleLoader.java:397) at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass(BundleLoader.java:385) at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:87) at java.lang.ClassLoader.loadClass(ClassLoader.java:251) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:169) at org.ontoware.rdf2go.RDF2Go.checkModelFactory(RDF2Go.java:162) ... 22 more Nested Exception: java.lang.ClassNotFoundException: org.ontoware.rdf2go.impl.StaticBinding at org.eclipse.osgi.framework.internal.core.BundleLoader.findClassInternal(BundleLoader.java:481) at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass(BundleLoader.java:397) at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass(BundleLoader.java:385) at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:87) at java.lang.ClassLoader.loadClass(ClassLoader.java:251) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:169) at org.ontoware.rdf2go.RDF2Go.checkModelFactory(RDF2Go.java:162) at org.ontoware.rdf2go.RDF2Go.getModelFactory(RDF2Go.java:90) at org.semanticdesktop.aperture.rdf.impl.RDFContainerFactoryImpl.(RDFContainerFactoryImpl.java:26) at org.semanticdesktop.aperture.examples.osgi.ExampleFileCrawler.crawl(ExampleFileCrawler.java:100) at org.semanticdesktop.aperture.examples.osgi.ExampleFileCrawlerActivator.doCrawl(ExampleFileCrawlerActivator.java:65) at org.semanticdesktop.aperture.examples.osgi.ExampleFileCrawlerActivator.start(ExampleFileCrawlerActivator.java:53) at org.eclipse.osgi.framework.internal.core.BundleContextImpl$2.run(BundleContextImpl.java:1009) at java.security.AccessController.doPrivileged(Native Method) at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:1003) at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:984) at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:346) at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:265) at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:257) at org.eclipse.osgi.framework.internal.core.FrameworkCommandProvider._start(FrameworkCommandProvider.java:257) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.eclipse.osgi.framework.internal.core.FrameworkCommandInterpreter.execute(FrameworkCommandInterpreter.java:150) at org.eclipse.osgi.framework.internal.core.FrameworkConsole.docommand(FrameworkConsole.java:302) at org.eclipse.osgi.framework.internal.core.FrameworkConsole.console(FrameworkConsole.java:287) at org.eclipse.osgi.framework.internal.core.FrameworkConsole.run(FrameworkConsole.java:223) at java.lang.Thread.run(Thread.java:619) Nested Exception: org.ontoware.rdf2go.exception.ModelRuntimeException: java.lang.ClassNotFoundException: org.ontoware.rdf2go.impl.StaticBinding at org.ontoware.rdf2go.RDF2Go.checkModelFactory(RDF2Go.java:174) at org.ontoware.rdf2go.RDF2Go.getModelFactory(RDF2Go.java:90) at org.semanticdesktop.aperture.rdf.impl.RDFContainerFactoryImpl.(RDFContainerFactoryImpl.java:26) at org.semanticdesktop.aperture.examples.osgi.ExampleFileCrawler.crawl(ExampleFileCrawler.java:100) at org.semanticdesktop.aperture.examples.osgi.ExampleFileCrawlerActivator.doCrawl(ExampleFileCrawlerActivator.java:65) at org.semanticdesktop.aperture.examples.osgi.ExampleFileCrawlerActivator.start(ExampleFileCrawlerActivator.java:53) at org.eclipse.osgi.framework.internal.core.BundleContextImpl$2.run(BundleContextImpl.java:1009) at java.security.AccessController.doPrivileged(Native Method) at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:1003) at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:984) at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:346) at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:265) at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:257) at org.eclipse.osgi.framework.internal.core.FrameworkCommandProvider._start(FrameworkCommandProvider.java:257) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.eclipse.osgi.framework.internal.core.FrameworkCommandInterpreter.execute(FrameworkCommandInterpreter.java:150) at org.eclipse.osgi.framework.internal.core.FrameworkConsole.docommand(FrameworkConsole.java:302) at org.eclipse.osgi.framework.internal.core.FrameworkConsole.console(FrameworkConsole.java:287) at org.eclipse.osgi.framework.internal.core.FrameworkConsole.run(FrameworkConsole.java:223) at java.lang.Thread.run(Thread.java:619) Caused by: java.lang.ClassNotFoundException: org.ontoware.rdf2go.impl.StaticBinding at org.eclipse.osgi.framework.internal.core.BundleLoader.findClassInternal(BundleLoader.java:481) at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass(BundleLoader.java:397) at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass(BundleLoader.java:385) at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:87) at java.lang.ClassLoader.loadClass(ClassLoader.java:251) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:169) at org.ontoware.rdf2go.RDF2Go.checkModelFactory(RDF2Go.java:162) ... 22 more Nested Exception: java.lang.ClassNotFoundException: org.ontoware.rdf2go.impl.StaticBinding at org.eclipse.osgi.framework.internal.core.BundleLoader.findClassInternal(BundleLoader.java:481) at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass(BundleLoader.java:397) at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass(BundleLoader.java:385) at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:87) at java.lang.ClassLoader.loadClass(ClassLoader.java:251) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:169) at org.ontoware.rdf2go.RDF2Go.checkModelFactory(RDF2Go.java:162) at org.ontoware.rdf2go.RDF2Go.getModelFactory(RDF2Go.java:90) at org.semanticdesktop.aperture.rdf.impl.RDFContainerFactoryImpl.(RDFContainerFactoryImpl.java:26) at org.semanticdesktop.aperture.examples.osgi.ExampleFileCrawler.crawl(ExampleFileCrawler.java:100) at org.semanticdesktop.aperture.examples.osgi.ExampleFileCrawlerActivator.doCrawl(ExampleFileCrawlerActivator.java:65) at org.semanticdesktop.aperture.examples.osgi.ExampleFileCrawlerActivator.start(ExampleFileCrawlerActivator.java:53) at org.eclipse.osgi.framework.internal.core.BundleContextImpl$2.run(BundleContextImpl.java:1009) at java.security.AccessController.doPrivileged(Native Method) at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:1003) at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:984) at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:346) at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:265) at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:257) at org.eclipse.osgi.framework.internal.core.FrameworkCommandProvider._start(FrameworkCommandProvider.java:257) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.eclipse.osgi.framework.internal.core.FrameworkCommandInterpreter.execute(FrameworkCommandInterpreter.java:150) at org.eclipse.osgi.framework.internal.core.FrameworkConsole.docommand(FrameworkConsole.java:302) at org.eclipse.osgi.framework.internal.core.FrameworkConsole.console(FrameworkConsole.java:287) at org.eclipse.osgi.framework.internal.core.FrameworkConsole.run(FrameworkConsole.java:223) at java.lang.Thread.run(Thread.java:619) From antoni.mylka at dfki.uni-kl.de Thu Aug 28 22:47:08 2008 From: antoni.mylka at dfki.uni-kl.de (Antoni Mylka) Date: Thu, 28 Aug 2008 22:47:08 +0200 Subject: [Rdf2go-devel] RDF2Go Problem when Running aperture osgi example In-Reply-To: <48B6C204.2040402@fzi.de> References: <48B6C204.2040402@fzi.de> Message-ID: <48B70ECC.7080806@dfki.uni-kl.de> Paul H?bner pisze: > Hello Together, > > i am using the osgi version of aperture. right now i'll try to update to > the latest version in the svn, but when testing if everything still > works fine i detected some problems with the RDF2Go sesame2 adapter > bundle. If i try to start the aperture osgi example i got an > "java.lang.ClassNotFoundException: > org.ontoware.rdf2go.impl.StaticBinding". This Class (package) is > exported by the RDF2Go sesame2 adapter bundle and Imported by the > aperture example bundle, so in my opinion evrything should be OK but the > osgi environment is telling me s.th. different :-( > > So now my Question: does anyone know about this Problem? Are there > solutions for this problem ? I would be pleased about any hint or help. > I am using the current stable equinox version and put the osgi console > stack trace at the end of the mail. > > kind regards, > > Paul > > I've been complaining about this already. http://octopus13.fzi.de:8080/browse/RTGO-49 Basically you need to specify a system property. If you use equinox - add the following line to config.ini org.ontoware.rdf2go.defaultmodelfactory=org.openrdf.rdf2go.RepositoryModelFactory Antoni Mylka antoni.mylka at gmail.com