> It looks like it is HDT's responsibility - they provide the code to process 
> hdt:fileName


This is the stack trace

-----------------------------------------------------------------
Deprecated: Use org.apache.jena.fuseki.cmd.FusekiCmd
[...]
[2017-10-20 06:10:58] Config     INFO  Loaded 
org.rdfhdt.hdtjena.HDTGraphAssembler
java.io.FileNotFoundException: graph.hdt (No such file or directory)
        at java.io.FileInputStream.open0(Native Method)
        at java.io.FileInputStream.open(FileInputStream.java:195)
        at java.io.FileInputStream.<init>(FileInputStream.java:138)
        at java.io.FileInputStream.<init>(FileInputStream.java:93)
        at org.rdfhdt.hdt.hdt.impl.HDTImpl.mapFromHDT(HDTImpl.java:215)
        at 
org.rdfhdt.hdt.hdt.HDTManagerImpl.doMapIndexedHDT(HDTManagerImpl.java:62)
        at org.rdfhdt.hdt.hdt.HDTManager.mapIndexedHDT(HDTManager.java:93)
        at org.rdfhdt.hdtjena.HDTGraphAssembler.open(HDTGraphAssembler.java:72)
        at org.rdfhdt.hdtjena.HDTGraphAssembler.open(HDTGraphAssembler.java:44)
        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:79)
        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.FusekiBuilder.getDataset(FusekiBuilder.java:111)
        at 
org.apache.jena.fuseki.build.FusekiBuilder.buildDataService(FusekiBuilder.java:70)
        at 
org.apache.jena.fuseki.build.FusekiBuilder.buildDataAccessPoint(FusekiBuilder.java:61)
        at 
org.apache.jena.fuseki.build.FusekiConfig.servicesAndDatasets(FusekiConfig.java:124)
        at 
org.apache.jena.fuseki.build.FusekiConfig.readServerConfigFile(FusekiConfig.java:65)
        at 
org.apache.jena.fuseki.server.FusekiSystem.processServerConfigFile(FusekiSystem.java:260)
        at 
org.apache.jena.fuseki.server.FusekiSystem.initServerConfiguration(FusekiSystem.java:236)
        at 
org.apache.jena.fuseki.server.FusekiSystem.initializeDataAccessPoints(FusekiSystem.java:206)
        at 
org.apache.jena.fuseki.server.FusekiServerListener.serverInitialization(FusekiServerListener.java:88)
        at 
org.apache.jena.fuseki.server.FusekiServerListener.contextInitialized(FusekiServerListener.java:52)
        at 
org.eclipse.jetty.server.handler.ContextHandler.callContextInitialized(ContextHandler.java:890)
        at 
org.eclipse.jetty.servlet.ServletContextHandler.callContextInitialized(ServletContextHandler.java:532)
        at 
org.eclipse.jetty.server.handler.ContextHandler.startContext(ContextHandler.java:853)
        at 
org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:344)
        at 
org.eclipse.jetty.webapp.WebAppContext.startWebapp(WebAppContext.java:1501)
        at 
org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1463)
        at 
org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:785)
        at 
org.eclipse.jetty.servlet.ServletContextHandler.doStart(ServletContextHandler.java:261)
        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:131)
        at 
org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:105)
        at 
org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:113)
        at 
org.eclipse.jetty.server.handler.gzip.GzipHandler.doStart(GzipHandler.java:272)
        at 
org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
        at 
org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:131)
        at org.eclipse.jetty.server.Server.start(Server.java:452)
        at 
org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:105)
        at 
org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:113)
        at org.eclipse.jetty.server.Server.doStart(Server.java:419)
        at 
org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
        at org.apache.jena.fuseki.jetty.JettyFuseki.start(JettyFuseki.java:139)
        at org.apache.jena.fuseki.cmd.FusekiCmd.runFuseki(FusekiCmd.java:367)
        at 
org.apache.jena.fuseki.cmd.FusekiCmd$FusekiCmdInner.exec(FusekiCmd.java:351)
        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:103)
        at org.apache.jena.fuseki.cmd.FusekiCmd.main(FusekiCmd.java:67)
        at org.apache.jena.fuseki.FusekiCmd.main(FusekiCmd.java:25)
-----------------------------------------------------------------


I looked into hdt-java source code; it looks like the class 
https://github.com/rdfhdt/hdt-java/blob/7c05411992cd3f2bd648c698e87054b3ce70d974/hdt-jena/src/main/java/org/rdfhdt/hdtjena/HDTGraphAssembler.java
 is the entry point, where Fuseki calls HDT classes. The "open" function is 
overriding 
https://jena.apache.org/documentation/javadoc/jena/org/apache/jena/assembler/assemblers/AssemblerBase.html#open-org.apache.jena.assembler.Assembler-org.apache.jena.rdf.model.Resource-org.apache.jena.assembler.Mode-

I've put a check here, in the "open" function:

    if(!new File(file).isFile())
        return null;

but now I get an uncaught NULL exception. Could somebody please give me a hint 
where/how to handle a "file not found" here? I simply want to ignore a graph if 
the file doesn't exist, but as far as I understand open() must always return an 
object?

Reply via email to