问题标签 [persistence.xml]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2794 浏览

spring - 为什么 Spring Data JPA 会破坏以前工作的 persistence.xml 文件?

我正在尝试将 Spring Data JPA 添加到我的项目中,以便我可以利用 Repositories 接口。

采取的步骤 - ApplicationContext.xml:

  • 添加xmlns:jpa="http://www.springframework.org/schema/data/jpa"到我的 applicationContext.xml 文件的标签中。

    • 添加http://www.springframework.org/schema/data/jpa http://www.springframework.org/schema/data/jpa/spring-jpa-1.0.xsdxsi:schemaLocation我的 applicationContext.xml 文件的标签中的定义

    • 添加<jpa:repositories base-package="com.myproject.persistence" />为我的 applicationContext.xml 文件的标记的子项

采取的步骤 - POM

这导致我的服务器抱怨以前很好的 persistence.xml 配置:

为什么添加 Spring Data JPA 会突然尝试将 JPA 回归到 1.0?!

完整的 POM 如下。

编辑:以下持久性提供程序是 Spring Data JPA 的依赖项之一。我已将它们全部添加到我的 POM 的排除列表中。这不起作用!

在 Spring Data 的 POM 中指定的以下持久性提供程序 - 已将它们全部添加到排除列表中。还是坏了。

根据 Eclipse 的 JPA 依赖项:-

截屏

0 投票
2 回答
8817 浏览

tomcat - JNDI 查找使用lookUp 可以正常工作,但在JPA 的persistence.xml 中使用时不行

我正在使用tomcat连接池,jpa,hibernate。如果我尝试使用以下方式获取它,我在 tomcat 的 context.xml 中创建的数据源可以正常工作:

但是如果我在 persistence.xml 中指定这个 jndi 数据源

我收到以下异常:org.hibernate.service.jndi.JndiException: Unable to lookup JNDI name [jdbc/kids]

知道为什么会发生!

0 投票
2 回答
1290 浏览

java - 如何从 build.properties 获取一个值到 persistence.xml?

在我们的项目中,我需要从 build.properties 获取一些值到 persistence.xml。请让我知道是否有任何可能的方法?

0 投票
0 回答
2610 浏览

spring - 数据库配置参数的数据源与persistence.xml

在我的项目中,我将 spring 与 jpa 一起使用,当我到达配置文件时,我的意思是 appContext.xml 和 persistence.xml,我遇到了以下情况:当我将 db 配置放在 persistence.xml 中时从 appContext.xml 中删除数据源没有任何作用,但是当我将 bd 配置移动到 appContext 到应用程序正在运行的 dataSource 标记(带有属性)中时,有人可以解释一下吗?提前致谢!

持久性.xml:

AppContext.xml:

0 投票
1 回答
608 浏览

jpa - EJB 找不到可选包,因此在其中找不到持久性单元

环境

  • WebLogic 11g(随后是 Java EE 5 和 EJB 3.0)
  • 一个 EJB 包含的 JAR 也包含所有持久性实体。它工作得很好(有一个使用 EJB 的 Web 应用程序,它按预期工作)。我决定将实体分离到另一层,为此我创建了另一个模块并将其部署为可选包。所以现在我有两个 JAR 文件,顺便说一下,我分别部署而不是作为一个应用程序的一部分;持久性 JAR 和 EJB JAR。

问题

在部署 EJB 期间,我收到以下错误(告诉我未找到可选包):

无法部署 EJB:来自 BLayer-1.0.0-SNAPSHOT.jar 的 StocksBean:在 BLayer-1.0.0-SNAPSHOT.jar 范围内没有名为“internalAppsPU”的持久性单元可用
。可用的持久性单位:[]

更多信息

持久性模块的 JAR 清单

持久性模块 JAR 的 META-INF 文件夹中的 persistence.XML

EJB的代码

EJB 的 JAR 清单

请注意以下事项:

  • InternalAppsDS数据源之前在 WebLogic 中进行了配置。
  • 在某些时候,我的印象是Extension-List中的名称必须与部署为可选包的 JAR 文件的名称相匹配。但是当我阅读更多时,我意识到这是不正确的。
0 投票
1 回答
23218 浏览

java - 无法构建 EntityManagerFactory - Spring 和 Hibernate

将带有 hibernate3 的 spring 应用程序部署到 glassfish 服务器 3.1.2 时出现以下错误:

这是我的 pom.xml:

这是位于 src/java/resources/META-INF 中的 persistence.xml 文件:

这是我位于 src/main/resources 中的 persistence-context.xml 文件:

有人可以帮我弄清楚问题可能是什么以及如何解决它吗?

0 投票
2 回答
6895 浏览

