Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unable to generate OBDA from R2RML using CLI #799

Open
UtkrshS opened this issue Mar 16, 2024 · 1 comment
Open

Unable to generate OBDA from R2RML using CLI #799

UtkrshS opened this issue Mar 16, 2024 · 1 comment

Comments

@UtkrshS
Copy link

UtkrshS commented Mar 16, 2024

I am not able to generate the OBDA file using the R2RML file. It gives me an error mentioned below.

Command used: ./ontop mapping to-obda -i input-r2rml.ttl -o output.obda

Can someone pls help?

Error received:

it.unibz.inf.ontop.exception.InvalidOntopConfigurationException: Impossible to get the JDBC driver. Reason: No suitable driver
at it.unibz.inf.ontop.injection.impl.OntopSQLCoreSettingsImpl.lambda$extractJdbcDriver$11(OntopSQLCoreSettingsImpl.java:121)
at java.base/java.util.Optional.orElseGet(Optional.java:364)
at it.unibz.inf.ontop.injection.impl.OntopSQLCoreSettingsImpl.extractJdbcDriver(OntopSQLCoreSettingsImpl.java:115)
at it.unibz.inf.ontop.injection.impl.OntopSystemSQLSettingsImpl.loadProperties(OntopSystemSQLSettingsImpl.java:31)
at it.unibz.inf.ontop.injection.impl.OntopSystemSQLSettingsImpl.(OntopSystemSQLSettingsImpl.java:22)
at it.unibz.inf.ontop.injection.impl.OntopStandaloneSQLSettingsImpl.loadProperties(OntopStandaloneSQLSettingsImpl.java:21)
at it.unibz.inf.ontop.injection.impl.OntopStandaloneSQLSettingsImpl.(OntopStandaloneSQLSettingsImpl.java:16)
at it.unibz.inf.ontop.injection.impl.OntopSQLOWLAPIConfigurationImpl$BuilderImpl.build(OntopSQLOWLAPIConfigurationImpl.java:155)
at it.unibz.inf.ontop.cli.OntopR2RMLToOBDA.run(OntopR2RMLToOBDA.java:39)
at it.unibz.inf.ontop.cli.Ontop.main(Ontop.java:18)
Exception in thread "main" java.lang.AssertionError
at it.unibz.inf.ontop.cli.Ontop.main(Ontop.java:30)

@LorenzBuehmann
Copy link
Contributor

LorenzBuehmann commented Mar 18, 2024

According to the docs, the converter

  1. does consider DB metadata, so it either
    a) tries to extract metadata from the DB, or
    b) it expects a given DB metadata file (see docs)
  2. or the above requirements can be ignored with --force argument

In case of 1a (which is the default case), Ontop has to open a JDBC connection. That means Ontop needs the corresponding JDBC driver in the classpath. The JDBC drivers of all the supported DBs aren't shipped with the Ontop distribution (due to licenses I guess),thus, you have to download the one for your DB system and put it into the jdbc folder of your Ontop distribution.

Long story short, either download the JDBC driver or simply bypass this with --force

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants