Sun Java System Application Server Platform Edition 9.0 Update 1 发行说明

Java Persistence API

本节列出了与 Java Persistence API 相关的已知问题和相应的解决方案。

查询编译器不会检查 Java Persistence 语言规范中定义的所有规则。

查询编译器不会检查 Java Persistence 语言的规范一章中定义的所有规则。特别是,它不检查以下各项:

无效的查询可能会进行编译,但可能会导致在运行时出现 SQLException。或者也可能出现以下情况:基础数据库比较宽松且支持 SQL,但在其他数据库上执行相同查询时会失败,并出现 SQLException

解决方法

手动验证上述条件。

在某些情况下,查询编译器会抛出误导性的错误消息,这是因为它在错误消息中提到了错误的令牌。(Glassfish ID 550)

有关更多信息,请参见 https://glassfish.dev.java.net/issues/show_bug.cgi?id=550

解决方法

手动验证查询中的哪些内容是错误的。

当前,无法在同一 EAR 文件中部署包含相同类的两个持久性单元。

解决方法

使用不同的类名称。

无法使用 persistence.xml 中的类元素明确地列出 MappedSuperclass。(Glassfish ID 558)

有关更多信息,请参见 https://glassfish.dev.java.net/issues/show_bug.cgi?id=558

解决方法

请勿明确地列出 MappedSuperclass

无法将空数据库值映射到图元。

解决方法

通过使用 Java 包装对象类型,映射到可为 null 的数据库列。