2011-08-11 7 views
2

Eclipse WTP内のTomcatでプロジェクトを実行していて、一部のJPAエンティティでデプロイしています。これらのエンティティでChangeTrackingを有効にしたいと思いますが、これには製織を有効にする必要があります。 Tomcatは動的織りを許さないので、静的織りでこれを行う必要があります。Eclipse WTPを使用したEclipseLinkの静的ウィービング

これは可能ですか? EclipseのDaliプラグインは、静的な製織のための機能を持っていないようです。

答えて

2

はい、非常に可能です。これはいつでも可能です。また、私はEclipse WTPでJetty(J2EE Preview)を使用しています。これは非常に速く、うまく機能します。プロジェクトのルートにこれを入れて、Antタスクとして実行

<?xml version="1.0"?> 
<project name="MyProject" default="weaving" basedir="."> 
    <property environment="env"/> 

    <path id="weavingclasspath"> 
     <fileset dir="${basedir}\\web\\WEB-INF\\lib"> 
     <include name="**/*.jar"/> 
     </fileset> 
     <fileset dir="${basedir}\\antlib"> 
     <include name="**/*.jar"/> 
     </fileset> 
     <pathelement location="classes"/> 
     <dirset dir="${basedir}\\build"> 
     <include name="**/classes"/> 
     </dirset> 
    </path> 


    <target name="define.task" description="New task definition for EclipseLink static weaving" > 
     <taskdef name="weave" classname="org.eclipse.persistence.tools.weaving.jpa.StaticWeaveAntTask"> 
     <classpath refid="weavingclasspath"/> 
     </taskdef> 
    </target> 

    <target name="weaving" description="perform weaving" depends="define.task"> 
     <weave loglevel="WARNING" source="${basedir}\\build\\classes\\" target="${basedir}\\build\\classes\\"> 
    <classpath refid="weavingclasspath"/> 
    </weave> 
    </target> 

</project> 

:アリは次のように扱うことができるweave.xmlファイルを作成します。エンティティのすべての.classファイルがウィービングされるので、完了したらプロジェクトを更新するようにしてください。私は実際にこのタスクをEclipseビルドプロセスにリンクしているので、自動です。あなたのプロジェクトのためにantスクリプト内のいくつかのファイルパスを修正する必要があるかもしれませんが、そのアイデアを得るべきです。私のantlibにはservlet.jarがあります(私はなぜ覚えていません)。私のWEB-INF/libには私のWebプロジェクトのjarファイルとeclipselinkがあります。

関連する問題