Sto utilizzando Netbeans 7.1.1 e un server Glassfish 3.1.2. Come fornitore JPA ho deciso di utilizzare eclipse-link 2.3.0 che viene fornito con Netbeans. Dal momento che voglio usare il pigro recupero e il mio progetto consiste di circa 45 classi di entità JPA che hanno molte relazioni tra loro, ho deciso di usare tessere statiche. Inoltre, le classi @Entity sono in un progetto Class Lib separato, mentre il persistence.xml risiede nel progetto EJB.Come applicare la funzione Antatica di tessitura statica con Eclipse-Link JPA in Netbeans?
ho già seguito le istruzioni qui: http://wiki.eclipse.org/EclipseLink/UserGuide/JPA/Advanced_JPA_Development/Performance/Weaving/Static_Weaving
ho messo la formica-task nel file accumulo impl.xml (qui di seguito). È corretto quando si usa Netbeans? Ecco il frammento dal accumulo impl.xml:
<target name="-post-jar" description="New task definition for EclipseLink static weaving">
<taskdef name="weave" classname="org.eclipse.persistence.tools.weaving.jpa.StaticWeaveAntTask"/>
</target>
<target name="weaving" description="perform weaving" depends="-post-jar">
<weave source="${dist.jar}\MyProject.jar"
target="${dist.jar}\MyProject_Weaved.jar"
persistenceinfo="${dist.jar}..\..\MyProjectEE\MyProject-ejb\build\classes\META-INF\persistence.xml"
loglevel="FINER">
<classpath>
<pathelement path="${dist.jar}\lib\eclipselink-2.3.0.jar"/>
<pathelement path="${dist.jar}\lib\javaee-api-6.0.jar"/>
<pathelement path="${dist.jar}\lib\jasypt-1.9.0.jar"/>
<pathelement path="${dist.jar}\lib\javax.persistence-2.0.jar"/>
<pathelement path="${dist.jar}\lib\org.eclipse.persistence.jpa.jpql_1.0.0.jar"/>
<pathelement path="${dist.jar}\lib\joda-time-2.1.jar"/>
<pathelement path="${dist.jar}\lib\jms.jar"/>
</classpath>
</weave>
</target>
Tutti i jar-file nei percorsi pathelement sono inclusi anche come biblioteche l'IDE Netbeans. Quando esce "Clean & Build", ora ottengo il seguente errore:
D:\workspace\MyProject\nbproject\build-impl.xml:703: taskdef class org.eclipse.persistence.tools.weaving.jpa.StaticWeaveAntTask cannot be found
using the classloader AntClassLoader[]
Cosa faccio male qui?
molte grazie peter! è anche possibile definire direttamente il classpath all'interno del tag. Inoltre, è necessario definire ulteriori target di formiche in build.xml anziché in build-impl.xml. Per eseguire i taks, assegnare un collegamento facendo clic con il tasto destro del mouse sull'attività definita nella vista file nell'IDE di Netbeans e selezionare "crea collegamento". –
salocinx