- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
这是我第一次尝试使用Hyperjaxb3。我有 2 XSD 的片段,如下所示
ContractFullInfo.xsd
<xsd:import namespace="http://homecredit.net/homerselect/common/v1" schemaLocation="Common.xsd"/>
<xsd:element name = "ContractFullInfoRequest">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="systemEvent" type="common:ContractSystemEventType"/>
<xsd:element name="data" type="ContractFullInfo"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:complexType name="ContractPerson">
<xsd:sequence>
<xsd:element name="cuid" type="xsd:long"/>
<xsd:element name="personRole" type="PersonRoleType"/>
</xsd:sequence>
</xsd:complexType>
Common.xsd
<xsd:complexType name="ContractPerson">
<xsd:sequence>
<xsd:element name="cuid" type="xsd:long"/>
<xsd:element name="personRole" type="PersonRoleType"/>
</xsd:sequence>
</xsd:complexType>
问题是它会生成两个 ContractPerson 类,如下所示:
<class>net.homecredit.homerselect.common.v1.ContractPerson</class> <==
<class>net.homecredit.homerselect.common.v1.MoneyDto</class>
<class>net.homecredit.homerselect.contract.v3.BankAccount</class>
<class>net.homecredit.homerselect.contract.v3.ClosedEndParameter</class>
<class>net.homecredit.homerselect.contract.v3.ContractBase</class>
<class>net.homecredit.homerselect.contract.v3.ContractCommodity</class>
<class>net.homecredit.homerselect.contract.v3.ContractDocument</class>
<class>net.homecredit.homerselect.contract.v3.ContractEvent</class>
<class>net.homecredit.homerselect.contract.v3.ContractFullInfo</class>
<class>net.homecredit.homerselect.contract.v3.ContractFullInfoRequest</class>
<class>net.homecredit.homerselect.contract.v3.ContractParameter</class>
<class>net.homecredit.homerselect.contract.v3.ContractPerson</class> <==
<class>net.homecredit.homerselect.contract.v3.ContractService</class>
<class>net.homecredit.homerselect.contract.v3.RefinancedContract</class>
<class>net.homecredit.homerselect.contract.v3.RevolvingParameter</class>
它在部署期间给我错误
Entity name must be unique in a persistence unit. Entity name [ContractPerson] is used for the entity classes [net.homecredit.homerselect.common.v1.ContractPerson] and [net.homecredit.homerselect.contract.v3.ContractPerson].
我的 Java 配置的一部分(我当前已评论)
@Bean
public DataSource dataSource() throws NamingException {
return (DataSource) new JndiTemplate().lookup(env.getProperty("spring.datasource.jndi-name"));
}
@Bean
public LocalContainerEntityManagerFactoryBean entityManagerFactory() throws NamingException {
LocalContainerEntityManagerFactoryBean em
= new LocalContainerEntityManagerFactoryBean();
em.setPackagesToScan(new String[]{"net.homecredit.homerselect.contract.v3"});
em.setPersistenceUnitName("net.homecredit.homerselect.common.v1:net.homecredit.homerselect.contract.v3");
em.setJtaDataSource(dataSource());
Properties properties = new Properties();
properties.setProperty("hibernate.dialect", env.getProperty("spring.jpa.properties.hibernate.dialect"));
properties.setProperty("hibernate.hbm2ddl.auto", env.getProperty("spring.jpa.hibernate.ddl-auto"));
em.setJpaProperties(properties);
return em;
}
我的问题:
最佳答案
您的类不同,因为您的架构中有两种不同的复杂类型。它们还可能引用不同的 PersonRoleType
,但如果没有看到完整的架构,就很难说。
虽然将这些复杂类型映射到同一个 Java 类并非不可能,但我不会这样做。这些在您的模式中是不同的类型,您也应该在 Java 中保持它们不同。
由于您遇到具有相同本地名称的类的问题,最简单的解决方案是重命名其中一个。使用如下绑定(bind):
<jaxb:bindings
version="1.0"
xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:hj="http://hyperjaxb3.jvnet.org/ejb/schemas/customizations"
xmlns:orm="http://java.sun.com/xml/ns/persistence/orm"
xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc"
jaxb:extensionBindingPrefixes="xjc hj orm">
<jaxb:bindings schemaLocation="Common.xsd" node="/xs:schema">
<jaxb:bindings node="xs:complexType[@name='ContractPerson']">
<jaxb:class name="CommonContractPerson"/>
</jaxb:bindings>
</jaxb:bindings>
</jaxb:bindings>
关于java - Hyperjaxb 3导入XSD和persistence.xml,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53723733/
在 Spring-MVC 应用程序中,我尝试使用 validator 。我将注释 @NotEmpty 和 @Email 放在我的实体之一上,当我尝试验证它时,出现此错误: java.lang.NoSu
网络是我硕士学位的最后一门类(class)。我确实有一个关于如何计算非持久、持久和持久流水线的 http 往返时间的问题。 在花了无数小时阅读有关该问题、从其他大学下载笔记甚至搜索 youtube 视
让我们考虑典型的 订购 和 订单商品 例子。假设 订单商品 是 的一部分订购 聚合,只能通过订单添加。所以,添加一个新的 订单商品 到 订购,我们必须通过 Repository 加载整个 Aggreg
// lookup existing user & set a currently null child entity (ContactInfo) user.setContactInfo(contac
我正在尝试关注 this tutorial .我想我不是从使用可下载项目开始,而是从我之前做过的一个简单的“spring MVC - Maven - eclipse”项目开始。这个项目运行良好。 因此
我正在使用打开 Kubernetes 选项的 docker 应用程序运行 mac OSX Catalina。我使用以下 yaml 和命令创建了一个 PersistentVolume。 apiVersi
假设我有一个类 Employee和一个类Company其中包含 Employee 的 LinkedList对象,我想编写一个添加 Employee 的方法到特定的数据库Company 。我创建了一个新
我实际上正在将我们应用程序的所有组件更新到最新版本。因此,除其他外,我将从 eclipselink-2.5.0 升级到 eclipselink-2.7.3,并从 Tomcat 7 升级到 TomEE。
我试图遵循《用GlassFish 3开始Java EE 6平台》一书第2章中的示例。我正在Windows中使用cmd中的EclipseLink,Derby和Maven。我真的不知道这一点,将不胜感激!
我只是看看ClassGuard (虽然我知道一些 objection )。 但是我得到了 javax.persistence.PersistenceException: [PersistenceUni
我的印象是,如果我们使用持久字段,就不需要 getter 方法,因为实体管理器直接引用实例变量。但是,当我从实体中删除 getter 和 setter 方法以具有持久字段时,未从数据库中检索到相应实例
我正在 Eclipse 中使用 Servlet、JPA、EJB 和 JBoss 进行项目。正如您在我的主题标题中看到的,我的 persistence.xml 文件有错误,但我不知道是哪个:
我已经尝试了一个星期或更长时间来让我的状态在 react native Android 应用程序中持续存在,但在重新水化后状态始终具有初始值。如果我使用 Redux devtools 检查 ASync
什么时候应该坚持,什么时候应该补充水分?命名约定非常困惑,因为作者几乎没有提到它们在 redux-persist 的上下文中的含义。 . 最佳答案 在不真正了解图书馆的情况下: persist = 将
我正在尝试按照老师文档中提供的信息设置一个简单的 jpa 2.0 项目。我已经处理这个问题好几个小时了,但无论我做什么,当我尝试创建 EntityManagerFactory 时,我总是遇到这个异常:
我有一个 Maven 项目,我将其转换为现在可与 Maven 一起使用的 JPA 项目。我的persistence.xml如下: My Persistence Unit
我正在使用 Netbeans 6.8 并构建简单的 Maven Web 应用程序项目。 为持久实体创建实体和主文件 [也创建持久单元] 并使用 EclipsLink。 但是当我运行主文件时出现这个错误
我是 Kubernetes 的新手,我很难理解 Kubernetes 中持久存储背后的整个想法。 这就足够了吗,或者我必须创建持久卷,如果我只部署这两个对象而不创建 PV 会发生什么情况? 存储应该在
我正在尝试使用 JPA 为我目前参与的 Java-EE 项目设置持久性,并且我遇到了许多配置问题。目前,我已经在 persistence.xml 中定义了一个 RESOURCE_LOCAL 持久性单元
Akka 持久性查询通过提供一个通用的基于异步流的查询接口(interface)来补充 Persistence,各种日志插件可以实现该接口(interface)以公开它们的查询功能。 这是来自 akk
我是一名优秀的程序员,十分优秀!