在部署实体中具有延迟获取的应用程序时,我在 GlassFish 终端上收到以下警告,
警告:恢复延迟设置OneToOne
or ManyToOne
属性[zoneTable]
对于实体类[class entity.ZoneCharge]
因为编织未启用或未发生。
对于项目中列出的任何实体。
My persistence.xml
文件如下所示。
<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.0"
xmlns="http://java.sun.com/xml/ns/persistence"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/persistence"
http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd">
<persistence-unit name="Project-ejbPU" transaction-type="JTA">
<provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
<jta-data-source>jdbc/pool</jta-data-source>
<class>entity.ZoneTable</class>
<!--Other classes-->
<exclude-unlisted-classes>false</exclude-unlisted-classes>
<properties>
<property name="eclipselink.weaving" value="static"/>
<property name="eclipselink.target-server" value="SunAS9"/>
<property name="eclipselink.logging.parameters" value="true"/>
<property name="eclipselink.logging.level.sql" value="FINEST"/>
<property name="eclipselink.logging.level" value="FINEST" />
<property name="eclipselink.logging.level" value="WARNING"/>
<property name="eclipselink.logging.level.cache" value="FINEST"/>
</properties>
</persistence-unit>
</persistence>
The ZoneTable
类看起来像
@Entity
@Table(name = "zone_table", catalog = "projectdb", schema = "")
public class ZoneTable implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "zone_id")
private Long zoneId;
@Column(name = "zone_name")
private String zoneName;
@OneToMany(mappedBy = "zoneTable", fetch = FetchType.LAZY)
private Set<ZoneCharge> zoneChargeSet;
//Setters and getters.
}
这里,延迟获取即使对于远程 EJB 也适用,但我认为,由于上述警告,它被认为是急切的。
如何启用编织(或其他方式)以避免此警告?
当我如上所述输入此命令时here http://wiki.eclipse.org/EclipseLink/UserGuide/JPA/Advanced_JPA_Development/Performance/Weaving/Static_Weaving#Table_19-32,
java org.eclipse.persistence.tools.weaving.jpa.StaticWeave
在命令行上,我收到以下错误。
错误:无法找到或加载主类org.eclipse.persistence.tools.weaving.jpa.StaticWeave
有什么方法可以克服这个警告?