You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jena.apache.org by "Sandro Fiorini (JIRA)" <ji...@apache.org> on 2019/03/05 20:43:00 UTC

[jira] [Commented] (JENA-1618) Configuration for a TDB2 ,Reasoner and external content failed.

    [ https://issues.apache.org/jira/browse/JENA-1618?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16784890#comment-16784890 ] 

Sandro Fiorini commented on JENA-1618:
--------------------------------------

Hello,

I am having a simular issue. It appears to affect the creation of datasets (with inference support) through the http endpoint. In my final test I replaced the config-tdb2 template file with [~andy.seaborne]`s code, tried to create a new dataset through the web interface and got a similar error (see exception bellow).

Curiously, if I create a dataset with the standard configuration and then change the config file, it seems to work fine.

best,

 
{code:java}
org.apache.jena.assembler.exceptions.AmbiguousSpecificTypeException: cannot find a most specific type for http://base/#tdb_graph, which has as possibilities: ja:Model tdb2:GraphTDB.
  doing:
    root: http://base/#infGraph with type: http://jena.hpl.hp.com/2005/11/Assembler#InfModel assembler class: class org.apache.jena.assembler.assemblers.InfModelAssembler
    root: http://jena.example.org/dataset with type: http://jena.hpl.hp.com/2005/11/Assembler#RDFDataset assembler class: class org.apache.jena.sparql.core.assembler.DatasetAssembler

	at org.apache.jena.assembler.assemblers.AssemblerGroup$PlainAssemblerGroup.open(AssemblerGroup.java:142)
	at org.apache.jena.assembler.assemblers.AssemblerGroup$ExpandingAssemblerGroup.open(AssemblerGroup.java:93)
	at org.apache.jena.assembler.assemblers.AssemblerBase.openModel(AssemblerBase.java:74)
	at org.apache.jena.assembler.assemblers.InfModelAssembler.getBase(InfModelAssembler.java:42)
	at org.apache.jena.assembler.assemblers.InfModelAssembler.openEmptyModel(InfModelAssembler.java:33)
	at org.apache.jena.assembler.assemblers.ModelAssembler.openModel(ModelAssembler.java:36)
	at org.apache.jena.assembler.assemblers.ModelAssembler.open(ModelAssembler.java:43)
	at org.apache.jena.assembler.assemblers.AssemblerGroup$PlainAssemblerGroup.openBySpecificType(AssemblerGroup.java:157)
	at org.apache.jena.assembler.assemblers.AssemblerGroup$PlainAssemblerGroup.open(AssemblerGroup.java:144)
	at org.apache.jena.assembler.assemblers.AssemblerGroup$ExpandingAssemblerGroup.open(AssemblerGroup.java:93)
	at org.apache.jena.assembler.assemblers.AssemblerBase.open(AssemblerBase.java:39)
	at org.apache.jena.assembler.assemblers.AssemblerBase.open(AssemblerBase.java:35)
	at org.apache.jena.assembler.assemblers.AssemblerGroup.openModel(AssemblerGroup.java:47)
	at org.apache.jena.sparql.core.assembler.DatasetAssembler.createDataset(DatasetAssembler.java:56)
	at org.apache.jena.sparql.core.assembler.DatasetAssembler.open(DatasetAssembler.java:43)
	at org.apache.jena.assembler.assemblers.AssemblerGroup$PlainAssemblerGroup.openBySpecificType(AssemblerGroup.java:157)
	at org.apache.jena.assembler.assemblers.AssemblerGroup$PlainAssemblerGroup.open(AssemblerGroup.java:144)
	at org.apache.jena.assembler.assemblers.AssemblerGroup$ExpandingAssemblerGroup.open(AssemblerGroup.java:93)
	at org.apache.jena.assembler.assemblers.AssemblerBase.open(AssemblerBase.java:39)
	at org.apache.jena.assembler.assemblers.AssemblerBase.open(AssemblerBase.java:35)
	at org.apache.jena.fuseki.build.FusekiConfig.getDataset(FusekiConfig.java:345)
	at org.apache.jena.fuseki.build.FusekiConfig.buildDataService(FusekiConfig.java:299)
	at org.apache.jena.fuseki.build.FusekiConfig.buildDataAccessPoint(FusekiConfig.java:289)
	at org.apache.jena.fuseki.mgt.ActionDatasets.execPostContainer(ActionDatasets.java:230)
	at org.apache.jena.fuseki.ctl.ActionContainerItem.execPost(ActionContainerItem.java:87)
	at org.apache.jena.fuseki.ctl.ActionContainerItem.perform(ActionContainerItem.java:62)
	at org.apache.jena.fuseki.ctl.ActionCtl.executeLifecycle(ActionCtl.java:68)
	at org.apache.jena.fuseki.ctl.ActionCtl.executeAction(ActionCtl.java:62)
	at org.apache.jena.fuseki.ctl.ActionCtl.execCommonWorker(ActionCtl.java:53)
	at org.apache.jena.fuseki.servlets.ActionBase.doCommon(ActionBase.java:74)
	at org.apache.jena.fuseki.ctl.ActionContainerItem.doPost(ActionContainerItem.java:42)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
	at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:865)
	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1655)
	at org.apache.jena.fuseki.servlets.FusekiFilter.doFilter(FusekiFilter.java:101)
	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
	at org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:61)
	at org.apache.shiro.web.servlet.AdviceFilter.executeChain(AdviceFilter.java:108)
	at org.apache.shiro.web.servlet.AdviceFilter.doFilterInternal(AdviceFilter.java:137)
	at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125)
	at org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:66)
	at org.apache.shiro.web.servlet.AbstractShiroFilter.executeChain(AbstractShiroFilter.java:449)
	at org.apache.shiro.web.servlet.AbstractShiroFilter$1.call(AbstractShiroFilter.java:365)
	at org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:90)
	at org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:83)
	at org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:383)
	at org.apache.shiro.web.servlet.AbstractShiroFilter.doFilterInternal(AbstractShiroFilter.java:362)
	at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125)
	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
	at org.apache.jena.fuseki.servlets.CrossOriginFilter.handle(CrossOriginFilter.java:285)
	at org.apache.jena.fuseki.servlets.CrossOriginFilter.doFilter(CrossOriginFilter.java:248)
	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1634)
	at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:533)
	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:146)
	at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548)
	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
	at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:257)
	at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1595)
	at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:255)
	at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1340)
	at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:203)
	at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:473)
	at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1564)
	at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:201)
	at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1242)
	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:144)
	at org.eclipse.jetty.server.handler.gzip.GzipHandler.handle(GzipHandler.java:690)
	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
	at org.eclipse.jetty.server.Server.handle(Server.java:503)
	at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:364)
	at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:260)
	at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:305)
	at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103)
	at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:118)
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:333)
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:310)
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:168)
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:126)
	at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:366)
	at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:765)
	at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:683)
{code}

> Configuration for a TDB2 ,Reasoner and external content failed.
> ---------------------------------------------------------------
>
>                 Key: JENA-1618
>                 URL: https://issues.apache.org/jira/browse/JENA-1618
>             Project: Apache Jena
>          Issue Type: Question
>          Components: Fuseki, Reasoners, TDB2
>    Affects Versions: Jena 3.9.0
>         Environment: Jena fuseki 3.9
> Mac OS El Capitan 
>            Reporter: Jesus Herrera
>            Priority: Major
>
> Hello everyone,
> I'm barely new to jena fuseki and I'm trying to configurate a config file which use a TDB2 storage, OWL reasoner and an external content (my ontology).
> This is my configuration file:
> {noformat}
> # 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 tdb2: <http://jena.apache.org/2016/tdb#>
> PREFIX ja: <http://jena.hpl.hp.com/2005/11/Assembler#>
> ## ---------------------------------------------------------------
> ## Updatable TDB dataset with all services enabled.
> <#service_tdb_all> rdf:type fuseki:Service ;
>  rdfs:label "TDB2 elmenu" ;
>  fuseki:name "elmenu" ;
>  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 <#tdb_dataset_readwrite> ;
>  
>  .
> <#tdb_dataset_readwrite> a ja:RDFDataset;
>  ja:defaultGraph :modelInf;
>  .
> :modelInf a ja:InfModel;
>  ja:content [ja:externalContent <file://etc/fuseki/databases/elmenuontology.ttl> ] ;
>  ja:reasoner [ja:reasonerURL <http://jena.hpl.hp.com/2003/OWLFBRuleReasoner>] ;
>  ja:baseModel <#tdb_storage> ;
>  .
> <#tdb_storage> rdf:type tdb2:DatasetTDB2 ;
>  tdb2:location "/Users/uppersky03/Documents/Momentum/fuseki-run/databases/elmenu" ;
>  ##ja:context [ ja:cxtName "arq:queryTimeout" ; ja:cxtValue "3000" ] ;
>  tdb2:unionDefaultGraph true ;
>  .
> {noformat}
>  
> And the Error I get is this:
> {noformat}
> [2018-10-10 11:50:04] Server ERROR Exception in initialization: cannot find a most specific type for :tdb_storage, which has as possibilities: ja:Model tdb2:DatasetTDB2.
> [2018-10-10 11:50:04] WebAppContext WARN Failed startup of context o.e.j.w.WebAppContext@d4602a\{Apache Jena Fuseki Server,/,file:///Users/uppersky03/Documents/Momentum/apache-jena-fuseki-3.9.0/webapp/,UNAVAILABLE}
> org.apache.jena.assembler.exceptions.AmbiguousSpecificTypeException: cannot find a most specific type for :tdb_storage, which has as possibilities: ja:Model tdb2:DatasetTDB2.
>  doing:
>  root: file:///Users/uppersky03/Documents/Momentum/fuseki-run/configuration/config.ttl#modelInf with type: http://jena.hpl.hp.com/2005/11/Assembler#InfModel assembler class: class org.apache.jena.assembler.assemblers.InfModelAssembler
>  root: file:///Users/uppersky03/Documents/Momentum/fuseki-run/configuration/config.ttl#tdb_dataset_readwrite with type: http://jena.hpl.hp.com/2005/11/Assembler#RDFDataset assembler class: class org.apache.jena.sparql.core.assembler.DatasetAssembler
> at org.apache.jena.assembler.assemblers.AssemblerGroup$PlainAssemblerGroup.open(AssemblerGroup.java:142)
>  at org.apache.jena.assembler.assemblers.AssemblerGroup$ExpandingAssemblerGroup.open(AssemblerGroup.java:93)
>  at org.apache.jena.assembler.assemblers.AssemblerBase.openModel(AssemblerBase.java:74)
>  at org.apache.jena.assembler.assemblers.InfModelAssembler.getBase(InfModelAssembler.java:42)
>  at org.apache.jena.assembler.assemblers.InfModelAssembler.openEmptyModel(InfModelAssembler.java:33)
>  at org.apache.jena.assembler.assemblers.ModelAssembler.openModel(ModelAssembler.java:36)
>  at org.apache.jena.assembler.assemblers.ModelAssembler.open(ModelAssembler.java:43)
>  at org.apache.jena.assembler.assemblers.AssemblerGroup$PlainAssemblerGroup.openBySpecificType(AssemblerGroup.java:157)
>  at org.apache.jena.assembler.assemblers.AssemblerGroup$PlainAssemblerGroup.open(AssemblerGroup.java:144)
>  at org.apache.jena.assembler.assemblers.AssemblerGroup$ExpandingAssemblerGroup.open(AssemblerGroup.java:93)
>  at org.apache.jena.assembler.assemblers.AssemblerBase.open(AssemblerBase.java:39)
>  at org.apache.jena.assembler.assemblers.AssemblerBase.open(AssemblerBase.java:35)
>  at org.apache.jena.assembler.assemblers.AssemblerGroup.openModel(AssemblerGroup.java:47)
>  at org.apache.jena.sparql.core.assembler.DatasetAssembler.createDataset(DatasetAssembler.java:56)
>  at org.apache.jena.sparql.core.assembler.DatasetAssembler.open(DatasetAssembler.java:43)
>  at org.apache.jena.assembler.assemblers.AssemblerGroup$PlainAssemblerGroup.openBySpecificType(AssemblerGroup.java:157)
>  at org.apache.jena.assembler.assemblers.AssemblerGroup$PlainAssemblerGroup.open(AssemblerGroup.java:144)
>  at org.apache.jena.assembler.assemblers.AssemblerGroup$ExpandingAssemblerGroup.open(AssemblerGroup.java:93)
>  at org.apache.jena.assembler.assemblers.AssemblerBase.open(AssemblerBase.java:39)
>  at org.apache.jena.assembler.assemblers.AssemblerBase.open(AssemblerBase.java:35)
>  at org.apache.jena.fuseki.build.FusekiConfig.getDataset(FusekiConfig.java:272)
>  at org.apache.jena.fuseki.build.FusekiConfig.buildDataServiceCustom(FusekiConfig.java:225)
>  at org.apache.jena.fuseki.build.FusekiConfig.buildDataAccessPoint(FusekiConfig.java:217)
>  at org.apache.jena.fuseki.build.FusekiConfig.readConfiguration(FusekiConfig.java:200)
>  at org.apache.jena.fuseki.build.FusekiConfig.readConfigurationDirectory(FusekiConfig.java:179)
>  at org.apache.jena.fuseki.webapp.FusekiSystem.initializeDataAccessPoints(FusekiSystem.java:226)
>  at org.apache.jena.fuseki.webapp.FusekiServerListener.serverInitialization(FusekiServerListener.java:98)
>  at org.apache.jena.fuseki.webapp.FusekiServerListener.contextInitialized(FusekiServerListener.java:56)
>  at org.eclipse.jetty.server.handler.ContextHandler.callContextInitialized(ContextHandler.java:952)
>  at org.eclipse.jetty.servlet.ServletContextHandler.callContextInitialized(ServletContextHandler.java:558)
>  at org.eclipse.jetty.server.handler.ContextHandler.startContext(ContextHandler.java:917)
>  at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:370)
>  at org.eclipse.jetty.webapp.WebAppContext.startWebapp(WebAppContext.java:1497)
>  at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1459)
>  at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:847)
>  at org.eclipse.jetty.servlet.ServletContextHandler.doStart(ServletContextHandler.java:287)
>  at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:545)
>  at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
>  at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:138)
>  at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:108)
>  at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:113)
>  at org.eclipse.jetty.server.handler.gzip.GzipHandler.doStart(GzipHandler.java:410)
>  at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
>  at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:138)
>  at org.eclipse.jetty.server.Server.start(Server.java:416)
>  at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:108)
>  at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:113)
>  at org.eclipse.jetty.server.Server.doStart(Server.java:383)
>  at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
>  at org.apache.jena.fuseki.cmd.JettyFuseki.start(JettyFuseki.java:138)
>  at org.apache.jena.fuseki.cmd.FusekiCmd.runFuseki(FusekiCmd.java:372)
>  at org.apache.jena.fuseki.cmd.FusekiCmd$FusekiCmdInner.exec(FusekiCmd.java:356)
>  at jena.cmd.CmdMain.mainMethod(CmdMain.java:93)
>  at jena.cmd.CmdMain.mainRun(CmdMain.java:58)
>  at jena.cmd.CmdMain.mainRun(CmdMain.java:45)
>  at org.apache.jena.fuseki.cmd.FusekiCmd$FusekiCmdInner.innerMain(FusekiCmd.java:104)
>  at org.apache.jena.fuseki.cmd.FusekiCmd.main(FusekiCmd.java:67)
> {noformat}
> Any help will be appreciate,
> Thanks in advance, Jesus



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)