将 OpenXava 连接到 SQL Server 时出错 - 无法执行“记录”操作:[Persist

Error connecting OpenXava to SQL Server - It was impossible to execute the Record action: [Persist

提问人:solee 提问时间:11/5/2023 最后编辑:solee 更新时间:11/14/2023 访问量:44

问:

我想将 OpenXava 与 SQL Server 2019 (15.0.2104) 连接,但是,在上下文和持久性中启用该选项会给我一个错误。当我运行程序时,它确实给了我页面的地址,我可以写信息,但是,当我单击“记录”按钮时,我收到错误:

无法执行 Record 操作: [PersistenceUnit: default ] 无法构建 Hibernate SessionFactory

你知道怎么解决吗?

我从 SQL Server 配置中启用 TCP IP 选项,然后使用登录名创建数据库和用户。

这是项目: https://github.com/solee2222/CLINIC.git (用 git 克隆)

我在我的持久性.xml文件中有这个:

        <properties>
            <property name="hibernate.connection.driver_class" value="com.microsoft.sqlserver.jdbc.SQLServerDriver"/>
            <property name="hibernate.connection.username" value="user"/>
            <property name="hibernate.connection.password" value="123"/>
            <property name="hibernate.connection.url" value="jdbc:sqlserver://localhost:1433;databaseName=facturaciondb;encrypt=true;trustServerCertificate=true;"/>
            <property name="hibernate.dialect" value="org.hibernate.dialect.SQLServerDialect"/>
            <property name="hibernate.hbm2ddl.auto" value="update"/>
            <property name="hibernate.show_sql" value="true"/>
        </properties>

这在我的上下文.xml文件中

    <!-- Microsoft SQL Server -->
    <Resource name="jdbc/facturacionDS" auth="Container" type="javax.sql.DataSource"
          maxTotal="20" maxIdle="5" maxWaitMillis="10000"
          username="user" password="123" 
          driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver" 

最后,这在我的 pom.xml 文件中

        <!-- Microsoft SQL Server -->
        <dependency>
            <groupId>com.microsoft.sqlserver</groupId>
            <artifactId>mssql-jdbc</artifactId>
            <version>12.4.1.jre11</version>
        </dependency>
java sql-server intellij-idea openxava

评论

1赞 AlwaysLearning 11/5/2023
SQL Server Management Studio 不是数据库服务器,而是用于管理数据库服务器的工具。您安装了哪个版本的 Microsoft SQL Server?对它执行时的输出是什么?SELECT @@VERSION
2赞 siggemannen 11/6/2023
您需要添加更多信息,例如整个错误。
0赞 Jacky Liu - JetBrains 11/6/2023
如果可能的话,您能否在不针对该问题的任何敏感代码的情况下共享您的最小示例项目?我同意 siggemannen 的观点,即整个日志很有帮助。
0赞 javierpaniza 11/6/2023
您无需将连接详细信息放在持久性 .xml 中,因为它们已在上下文 .xml 中。持久性 .xml 应具有数据源 JNDI 名称。有关示例,请参阅文档。此外,我们需要堆栈跟踪来查看错误的原因。
0赞 solee 11/14/2023
github.com/solee2222/CLINIC.git @JackyLiu-JetBrains

答: 暂无答案