Andy, I've rolled back to fuseki-0.2.2, which I know works for the most part with my version of SDB.
The original problem that I was trying to solve was that updates weren't working for us. As a possible fix, it was recommended to me to update my fuseki version, though it appears to be a bit of a pain to do so. Heading back to the original version and problem... Select queries run fine, but when I try and run any update query, fuseki barfs with the following: java.lang.UnsupportedOperationException: DatasetGraph.delete(Quad) Do you think that the way my config file is set up may have something to do with the updates not working? I've pasted my config file below. (The server was started with --update, I just wondered if the config somehow was overwriting that, I'm a total novice to fuseki as is probably obvious by now ;) .) Thanks! -Michael Config file: # Licensed under the terms of http://www.apache.org/licenses/LICENSE-2.0 @prefix : <#> . @prefix fuseki: <http://jena.apache.org/fuseki#> . @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . @prefix tdb: <http://jena.hpl.hp.com/2008/tdb#> . @prefix ja: <http://jena.hpl.hp.com/2005/11/Assembler#> . @prefix jumble: <http://rootdev.net/vocab/jumble#> . @prefix sdb: <http://jena.hpl.hp.com/2007/sdb#> . [] rdf:type fuseki:Server ; # Timeout - server-wide default: milliseconds. # Format 1: "1000" -- 1 second timeout # Format 2: "10000,60000" -- 10s timeout to first result, then 60s timeout to for rest of query. # See java doc for ARQ.queryTimeout ja:context [ ja:cxtName "arq:queryTimeout" ; ja:cxtValue "10000,60000" ] ; fuseki:services ( <#service_VIVO_read_only> ) . # SDB [] ja:loadClass "net.rootdev.fusekisdbconnect.SDBConnect" . jumble:SDBConnect rdfs:subClassOf ja:RDFDataset . <#service_VIVO_read_only> rdf:type fuseki:Service ; rdfs:label "UF VIVO Service (R)" ; fuseki:name "VIVO" ; fuseki:serviceQuery "query" ; fuseki:serviceQuery "sparql" ; fuseki:serviceUpdate "update" ; fuseki:serviceUpload "upload" ; fuseki:serviceReadWriteGraphStore "data" ; # A separate read-only graph store endpoint: fuseki:serviceReadGraphStore "get" ; fuseki:dataset <#ufvivo_dataset_read> ; #fuseki:dataset <#VIVOStore> ; . <#ufvivo_dataset_read> rdf:type sdb:DatasetStore ; sdb:store <#VIVOStore> . <#VIVOStore> rdf:type jumble:SDBConnect; rdfs:label "UF VIVO SDB Store"; sdb:layout "layout2"; jumble:defaultUnionGraph "true" ; sdb:engine "InnoDB"; sdb:connection [ rdf:type sdb:SDBConnection; sdb:sdbHost "********"; sdb:sdbType "mysql"; sdb:sdbName "********"; sdb:sdbUser "*********"; sdb:sdbPassword "********"; sdb:driver "com.mysql.jdbc.Driver"; ] . Michael Cox ------------------------------------------------------------------- Undergraduate Assistant Database Administrator Mission Operations and Data Systems Laboratory for Atmospheric and Space Physics 1234 Innovation Drive Boulder, CO 80303 [email protected] -----Original Message----- From: Andy Seaborne [mailto:[email protected]] On Behalf Of Andy Seaborne Sent: Wednesday, March 13, 2013 2:58 PM To: [email protected] Subject: Re: Fuseki update with SDB On 13/03/13 19:47, Michael Cox wrote: > Andy, > > Thanks for the response. > > I am getting classnotfound and methodnotfound errors when I try and > run queries in fuseki, I'm assuming because I have some sort of > library mismatch. > > I'm trying to get a fuseki-0.2.6 endpoint running and pulling from > what I believe is an sdb-1.3.4 database, do you have any advice on > what versions of the jars I should try looking at? Right now, I'm > running into the following when I run a SPARQL query: > > java.lang.NoSuchMethodError: > org.apache.jena.atlas.io.IndentedWriter.print(Ljava/lang/String;)V > etc etc > > the versions of the jars I am using are: > arq-2.8.8.jar > jena-2.6.4.jar > mysql-connector-java-5.1.19.jar > iri-0.8.jar > jena-sdb-1.3.6-20130312.095818-13.jar > ReconnectingSDB-0.1-SNAPSHOT.jar That's a bit of a mixture. fuseki-0.2.6 isn't compatible with jena-2.6.4 so I guess you have multiple jena/arq on the classpath. The Fuseki server jar has jena and arq already in it. And ARQ 2.8.8 does not have org.apache.jena.atlas.... It's probably easier if you take a consistent set from snapshot if you want to run any snapshot version. I'm afraid there isn't a SDB build for exactly Fuseki 0.2.6 (I thought there was but checking I see SDB is checking Jena development builds - 2.10.1-SNAPSHOT which for Fuseki is 0.2.7-SNAPHOST - sorry about that). If you have Fuseki+SDB from development, https://repository.apache.org/content/repositories/snapshots/org/apache/jena/ Modules jena-fuseki, jena-sdb Fuseki is currently 0.2.7-SNAPSHOT SDB is currently 1.3.6-SNAPSHOT and you want the latest build (which is at the bottom - highest increment number). if you use maven, add the snapshot repo to the repositories. Andy > > When using the sdb-1.3.4.jar instead of the new version, Fuseki fails > with the following: > > Exception in thread "main" java.lang.NoSuchMethodError: > com.hp.hpl.jena.query.DatasetFactory.create(Lcom/hp/hpl/jena/sparql/co > re/DatasetGraph;)Lcom/hp/hpl/jena/query/DataSource; > > at com.hp.hpl.jena.sdb.store.DatasetStore.create(DatasetStore.java:34) > at > com.hp.hpl.jena.sdb.SDBFactory.connectDataset(SDBFactory.java:159)
