Hi all,

I used Jena to load an .owl ontology to the default model for Sparql query
and it works well from IntelliJ IDE, however, the Jar file built from the
source code has a problem initiating Jena.

Here is the function that has issues

protected Model call() throws Exception {

    logger.trace("enter function to build ontology model for Sparql query");

    org.apache.jena.rdf.model.Model model = ModelFactory.createDefaultModel();

    logger.info("default ontology model created");
    try {
        logger.trace("start reading hpo");
        InputStream in = FileManager.get().open(pathToOntology);
        model.read(in, null);
    } catch (JenaException je) {
        logger.error("cannot open hpo.owl");
    }
    logger.trace("exit function to build ontology model for Sparql query.");
    return model;

}

You can see that from my IDE, the loggers indicates that the function
completes running successfully.

>From IDE:

[Thread-6] TRACE (OntologyModelBuilderForJena.java:36) - enter
function to build ontology model for Sparql query
[Thread-6] DEBUG (JenaSystem.java:212) - Jena initialization[Thread-6]
TRACE (SystemUtils.java:37) - Using thread classloader
[Thread-6] DEBUG (FileManager.java:158) - Add location: LocatorFile
[Thread-6] DEBUG (FileManager.java:158) - Add location: ClassLoaderLocator
[Thread-6] TRACE (LocatorFile.java:112) - Not found: file:location-mapping.rdf
[Thread-6] TRACE (LocatorClassLoader.java:67) - Failed to open:
file:location-mapping.rdf
[Thread-6] TRACE (LocatorFile.java:112) - Not found: file:location-mapping.n3
[Thread-6] TRACE (LocatorClassLoader.java:67) - Failed to open:
file:location-mapping.n3
[Thread-6] TRACE (LocatorFile.java:112) - Not found: file:location-mapping.ttl
[Thread-6] TRACE (LocatorClassLoader.java:67) - Failed to open:
file:location-mapping.ttl
[Thread-6] TRACE (LocatorFile.java:112) - Not found:
file:etc/location-mapping.rdf
[Thread-6] TRACE (LocatorClassLoader.java:67) - Failed to open:
file:etc/location-mapping.rdf
[Thread-6] TRACE (LocatorFile.java:112) - Not found:
file:etc/location-mapping.n3
[Thread-6] TRACE (LocatorClassLoader.java:67) - Failed to open:
file:etc/location-mapping.n3
[Thread-6] TRACE (LocatorFile.java:112) - Not found:
file:etc/location-mapping.ttl
[Thread-6] TRACE (LocatorClassLoader.java:67) - Failed to open:
file:etc/location-mapping.ttl
[Thread-6] DEBUG (LocationMapper.java:152) - Failed to find
configuration: 
file:location-mapping.rdf;file:location-mapping.n3;file:location-mapping.ttl;file:etc/location-mapping.rdf;file:etc/location-mapping.n3;file:etc/location-mapping.ttl
[Thread-6] DEBUG (FileManager.java:158) - Add location: LocatorFile
[Thread-6] DEBUG (FileManager.java:158) - Add location: LocatorURL
[Thread-6] DEBUG (FileManager.java:158) - Add location: ClassLoaderLocator
[Thread-6] TRACE (LocatorFile.java:159) - Not found: location-mapping.ttl
[Thread-6] TRACE (LocatorClassLoader.java:65) - Failed to open:
location-mapping.ttl
[Thread-6] TRACE (LocatorFile.java:159) - Not found: location-mapping.rdf
[Thread-6] TRACE (LocatorClassLoader.java:65) - Failed to open:
location-mapping.rdf
[Thread-6] TRACE (LocatorFile.java:159) - Not found: location-mapping.n3
[Thread-6] TRACE (LocatorClassLoader.java:65) - Failed to open:
location-mapping.n3
[Thread-6] TRACE (LocatorFile.java:159) - Not found: etc/location-mapping.rdf
[Thread-6] TRACE (LocatorClassLoader.java:65) - Failed to open:
etc/location-mapping.rdf
[Thread-6] TRACE (LocatorFile.java:159) - Not found: etc/location-mapping.n3
[Thread-6] TRACE (LocatorClassLoader.java:65) - Failed to open:
etc/location-mapping.n3
[Thread-6] TRACE (LocatorFile.java:159) - Not found: etc/location-mapping.ttl
[Thread-6] TRACE (LocatorClassLoader.java:65) - Failed to open:
etc/location-mapping.ttl
[Thread-6] DEBUG (JenaIOEnvironment.java:180) - Failed to find
configuration: 
location-mapping.ttl;location-mapping.rdf;location-mapping.n3;etc/location-mapping.rdf;etc/location-mapping.n3;etc/location-mapping.ttl
[Thread-6] DEBUG (SystemTDB.java:334) - System architecture: 64 bit
[Thread-6] DEBUG (SystemTDB.java:330) - System architecture: 64 bit
[Thread-6] INFO  (OntologyModelBuilderForJena.java:51) - default
ontology model created
[Thread-6] TRACE (OntologyModelBuilderForJena.java:53) - start reading hpo
[Thread-6] DEBUG (StreamManager.java:121) -
open(/Users/zhangx/.loinc2hpo/hp.owl)
[Thread-6] DEBUG (StreamManager.java:140) - Not mapped:
/Users/zhangx/.loinc2hpo/hp.owl
[Thread-6] TRACE (LocatorFile.java:171) - Found: /Users/zhangx/.loinc2hpo/hp.owl
[Thread-6] DEBUG (StreamManager.java:170) - Found:
/Users/zhangx/.loinc2hpo/hp.owl (LocatorFile)
[Thread-6] TRACE (OntologyModelBuilderForJena.java:59) - exit function
to build ontology model for Sparql query.

However, when I start from the Jar file, it enters the functions and fails
(the cyan-colored messages above are missing here).

[Thread-6] TRACE (OntologyModelBuilderForJena.java:29) - enter
function to build ontology model for Sparql query
[Thread-6] DEBUG (JenaSystem.java:212) - Jena initialization
[Thread-6] DEBUG (SystemTDB.java:334) - System architecture: 64 bit

In my desperation to solve this issue, I actually added a few lines that I
don't think is helpful but is interesting :


protected Model call() throws Exception {

    logger.trace("enter function to build ontology model for Sparql query");
    LocationMapper locationMapper = new LocationMapper();

logger.trace("location map is set");
FileManager.get().addLocatorClassLoader(OntologyModelBuilderForJena.class.getClassLoader());
logger.trace("locator is set");

org.apache.jena.rdf.model.Model model = ModelFactory.createDefaultModel();
logger.info("default ontology model created");
try {
logger.trace("start reading hpo");
InputStream in = FileManager.get().open(pathToOntology);
model.read(in, null);
} catch (JenaException je) {
logger.error("cannot open hpo.owl");
}
logger.trace("exit function to build ontology model for Sparql query.");
return model;
}


--

Reply via email to