Jpa Hyperjaxb忽略binding.xjb中的自定义
我正在使用hyperjaxb3,它成功地解决了我的大部分问题 然而,我花了一上午的时间来解决一个我无法解决的问题。最有可能的是,这是我完全忽略的愚蠢的事情之一,但我无法找到它 问题是,在bindings.xjb中,我试图更改我的一个实体的生成表名,但无论我尝试什么,我设置的值都会被完全忽略 以下是相关文件的内容: XSD文件(只是一个片段) 我绝对肯定绑定文件正在被读取:我已经检查了maven日志,如果我为xpath表达式设置了一些奇怪的值,我会得到一个与它们相关的运行时异常 此外,它不仅忽略了表名定制。我尝试更改实体名称、模式,为简单属性设置不同的列长度。。。在所有这些测试中,输出始终与我上面复制的相同 我也检查了现有的样品,但看不出我做错了什么Jpa Hyperjaxb忽略binding.xjb中的自定义,jpa,jaxb,hyperjaxb,Jpa,Jaxb,Hyperjaxb,我正在使用hyperjaxb3,它成功地解决了我的大部分问题 然而,我花了一上午的时间来解决一个我无法解决的问题。最有可能的是,这是我完全忽略的愚蠢的事情之一,但我无法找到它 问题是,在bindings.xjb中,我试图更改我的一个实体的生成表名,但无论我尝试什么,我设置的值都会被完全忽略 以下是相关文件的内容: XSD文件(只是一个片段) 我绝对肯定绑定文件正在被读取:我已经检查了maven日志,如果我为xpath表达式设置了一些奇怪的值,我会得到一个与它们相关的运行时异常 此外,它不仅忽略了
关于好的,找到了问题,它与我的XSD文件的结构有关 只是使用
xs:element[@name='structure']
在我的绑定上,文件是不够的。看起来,表映射定制只有在与complexTypes关联时才起作用,所以只要我将其更改为
xs:element[@name='structure']/xs:complexType
一切正常:)
希望这对将来的人有所帮助。本文作者。这是一个正确的解决方案。我正要把它寄出去。
<dependencies>
<dependency>
<groupId>org.hibernate.javax.persistence</groupId>
<artifactId>hibernate-jpa-2.1-api</artifactId>
<version>1.0.0.Final</version>
</dependency>
<dependency>
<groupId>org.glassfish.jaxb</groupId>
<artifactId>jaxb-runtime</artifactId>
<version>2.2.11</version>
</dependency>
<dependency>
<groupId>org.jvnet.hyperjaxb3</groupId>
<artifactId>hyperjaxb3-ejb-runtime</artifactId>
<version>0.6.0</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.jvnet.hyperjaxb3</groupId>
<artifactId>maven-hyperjaxb3-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>generate</goal>
</goals>
</execution>
</executions>
<configuration>
<debug>false</debug>
<extension>true</extension>
<variant>ejb</variant>
<generateDirectory>src/main/java</generateDirectory>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<excludes>
<exclude>**/persistence.xml</exclude>
</excludes>
</configuration>
</plugin>
</plugins>
</build>
@XmlRootElement(name = "structure")
@Entity(name = "Structure")
@Table(name = "STRUCTURE_")
@Inheritance(strategy = InheritanceType.JOINED)
public class Structure
implements Serializable, Equals, HashCode
{
}
xs:element[@name='structure']
xs:element[@name='structure']/xs:complexType