So aktivieren Sie das Weben in EclipseLink?

Erhalte ich die folgende Warnung auf dem GlassFish-terminal beim bereitstellen einer Anwendung, die lazy-fetching in Entitäten,

WARNUNG: das Zurücksetzen der faule Einstellung auf die OneToOne oder ManyToOne
Attribut [zoneTable] für die entity-Klasse [class entity.ZoneCharge]
da die Weberei wurde nicht aktiviert oder nicht auftreten.

für was auch immer Unternehmen werden im Projekt aufgelistet.

Meine persistence.xml - Datei sieht in etwa wie folgt.

<?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>

Den ZoneTable Klasse aussieht,

@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.
}

Hier lazy-fetching funktioniert auch mit remote-EJBs aber ich denke, es wird betrachtet, eifrig, aufgrund der oben genannten Warnung.

Aktivieren Weben (oder auf eine andere Weise), diese Warnung zu vermeiden?

Wenn ich diesen Befehl eingeben wie bereits erwähnt hier,

java org.eclipse.persistence.tools.weaving.jpa.StaticWeave

auf der Kommandozeile, bekomme ich die folgende Fehlermeldung.

Fehler: konnte nicht gefunden oder geladen wichtigsten classorg.eclipse.die Persistenz.tools.in der Weberei.jpa.StaticWeave

Was sind die Möglichkeiten, Sie zu überwinden, diese Warnung?

InformationsquelleAutor Tiny | 2013-09-12

Schreibe einen Kommentar