在Android上使用Hibernate运行JavaFX应用程序时出现异常

问题描述 投票:0回答:1

我有一个JavaFX桌面应用程序。它通过Hibernate和LAN / WiFi访问远程MySQL数据库。我现在尝试使用Gluon mobile / javafxports以尽可能小的方式移植到Android 8.1。

在Android上运行应用程序时,我遇到以下异常:

Could not parse configuration: commonhibernate.cfg.xml 
at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:2105)

编辑:commonhibernate.cfg.xml的内容

<?xml version='1.0' encoding='utf-8'?>
<!--
    ~ ...
    -->
<!DOCTYPE hibernate-configuration PUBLIC
        "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
        "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">

<hibernate-configuration>
    <session-factory>
        <mapping resource="Gender.hbm.xml"/>
        <mapping resource="Person.hbm.xml"/>
    </session-factory>
</hibernate-configuration>

在(Windows-)PC上,应用程序运行良好,没有此异常。

从stackoverflow上的其他帖子我了解到怀疑Hibernate可以/应该在Android上使用。但由于这些帖子是5岁或以上,我想询问是否仍然如此,如果有人可以帮助解决Android上的异常问题?

java android hibernate javafxports
1个回答
0
投票

看起来你缺少连接参数。

这里配置示例:

    <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration SYSTEM "classpath://org/hibernate/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
    <session-factory>

        <property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
        <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>

        <property name="connection.driver_class">com.mysql.jdbc.Driver</property>
        <property name="connection.url">URL_CONNECTION</property>
        <property name="connection.username">YOUR_USERNAME</property>
        <property name="connection.password">YOUR_PASSWORD</property>

        <mapping resource="Gender.hbm.xml"/>
        <mapping resource="Person.hbm.xml"/>

    </session-factory>
</hibernate-configuration>
© www.soinside.com 2019 - 2024. All rights reserved.