jpa-2.0 - EntityManagerFactory 未使用 @PersistenceUnit 注入

我是一个java初学者。我在使用 JTA 事务配置持久性单元时遇到了麻烦。我需要使用已经定义、配置和填充的 PostgreSQL 数据库。使用 netbeans,我创建了persistance.xmlglassfish-resources.xml作为休闲:

这就是我获得 EntityManagerFactory 和 EntityManager 的方式(在 netBeans 示例中使用)

编辑:

这是我的 glassfish 部署日志:

信息:[EL 配置]:2012-05-10 12:01:13.534--ServerSession(2017352940)--Connection(1901223982)--Thread(Thread[admin-thread-pool-4848(5),5,grizzly- kernel])--connecting(DatabaseLogin(platform=>DatabasePlatform user name=> "" connector=>JNDIConnector datasource name=>null ))

信息:[EL 配置]:2012-05-10 12:01:13.534--ServerSession(2017352940)--Connection(1462281761)--Thread(Thread[admin-thread-pool-4848(5),5,grizzly- kernel])--连接:jdbc:postgresql://localhost:5432/geowellex?loginTimeout=0&prepareThreshold=0 用户:geowellex 数据库:PostgreSQL 版本:9.1.3 驱动程序:PostgreSQL 本机驱动程序版本:PostgreSQL 8.3 JDBC3 with SSL (build 603 )

信息:[EL 配置]:2012-05-10 12:01:13.534--ServerSession(2017352940)--Connection(766700859)--Thread(Thread[admin-thread-pool-4848(5),5,grizzly- kernel])--connecting(DatabaseLogin(platform=>PostgreSQLPlatform用户名=>""连接器=>JNDIConnector数据源名=>null))

怎么了?

0 投票
1 回答
1011 浏览

java - 带有 persistence.xml 和属性映射的 JPA EntityManagerFactory

我可以将一些属性传递给EntityManagerFactory代码,同时仍保持persistence.xml作为主要配置源吗?使用createEntityManager带有 a 的重载Map似乎persistence.xml完全覆盖:

我想在 中配置 JPA persistence.xml,但传入自定义连接字符串。我正在使用 HSQL,我想用当前用户目录组成一个自定义 DB 文件路径,我必须通过代码(据我所知)获取。

如果我能保留就太好persistence.xml了,因为我不必编写自定义配置机制。

0 投票
1 回答
5347 浏览

maven - 我可以将值从 maven 注入到 persistence.xml 文件中吗?

我希望能够将我的数据库信息存储在 pom.xml 中(作为属性)并将必要的值注入到我的 persistence.xml 文件中。有什么办法可以在 Maven 中实现这一点?

另一种方法是如何将我的数据库连接信息保存在一个文件中,并能够将其提供给我的 pom.xml 和我的 persistence.xml

0 投票
1 回答
696 浏览

eclipse - 关于 Java EE 的 persistence.xml 的 property 属性的混淆

在 Java EE 中,当使用 JPA 持久化类时,我的 persistence.xml 文件如下所示:

到目前为止,我对 JPA 的唯一经验来自一个应该清除数据库中所有值的示例,然后有 servlet 的 post 方法将一些值硬编码到使用的值中。为此,该示例使用:

但是,我想在会话之间将数据保存在数据库中(就像任何好的动态站点一样),我不知道在 value 属性中放入什么来完成此操作。wikia 站点 (http://wiki.eclipse.org/Using_EclipseLink_JPA_Extensions_(ELUG)#Using_EclipseLink_JPA_Extensions_for_Schema_Generation) 说,它可以在这个值中放置三个不同的值:

  • none – EclipseLink 不生成 DDL;没有生成模式。
  • create-tables – EclipseLink 将尝试为每个表执行 CREATE TABLE SQL。如果表已经存在,EclipseLink 将遵循特定数据库和 JDBC 驱动程序组合的默认行为(当为已经存在的表发出 CREATE TABLE SQL 时)。在大多数情况下,会引发异常并且不会创建表。然后 EclipseLink 将继续执行下一条语句。(另请参见 eclipselink.create-ddl-jdbc-file-name。)
  • drop-and-create-tables – EclipseLink 将尝试删除所有表,然后创建所有表。如果遇到任何问题,EclipseLink 将遵循特定数据库和 JDBC 驱动程序组合的默认行为,然后继续执行下一条语句。(另请参见 eclipselink.create-ddl-jdbc-file-name 和 eclipselink.drop-ddl-jdbc-file-name。)

如果我使用 none 属性,它会抓取包含填充数据的现有表吗?还是没有人根本不做桌子,也无济于事?如果我使用创建表,我不会抛出异常吗?因为我尝试使用的表已经存在。

谢谢你的时间 :)