]> git.mxchange.org Git - jjobs-war.git/blob - nbproject/build-impl.xml
Continued with separation from addressbook project:
[jjobs-war.git] / nbproject / build-impl.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3         *** GENERATED FROM project.xml - DO NOT EDIT  ***
4         ***         EDIT ../build.xml INSTEAD         ***
5
6         For the purpose of easier reading the script
7         is divided into following sections:
8         - initialization
9         - compilation
10         - dist
11         - execution
12         - debugging
13         - javadoc
14         - test compilation
15         - test execution
16         - test debugging
17         - cleanup
18
19         -->
20 <project xmlns:webproject1="http://www.netbeans.org/ns/web-project/1" xmlns:webproject2="http://www.netbeans.org/ns/web-project/2" xmlns:webproject3="http://www.netbeans.org/ns/web-project/3" basedir=".." default="default" name="jjobs-war-impl">
21     <import file="ant-deploy.xml"/>
22     <fail message="Please build using Ant 1.7.1 or higher.">
23         <condition>
24             <not>
25                 <antversion atleast="1.7.1"/>
26             </not>
27         </condition>
28     </fail>
29     <target depends="dist,javadoc" description="Build whole project." name="default"/>
30     <!--
31                 INITIALIZATION SECTION
32             -->
33     <target name="-pre-init">
34         <!-- Empty placeholder for easier customization. -->
35         <!-- You can override this target in the ../build.xml file. -->
36     </target>
37     <target depends="-pre-init" name="-init-private">
38         <property file="nbproject/private/private.properties"/>
39     </target>
40     <target name="-pre-init-libraries">
41         <property location="./lib/nblibraries.properties" name="libraries.path"/>
42         <dirname file="${libraries.path}" property="libraries.dir.nativedirsep"/>
43         <pathconvert dirsep="/" property="libraries.dir">
44             <path path="${libraries.dir.nativedirsep}"/>
45         </pathconvert>
46         <basename file="${libraries.path}" property="libraries.basename" suffix=".properties"/>
47         <available file="${libraries.dir}/${libraries.basename}-private.properties" property="private.properties.available"/>
48     </target>
49     <target depends="-pre-init-libraries" if="private.properties.available" name="-init-private-libraries">
50         <loadproperties encoding="ISO-8859-1" srcfile="${libraries.dir}/${libraries.basename}-private.properties">
51             <filterchain>
52                 <replacestring from="$${base}" to="${libraries.dir}"/>
53                 <escapeunicode/>
54             </filterchain>
55         </loadproperties>
56     </target>
57     <target depends="-pre-init,-init-private,-init-private-libraries" name="-init-libraries">
58         <loadproperties encoding="ISO-8859-1" srcfile="${libraries.path}">
59             <filterchain>
60                 <replacestring from="$${base}" to="${libraries.dir}"/>
61                 <escapeunicode/>
62             </filterchain>
63         </loadproperties>
64     </target>
65     <target depends="-pre-init,-init-private,-init-libraries" name="-init-user">
66         <property file="${user.properties.file}"/>
67         <!-- The two properties below are usually overridden -->
68         <!-- by the active platform. Just a fallback. -->
69         <property name="default.javac.source" value="1.4"/>
70         <property name="default.javac.target" value="1.4"/>
71     </target>
72     <target depends="-pre-init,-init-private,-init-libraries,-init-user" name="-init-project">
73         <property file="nbproject/project.properties"/>
74     </target>
75     <target depends="-pre-init,-init-private,-init-user,-init-project,-init-macrodef-property" if="dist.ear.dir" name="-do-ear-init"/>
76     <target depends="-pre-init,-init-private,-init-libraries,-init-user,-init-project,-init-macrodef-property" name="-do-init">
77         <condition property="have.tests">
78             <or>
79                 <available file="${test.src.dir}"/>
80             </or>
81         </condition>
82         <condition property="have.sources">
83             <or>
84                 <available file="${src.dir}"/>
85             </or>
86         </condition>
87         <condition property="netbeans.home+have.tests">
88             <and>
89                 <isset property="netbeans.home"/>
90                 <isset property="have.tests"/>
91             </and>
92         </condition>
93         <condition property="no.javadoc.preview">
94             <isfalse value="${javadoc.preview}"/>
95         </condition>
96         <property name="javac.compilerargs" value=""/>
97         <condition property="no.deps">
98             <and>
99                 <istrue value="${no.dependencies}"/>
100             </and>
101         </condition>
102         <condition property="no.dist.ear.dir">
103             <not>
104                 <isset property="dist.ear.dir"/>
105             </not>
106         </condition>
107         <property name="build.web.excludes" value="${build.classes.excludes}"/>
108         <condition property="do.compile.jsps">
109             <istrue value="${compile.jsps}"/>
110         </condition>
111         <condition property="do.debug.server">
112             <or>
113                 <not>
114                     <isset property="debug.server"/>
115                 </not>
116                 <istrue value="${debug.server}"/>
117                 <and>
118                     <not>
119                         <istrue value="${debug.server}"/>
120                     </not>
121                     <not>
122                         <istrue value="${debug.client}"/>
123                     </not>
124                 </and>
125             </or>
126         </condition>
127         <condition property="do.debug.client">
128             <istrue value="${debug.client}"/>
129         </condition>
130         <condition property="do.display.browser">
131             <istrue value="${display.browser}"/>
132         </condition>
133         <condition property="do.display.browser.debug.old">
134             <and>
135                 <isset property="do.display.browser"/>
136                 <not>
137                     <isset property="do.debug.client"/>
138                 </not>
139                 <not>
140                     <isset property="browser.context"/>
141                 </not>
142             </and>
143         </condition>
144         <condition property="do.display.browser.debug">
145             <and>
146                 <isset property="do.display.browser"/>
147                 <not>
148                     <isset property="do.debug.client"/>
149                 </not>
150                 <isset property="browser.context"/>
151             </and>
152         </condition>
153         <available file="${conf.dir}/MANIFEST.MF" property="has.custom.manifest"/>
154         <available file="${persistence.xml.dir}/persistence.xml" property="has.persistence.xml"/>
155         <condition property="do.war.package.with.custom.manifest">
156             <isset property="has.custom.manifest"/>
157         </condition>
158         <condition property="do.war.package.without.custom.manifest">
159             <not>
160                 <isset property="has.custom.manifest"/>
161             </not>
162         </condition>
163         <condition property="do.tmp.war.package.with.custom.manifest">
164             <and>
165                 <isset property="has.custom.manifest"/>
166                 <or>
167                     <isfalse value="${directory.deployment.supported}"/>
168                     <isset property="dist.ear.dir"/>
169                 </or>
170             </and>
171         </condition>
172         <condition property="do.tmp.war.package.without.custom.manifest">
173             <and>
174                 <not>
175                     <isset property="has.custom.manifest"/>
176                 </not>
177                 <or>
178                     <isfalse value="${directory.deployment.supported}"/>
179                     <isset property="dist.ear.dir"/>
180                 </or>
181             </and>
182         </condition>
183         <condition property="do.tmp.war.package">
184             <or>
185                 <isfalse value="${directory.deployment.supported}"/>
186                 <isset property="dist.ear.dir"/>
187             </or>
188         </condition>
189         <property name="build.meta.inf.dir" value="${build.web.dir}/META-INF"/>
190         <condition else="" property="application.args.param" value="${application.args}">
191             <and>
192                 <isset property="application.args"/>
193                 <not>
194                     <equals arg1="${application.args}" arg2="" trim="true"/>
195                 </not>
196             </and>
197         </condition>
198         <property name="source.encoding" value="${file.encoding}"/>
199         <condition property="javadoc.encoding.used" value="${javadoc.encoding}">
200             <and>
201                 <isset property="javadoc.encoding"/>
202                 <not>
203                     <equals arg1="${javadoc.encoding}" arg2=""/>
204                 </not>
205             </and>
206         </condition>
207         <property name="javadoc.encoding.used" value="${source.encoding}"/>
208         <property name="includes" value="**"/>
209         <property name="excludes" value=""/>
210         <property name="runmain.jvmargs" value=""/>
211         <path id="endorsed.classpath.path" path="${endorsed.classpath}"/>
212         <condition else="" property="endorsed.classpath.cmd.line.arg" value="-Xbootclasspath/p:'${toString:endorsed.classpath.path}'">
213             <and>
214                 <isset property="endorsed.classpath"/>
215                 <length length="0" string="${endorsed.classpath}" when="greater"/>
216             </and>
217         </condition>
218         <condition else="false" property="jdkBug6558476">
219             <and>
220                 <matches pattern="1\.[56]" string="${java.specification.version}"/>
221                 <not>
222                     <os family="unix"/>
223                 </not>
224             </and>
225         </condition>
226         <property name="javac.fork" value="${jdkBug6558476}"/>
227         <condition property="junit.available">
228             <or>
229                 <available classname="org.junit.Test" classpath="${run.test.classpath}"/>
230                 <available classname="junit.framework.Test" classpath="${run.test.classpath}"/>
231             </or>
232         </condition>
233         <condition property="testng.available">
234             <available classname="org.testng.annotations.Test" classpath="${run.test.classpath}"/>
235         </condition>
236         <condition property="junit+testng.available">
237             <and>
238                 <istrue value="${junit.available}"/>
239                 <istrue value="${testng.available}"/>
240             </and>
241         </condition>
242         <condition else="testng" property="testng.mode" value="mixed">
243             <istrue value="${junit+testng.available}"/>
244         </condition>
245         <condition else="" property="testng.debug.mode" value="-mixed">
246             <istrue value="${junit+testng.available}"/>
247         </condition>
248     </target>
249     <target depends="init" name="-init-cos" unless="deploy.on.save">
250         <condition property="deploy.on.save" value="true">
251             <or>
252                 <istrue value="${j2ee.deploy.on.save}"/>
253                 <istrue value="${j2ee.compile.on.save}"/>
254             </or>
255         </condition>
256     </target>
257     <target name="-post-init">
258         <!-- Empty placeholder for easier customization. -->
259         <!-- You can override this target in the ../build.xml file. -->
260     </target>
261     <target depends="-pre-init,-init-private,-init-libraries,-init-user,-init-project,-do-init" name="-init-check">
262         <fail unless="src.dir">Must set src.dir</fail>
263         <fail unless="test.src.dir">Must set test.src.dir</fail>
264         <fail unless="build.dir">Must set build.dir</fail>
265         <fail unless="build.web.dir">Must set build.web.dir</fail>
266         <fail unless="build.generated.dir">Must set build.generated.dir</fail>
267         <fail unless="dist.dir">Must set dist.dir</fail>
268         <fail unless="build.classes.dir">Must set build.classes.dir</fail>
269         <fail unless="dist.javadoc.dir">Must set dist.javadoc.dir</fail>
270         <fail unless="build.test.classes.dir">Must set build.test.classes.dir</fail>
271         <fail unless="build.test.results.dir">Must set build.test.results.dir</fail>
272         <fail unless="build.classes.excludes">Must set build.classes.excludes</fail>
273         <fail unless="dist.war">Must set dist.war</fail>
274         <condition property="missing.j2ee.server.home">
275             <and>
276                 <matches pattern="j2ee.server.home" string="${j2ee.platform.classpath}"/>
277                 <not>
278                     <isset property="j2ee.server.home"/>
279                 </not>
280             </and>
281         </condition>
282         <fail if="missing.j2ee.server.home">
283 The Java EE server classpath is not correctly set up - server home directory is missing.
284 Either open the project in the IDE and assign the server or setup the server classpath manually.
285 For example like this:
286    ant -Dj2ee.server.home=&lt;app_server_installation_directory&gt;
287                 </fail>
288         <fail unless="j2ee.platform.classpath">
289 The Java EE server classpath is not correctly set up. Your active server type is ${j2ee.server.type}.
290 Either open the project in the IDE and assign the server or setup the server classpath manually.
291 For example like this:
292    ant -Duser.properties.file=&lt;path_to_property_file&gt; (where you put the property "j2ee.platform.classpath" in a .properties file)
293 or ant -Dj2ee.platform.classpath=&lt;server_classpath&gt; (where no properties file is used)
294                 </fail>
295     </target>
296     <target name="-init-macrodef-property">
297         <macrodef name="property" uri="http://www.netbeans.org/ns/web-project/1">
298             <attribute name="name"/>
299             <attribute name="value"/>
300             <sequential>
301                 <property name="@{name}" value="${@{value}}"/>
302             </sequential>
303         </macrodef>
304     </target>
305     <target depends="-init-ap-cmdline-properties" if="ap.supported.internal" name="-init-macrodef-javac-with-processors">
306         <macrodef name="javac" uri="http://www.netbeans.org/ns/web-project/2">
307             <attribute default="${src.dir}" name="srcdir"/>
308             <attribute default="${build.classes.dir}" name="destdir"/>
309             <attribute default="${javac.classpath}:${j2ee.platform.classpath}" name="classpath"/>
310             <attribute default="${javac.processorpath}" name="processorpath"/>
311             <attribute default="${build.generated.sources.dir}/ap-source-output" name="apgeneratedsrcdir"/>
312             <attribute default="${includes}" name="includes"/>
313             <attribute default="${excludes}" name="excludes"/>
314             <attribute default="${javac.debug}" name="debug"/>
315             <attribute default="${empty.dir}" name="gensrcdir"/>
316             <element name="customize" optional="true"/>
317             <sequential>
318                 <property location="${build.dir}/empty" name="empty.dir"/>
319                 <mkdir dir="${empty.dir}"/>
320                 <mkdir dir="@{apgeneratedsrcdir}"/>
321                 <javac debug="@{debug}" deprecation="${javac.deprecation}" destdir="@{destdir}" encoding="${source.encoding}" excludes="@{excludes}" fork="${javac.fork}" includeantruntime="false" includes="@{includes}" source="${javac.source}" srcdir="@{srcdir}" target="${javac.target}">
322                     <src>
323                         <dirset dir="@{gensrcdir}" erroronmissingdir="false">
324                             <include name="*"/>
325                         </dirset>
326                     </src>
327                     <classpath>
328                         <path path="@{classpath}"/>
329                     </classpath>
330                     <compilerarg line="${endorsed.classpath.cmd.line.arg}"/>
331                     <compilerarg line="${javac.compilerargs}"/>
332                     <compilerarg value="-processorpath"/>
333                     <compilerarg path="@{processorpath}:${empty.dir}"/>
334                     <compilerarg line="${ap.processors.internal}"/>
335                     <compilerarg value="-s"/>
336                     <compilerarg path="@{apgeneratedsrcdir}"/>
337                     <compilerarg line="${ap.proc.none.internal}"/>
338                     <customize/>
339                 </javac>
340             </sequential>
341         </macrodef>
342     </target>
343     <target depends="-init-ap-cmdline-properties" name="-init-macrodef-javac-without-processors" unless="ap.supported.internal">
344         <macrodef name="javac" uri="http://www.netbeans.org/ns/web-project/2">
345             <attribute default="${src.dir}" name="srcdir"/>
346             <attribute default="${build.classes.dir}" name="destdir"/>
347             <attribute default="${javac.classpath}:${j2ee.platform.classpath}" name="classpath"/>
348             <attribute default="${javac.processorpath}" name="processorpath"/>
349             <attribute default="${build.generated.sources.dir}/ap-source-output" name="apgeneratedsrcdir"/>
350             <attribute default="${includes}" name="includes"/>
351             <attribute default="${excludes}" name="excludes"/>
352             <attribute default="${javac.debug}" name="debug"/>
353             <attribute default="${empty.dir}" name="gensrcdir"/>
354             <element name="customize" optional="true"/>
355             <sequential>
356                 <property location="${build.dir}/empty" name="empty.dir"/>
357                 <mkdir dir="${empty.dir}"/>
358                 <javac debug="@{debug}" deprecation="${javac.deprecation}" destdir="@{destdir}" encoding="${source.encoding}" excludes="@{excludes}" includeantruntime="false" includes="@{includes}" source="${javac.source}" srcdir="@{srcdir}" target="${javac.target}">
359                     <src>
360                         <dirset dir="@{gensrcdir}" erroronmissingdir="false">
361                             <include name="*"/>
362                         </dirset>
363                     </src>
364                     <classpath>
365                         <path path="@{classpath}"/>
366                     </classpath>
367                     <compilerarg line="${endorsed.classpath.cmd.line.arg}"/>
368                     <compilerarg line="${javac.compilerargs}"/>
369                     <customize/>
370                 </javac>
371             </sequential>
372         </macrodef>
373     </target>
374     <target depends="-init-macrodef-javac-with-processors,-init-macrodef-javac-without-processors" name="-init-macrodef-javac">
375         <macrodef name="depend" uri="http://www.netbeans.org/ns/web-project/2">
376             <attribute default="${src.dir}" name="srcdir"/>
377             <attribute default="${build.classes.dir}" name="destdir"/>
378             <attribute default="${javac.classpath}:${j2ee.platform.classpath}" name="classpath"/>
379             <sequential>
380                 <depend cache="${build.dir}/depcache" destdir="@{destdir}" excludes="${excludes}" includes="${includes}" srcdir="@{srcdir}">
381                     <classpath>
382                         <path path="@{classpath}"/>
383                     </classpath>
384                 </depend>
385             </sequential>
386         </macrodef>
387         <macrodef name="force-recompile" uri="http://www.netbeans.org/ns/web-project/2">
388             <attribute default="${build.classes.dir}" name="destdir"/>
389             <sequential>
390                 <fail unless="javac.includes">Must set javac.includes</fail>
391                 <pathconvert pathsep="${line.separator}" property="javac.includes.binary">
392                     <path>
393                         <filelist dir="@{destdir}" files="${javac.includes}"/>
394                     </path>
395                     <globmapper from="*.java" to="*.class"/>
396                 </pathconvert>
397                 <tempfile deleteonexit="true" property="javac.includesfile.binary"/>
398                 <echo file="${javac.includesfile.binary}" message="${javac.includes.binary}"/>
399                 <delete>
400                     <files includesfile="${javac.includesfile.binary}"/>
401                 </delete>
402                 <delete file="${javac.includesfile.binary}"/>
403             </sequential>
404         </macrodef>
405     </target>
406     <target if="${junit.available}" name="-init-macrodef-junit-init">
407         <condition else="false" property="nb.junit.batch" value="true">
408             <and>
409                 <istrue value="${junit.available}"/>
410                 <not>
411                     <isset property="test.method"/>
412                 </not>
413             </and>
414         </condition>
415         <condition else="false" property="nb.junit.single" value="true">
416             <and>
417                 <istrue value="${junit.available}"/>
418                 <isset property="test.method"/>
419             </and>
420         </condition>
421     </target>
422     <target name="-init-test-properties">
423         <property name="test.binaryincludes" value="&lt;nothing&gt;"/>
424         <property name="test.binarytestincludes" value=""/>
425         <property name="test.binaryexcludes" value=""/>
426     </target>
427     <target if="${nb.junit.single}" name="-init-macrodef-junit-single" unless="${nb.junit.batch}">
428         <macrodef name="junit" uri="http://www.netbeans.org/ns/web-project/2">
429             <attribute default="${includes}" name="includes"/>
430             <attribute default="${excludes}" name="excludes"/>
431             <attribute default="**" name="testincludes"/>
432             <attribute default="" name="testmethods"/>
433             <element name="customize" optional="true"/>
434             <sequential>
435                 <junit dir="${basedir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" showoutput="true" tempdir="${java.io.tmpdir}">
436                     <test methods="@{testmethods}" name="@{testincludes}" todir="${build.test.results.dir}"/>
437                     <syspropertyset>
438                         <propertyref prefix="test-sys-prop."/>
439                         <mapper from="test-sys-prop.*" to="*" type="glob"/>
440                     </syspropertyset>
441                     <formatter type="brief" usefile="false"/>
442                     <formatter type="xml"/>
443                     <jvmarg value="-ea"/>
444                     <customize/>
445                 </junit>
446             </sequential>
447         </macrodef>
448     </target>
449     <target depends="-init-test-properties" if="${nb.junit.batch}" name="-init-macrodef-junit-batch" unless="${nb.junit.single}">
450         <macrodef name="junit" uri="http://www.netbeans.org/ns/web-project/2">
451             <attribute default="${includes}" name="includes"/>
452             <attribute default="${excludes}" name="excludes"/>
453             <attribute default="**" name="testincludes"/>
454             <attribute default="" name="testmethods"/>
455             <element name="customize" optional="true"/>
456             <sequential>
457                 <property name="run.jvmargs.ide" value=""/>
458                 <junit dir="${basedir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" showoutput="true" tempdir="${build.dir}">
459                     <batchtest todir="${build.test.results.dir}">
460                         <fileset dir="${test.src.dir}" excludes="@{excludes},${excludes}" includes="@{includes}">
461                             <filename name="@{testincludes}"/>
462                         </fileset>
463                         <fileset dir="${build.test.classes.dir}" excludes="@{excludes},${excludes},${test.binaryexcludes}" includes="${test.binaryincludes}">
464                             <filename name="${test.binarytestincludes}"/>
465                         </fileset>
466                     </batchtest>
467                     <syspropertyset>
468                         <propertyref prefix="test-sys-prop."/>
469                         <mapper from="test-sys-prop.*" to="*" type="glob"/>
470                     </syspropertyset>
471                     <formatter type="brief" usefile="false"/>
472                     <formatter type="xml"/>
473                     <jvmarg value="-ea"/>
474                     <jvmarg line="${run.jvmargs.ide}"/>
475                     <customize/>
476                 </junit>
477             </sequential>
478         </macrodef>
479     </target>
480     <target depends="-init-macrodef-junit-init,-init-macrodef-junit-single, -init-macrodef-junit-batch" if="${junit.available}" name="-init-macrodef-junit"/>
481     <target if="${testng.available}" name="-init-macrodef-testng">
482         <macrodef name="testng" uri="http://www.netbeans.org/ns/web-project/2">
483             <attribute default="${includes}" name="includes"/>
484             <attribute default="${excludes}" name="excludes"/>
485             <attribute default="**" name="testincludes"/>
486             <attribute default="" name="testmethods"/>
487             <element name="customize" optional="true"/>
488             <sequential>
489                 <condition else="" property="testng.methods.arg" value="@{testincludes}.@{testmethods}">
490                     <isset property="test.method"/>
491                 </condition>
492                 <union id="test.set">
493                     <fileset dir="${test.src.dir}" excludes="@{excludes},**/*.xml,${excludes}" includes="@{includes}">
494                         <filename name="@{testincludes}"/>
495                     </fileset>
496                 </union>
497                 <taskdef classname="org.testng.TestNGAntTask" classpath="${run.test.classpath}" name="testng"/>
498                 <testng classfilesetref="test.set" failureProperty="tests.failed" listeners="org.testng.reporters.VerboseReporter" methods="${testng.methods.arg}" mode="${testng.mode}" outputdir="${build.test.results.dir}" suitename="jjobs-war" testname="TestNG tests" workingDir="${basedir}">
499                     <xmlfileset dir="${build.test.classes.dir}" includes="@{testincludes}"/>
500                     <propertyset>
501                         <propertyref prefix="test-sys-prop."/>
502                         <mapper from="test-sys-prop.*" to="*" type="glob"/>
503                     </propertyset>
504                     <customize/>
505                 </testng>
506             </sequential>
507         </macrodef>
508     </target>
509     <target name="-init-macrodef-test-impl">
510         <macrodef name="test-impl" uri="http://www.netbeans.org/ns/web-project/2">
511             <attribute default="${includes}" name="includes"/>
512             <attribute default="${excludes}" name="excludes"/>
513             <attribute default="**" name="testincludes"/>
514             <attribute default="" name="testmethods"/>
515             <element implicit="true" name="customize" optional="true"/>
516             <sequential>
517                 <echo>No tests executed.</echo>
518             </sequential>
519         </macrodef>
520     </target>
521     <target depends="-init-macrodef-junit" if="${junit.available}" name="-init-macrodef-junit-impl">
522         <macrodef name="test-impl" uri="http://www.netbeans.org/ns/web-project/2">
523             <attribute default="${includes}" name="includes"/>
524             <attribute default="${excludes}" name="excludes"/>
525             <attribute default="**" name="testincludes"/>
526             <attribute default="" name="testmethods"/>
527             <element implicit="true" name="customize" optional="true"/>
528             <sequential>
529                 <webproject2:junit excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}">
530                     <customize/>
531                 </webproject2:junit>
532             </sequential>
533         </macrodef>
534     </target>
535     <target depends="-init-macrodef-testng" if="${testng.available}" name="-init-macrodef-testng-impl">
536         <macrodef name="test-impl" uri="http://www.netbeans.org/ns/web-project/2">
537             <attribute default="${includes}" name="includes"/>
538             <attribute default="${excludes}" name="excludes"/>
539             <attribute default="**" name="testincludes"/>
540             <attribute default="" name="testmethods"/>
541             <element implicit="true" name="customize" optional="true"/>
542             <sequential>
543                 <webproject2:testng excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}">
544                     <customize/>
545                 </webproject2:testng>
546             </sequential>
547         </macrodef>
548     </target>
549     <target depends="-init-macrodef-test-impl,-init-macrodef-junit-impl,-init-macrodef-testng-impl" name="-init-macrodef-test">
550         <macrodef name="test" uri="http://www.netbeans.org/ns/web-project/2">
551             <attribute default="${includes}" name="includes"/>
552             <attribute default="${excludes}" name="excludes"/>
553             <attribute default="**" name="testincludes"/>
554             <attribute default="" name="testmethods"/>
555             <sequential>
556                 <webproject2:test-impl excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}">
557                     <customize>
558                         <classpath>
559                             <path path="${run.test.classpath}:${j2ee.platform.classpath}:${j2ee.platform.embeddableejb.classpath}"/>
560                         </classpath>
561                         <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
562                         <jvmarg line="${runmain.jvmargs}"/>
563                     </customize>
564                 </webproject2:test-impl>
565             </sequential>
566         </macrodef>
567     </target>
568     <target if="${junit.available}" name="-init-macrodef-junit-debug" unless="${nb.junit.batch}">
569         <macrodef name="junit-debug" uri="http://www.netbeans.org/ns/web-project/2">
570             <attribute default="${includes}" name="includes"/>
571             <attribute default="${excludes}" name="excludes"/>
572             <attribute default="**" name="testincludes"/>
573             <attribute default="" name="testmethods"/>
574             <element name="customize" optional="true"/>
575             <sequential>
576                 <junit dir="${basedir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" showoutput="true" tempdir="${java.io.tmpdir}">
577                     <test methods="@{testmethods}" name="@{testincludes}" todir="${build.test.results.dir}"/>
578                     <syspropertyset>
579                         <propertyref prefix="test-sys-prop."/>
580                         <mapper from="test-sys-prop.*" to="*" type="glob"/>
581                     </syspropertyset>
582                     <formatter type="brief" usefile="false"/>
583                     <formatter type="xml"/>
584                     <jvmarg value="-ea"/>
585                     <jvmarg line="${debug-args-line}"/>
586                     <jvmarg value="-Xrunjdwp:transport=${debug-transport},address=${jpda.address}"/>
587                     <customize/>
588                 </junit>
589             </sequential>
590         </macrodef>
591     </target>
592     <target depends="-init-test-properties" if="${nb.junit.batch}" name="-init-macrodef-junit-debug-batch">
593         <macrodef name="junit-debug" uri="http://www.netbeans.org/ns/web-project/2">
594             <attribute default="${includes}" name="includes"/>
595             <attribute default="${excludes}" name="excludes"/>
596             <attribute default="**" name="testincludes"/>
597             <attribute default="" name="testmethods"/>
598             <element name="customize" optional="true"/>
599             <sequential>
600                 <property name="run.jvmargs.ide" value=""/>
601                 <junit dir="${basedir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" showoutput="true" tempdir="${build.dir}">
602                     <batchtest todir="${build.test.results.dir}">
603                         <fileset dir="${test.src.dir}" excludes="@{excludes},${excludes}" includes="@{includes}">
604                             <filename name="@{testincludes}"/>
605                         </fileset>
606                         <fileset dir="${build.test.classes.dir}" excludes="@{excludes},${excludes},${test.binaryexcludes}" includes="${test.binaryincludes}">
607                             <filename name="${test.binarytestincludes}"/>
608                         </fileset>
609                     </batchtest>
610                     <syspropertyset>
611                         <propertyref prefix="test-sys-prop."/>
612                         <mapper from="test-sys-prop.*" to="*" type="glob"/>
613                     </syspropertyset>
614                     <formatter type="brief" usefile="false"/>
615                     <formatter type="xml"/>
616                     <jvmarg value="-ea"/>
617                     <jvmarg line="${run.jvmargs.ide}"/>
618                     <jvmarg line="${debug-args-line}"/>
619                     <jvmarg value="-Xrunjdwp:transport=${debug-transport},address=${jpda.address}"/>
620                     <customize/>
621                 </junit>
622             </sequential>
623         </macrodef>
624     </target>
625     <target depends="-init-macrodef-junit-debug,-init-macrodef-junit-debug-batch" if="${junit.available}" name="-init-macrodef-junit-debug-impl">
626         <macrodef name="test-debug-impl" uri="http://www.netbeans.org/ns/web-project/2">
627             <attribute default="${includes}" name="includes"/>
628             <attribute default="${excludes}" name="excludes"/>
629             <attribute default="**" name="testincludes"/>
630             <attribute default="" name="testmethods"/>
631             <element implicit="true" name="customize" optional="true"/>
632             <sequential>
633                 <webproject2:junit-debug excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}">
634                     <customize/>
635                 </webproject2:junit-debug>
636             </sequential>
637         </macrodef>
638     </target>
639     <target if="${testng.available}" name="-init-macrodef-testng-debug">
640         <macrodef name="testng-debug" uri="http://www.netbeans.org/ns/web-project/2">
641             <attribute default="${main.class}" name="testClass"/>
642             <attribute default="" name="testMethod"/>
643             <element name="customize2" optional="true"/>
644             <sequential>
645                 <condition else="-testclass @{testClass}" property="test.class.or.method" value="-methods @{testClass}.@{testMethod}">
646                     <isset property="test.method"/>
647                 </condition>
648                 <condition else="-suitename jjobs-war -testname @{testClass} ${test.class.or.method}" property="testng.cmd.args" value="@{testClass}">
649                     <matches pattern=".*\.xml" string="@{testClass}"/>
650                 </condition>
651                 <delete dir="${build.test.results.dir}" quiet="true"/>
652                 <mkdir dir="${build.test.results.dir}"/>
653                 <webproject1:debug args="${testng.cmd.args}" classname="org.testng.TestNG" classpath="${debug.test.classpath}:${j2ee.platform.embeddableejb.classpath}">
654                     <customize>
655                         <customize2/>
656                         <jvmarg value="-ea"/>
657                         <arg line="${testng.debug.mode}"/>
658                         <arg line="-d ${build.test.results.dir}"/>
659                         <arg line="-listener org.testng.reporters.VerboseReporter"/>
660                     </customize>
661                 </webproject1:debug>
662             </sequential>
663         </macrodef>
664     </target>
665     <target depends="-init-macrodef-testng-debug" if="${testng.available}" name="-init-macrodef-testng-debug-impl">
666         <macrodef name="testng-debug-impl" uri="http://www.netbeans.org/ns/web-project/2">
667             <attribute default="${main.class}" name="testClass"/>
668             <attribute default="" name="testMethod"/>
669             <element implicit="true" name="customize2" optional="true"/>
670             <sequential>
671                 <webproject2:testng-debug testClass="@{testClass}" testMethod="@{testMethod}">
672                     <customize2/>
673                 </webproject2:testng-debug>
674             </sequential>
675         </macrodef>
676     </target>
677     <target depends="-init-macrodef-junit-debug-impl" if="${junit.available}" name="-init-macrodef-test-debug-junit">
678         <macrodef name="test-debug" uri="http://www.netbeans.org/ns/web-project/2">
679             <attribute default="${includes}" name="includes"/>
680             <attribute default="${excludes}" name="excludes"/>
681             <attribute default="**" name="testincludes"/>
682             <attribute default="" name="testmethods"/>
683             <attribute default="${main.class}" name="testClass"/>
684             <attribute default="" name="testMethod"/>
685             <sequential>
686                 <webproject2:test-debug-impl excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}">
687                     <customize>
688                         <classpath>
689                             <path path="${run.test.classpath}:${j2ee.platform.classpath}:${j2ee.platform.embeddableejb.classpath}"/>
690                         </classpath>
691                         <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
692                         <jvmarg line="${runmain.jvmargs}"/>
693                     </customize>
694                 </webproject2:test-debug-impl>
695             </sequential>
696         </macrodef>
697     </target>
698     <target depends="-init-macrodef-testng-debug-impl" if="${testng.available}" name="-init-macrodef-test-debug-testng">
699         <macrodef name="test-debug" uri="http://www.netbeans.org/ns/web-project/2">
700             <attribute default="${includes}" name="includes"/>
701             <attribute default="${excludes}" name="excludes"/>
702             <attribute default="**" name="testincludes"/>
703             <attribute default="" name="testmethods"/>
704             <attribute default="${main.class}" name="testClass"/>
705             <attribute default="" name="testMethod"/>
706             <sequential>
707                 <webproject2:testng-debug-impl testClass="@{testClass}" testMethod="@{testMethod}">
708                     <customize2>
709                         <syspropertyset>
710                             <propertyref prefix="test-sys-prop."/>
711                             <mapper from="test-sys-prop.*" to="*" type="glob"/>
712                         </syspropertyset>
713                     </customize2>
714                 </webproject2:testng-debug-impl>
715             </sequential>
716         </macrodef>
717     </target>
718     <target depends="-init-macrodef-test-debug-junit,-init-macrodef-test-debug-testng" name="-init-macrodef-test-debug"/>
719     <target name="-init-macrodef-java">
720         <macrodef name="java" uri="http://www.netbeans.org/ns/web-project/1">
721             <attribute default="${main.class}" name="classname"/>
722             <attribute default="${debug.classpath}" name="classpath"/>
723             <element name="customize" optional="true"/>
724             <sequential>
725                 <java classname="@{classname}" fork="true">
726                     <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
727                     <jvmarg line="${runmain.jvmargs}"/>
728                     <classpath>
729                         <path path="@{classpath}:${j2ee.platform.classpath}"/>
730                     </classpath>
731                     <syspropertyset>
732                         <propertyref prefix="run-sys-prop."/>
733                         <mapper from="run-sys-prop.*" to="*" type="glob"/>
734                     </syspropertyset>
735                     <customize/>
736                 </java>
737             </sequential>
738         </macrodef>
739     </target>
740     <target name="-init-macrodef-nbjsdebug">
741         <macrodef name="nbjsdebugstart" uri="http://www.netbeans.org/ns/web-project/1">
742             <attribute default="${client.url}" name="webUrl"/>
743             <sequential>
744                 <nbjsdebugstart urlPart="${client.urlPart}" webUrl="@{webUrl}"/>
745             </sequential>
746         </macrodef>
747     </target>
748     <target depends="-init-debug-args" name="-init-macrodef-nbjpda">
749         <macrodef name="nbjpdastart" uri="http://www.netbeans.org/ns/web-project/1">
750             <attribute default="${main.class}" name="name"/>
751             <attribute default="${debug.classpath}:${j2ee.platform.classpath}" name="classpath"/>
752             <sequential>
753                 <nbjpdastart addressproperty="jpda.address" name="@{name}" transport="${debug-transport}">
754                     <classpath>
755                         <path path="@{classpath}"/>
756                     </classpath>
757                 </nbjpdastart>
758             </sequential>
759         </macrodef>
760         <macrodef name="nbjpdareload" uri="http://www.netbeans.org/ns/web-project/1">
761             <attribute default="${build.classes.dir}" name="dir"/>
762             <sequential>
763                 <nbjpdareload>
764                     <fileset dir="@{dir}" includes="${fix.classes}">
765                         <include name="${fix.includes}*.class"/>
766                     </fileset>
767                 </nbjpdareload>
768             </sequential>
769         </macrodef>
770         <macrodef name="nbjpdaappreloaded" uri="http://www.netbeans.org/ns/web-project/1">
771             <sequential>
772                 <nbjpdaappreloaded/>
773             </sequential>
774         </macrodef>
775     </target>
776     <target name="-init-debug-args">
777         <property name="version-output" value="java version &quot;${ant.java.version}"/>
778         <condition property="have-jdk-older-than-1.4">
779             <or>
780                 <contains string="${version-output}" substring="java version &quot;1.0"/>
781                 <contains string="${version-output}" substring="java version &quot;1.1"/>
782                 <contains string="${version-output}" substring="java version &quot;1.2"/>
783                 <contains string="${version-output}" substring="java version &quot;1.3"/>
784             </or>
785         </condition>
786         <condition else="-Xdebug" property="debug-args-line" value="-Xdebug -Xnoagent -Djava.compiler=none">
787             <istrue value="${have-jdk-older-than-1.4}"/>
788         </condition>
789         <condition else="dt_socket" property="debug-transport-by-os" value="dt_shmem">
790             <os family="windows"/>
791         </condition>
792         <condition else="${debug-transport-by-os}" property="debug-transport" value="${debug.transport}">
793             <isset property="debug.transport"/>
794         </condition>
795     </target>
796     <target depends="-init-debug-args" name="-init-macrodef-debug">
797         <macrodef name="debug" uri="http://www.netbeans.org/ns/web-project/1">
798             <attribute default="${main.class}" name="classname"/>
799             <attribute default="${debug.classpath}:${j2ee.platform.classpath}" name="classpath"/>
800             <attribute default="${application.args.param}" name="args"/>
801             <element name="customize" optional="true"/>
802             <sequential>
803                 <java classname="@{classname}" fork="true">
804                     <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
805                     <jvmarg line="${debug-args-line}"/>
806                     <jvmarg value="-Xrunjdwp:transport=${debug-transport},address=${jpda.address}"/>
807                     <jvmarg line="${runmain.jvmargs}"/>
808                     <classpath>
809                         <path path="@{classpath}"/>
810                     </classpath>
811                     <syspropertyset>
812                         <propertyref prefix="run-sys-prop."/>
813                         <mapper from="run-sys-prop.*" to="*" type="glob"/>
814                     </syspropertyset>
815                     <arg line="@{args}"/>
816                     <customize/>
817                 </java>
818             </sequential>
819         </macrodef>
820     </target>
821     <target name="-init-taskdefs">
822         <fail unless="libs.CopyLibs.classpath">
823 The libs.CopyLibs.classpath property is not set up.
824 This property must point to 
825 org-netbeans-modules-java-j2seproject-copylibstask.jar file which is part
826 of NetBeans IDE installation and is usually located at 
827 &lt;netbeans_installation&gt;/java&lt;version&gt;/ant/extra folder.
828 Either open the project in the IDE and make sure CopyLibs library
829 exists or setup the property manually. For example like this:
830  ant -Dlibs.CopyLibs.classpath=a/path/to/org-netbeans-modules-java-j2seproject-copylibstask.jar
831                 </fail>
832         <taskdef classpath="${libs.CopyLibs.classpath}" resource="org/netbeans/modules/java/j2seproject/copylibstask/antlib.xml"/>
833     </target>
834     <target name="-init-ap-cmdline-properties">
835         <property name="annotation.processing.enabled" value="true"/>
836         <property name="annotation.processing.processors.list" value=""/>
837         <property name="annotation.processing.run.all.processors" value="true"/>
838         <property name="javac.processorpath" value="${javac.classpath}"/>
839         <property name="javac.test.processorpath" value="${javac.test.classpath}"/>
840         <condition property="ap.supported.internal" value="true">
841             <not>
842                 <matches pattern="1\.[0-5](\..*)?" string="${javac.source}"/>
843             </not>
844         </condition>
845     </target>
846     <target depends="-init-ap-cmdline-properties" if="ap.supported.internal" name="-init-ap-cmdline-supported">
847         <condition else="" property="ap.processors.internal" value="-processor ${annotation.processing.processors.list}">
848             <isfalse value="${annotation.processing.run.all.processors}"/>
849         </condition>
850         <condition else="" property="ap.proc.none.internal" value="-proc:none">
851             <isfalse value="${annotation.processing.enabled}"/>
852         </condition>
853     </target>
854     <target depends="-init-ap-cmdline-properties,-init-ap-cmdline-supported" name="-init-ap-cmdline">
855         <property name="ap.cmd.line.internal" value=""/>
856     </target>
857     <!--
858                 pre NB7.2 profiling section; consider it deprecated
859             -->
860     <target depends="-profile-pre-init, init, -profile-post-init, -profile-init-check" if="profiler.info.jvmargs.agent" name="profile-init"/>
861     <target if="profiler.info.jvmargs.agent" name="-profile-pre-init">
862         <!-- Empty placeholder for easier customization. -->
863         <!-- You can override this target in the ../build.xml file. -->
864     </target>
865     <target if="profiler.info.jvmargs.agent" name="-profile-post-init">
866         <!-- Empty placeholder for easier customization. -->
867         <!-- You can override this target in the ../build.xml file. -->
868     </target>
869     <target depends="-profile-pre-init, init, -profile-post-init" if="profiler.info.jvmargs.agent" name="-profile-init-check">
870         <fail unless="profiler.info.jvm">Must set JVM to use for profiling in profiler.info.jvm</fail>
871         <fail unless="profiler.info.jvmargs.agent">Must set profiler agent JVM arguments in profiler.info.jvmargs.agent</fail>
872     </target>
873     <!--
874                 end of pre NB7.2 profiling section
875             -->
876     <target depends="-pre-init,-init-private,-init-libraries,-init-user,-init-project,-do-init,-post-init,-init-check,-init-macrodef-property,-init-macrodef-javac,-init-macrodef-test,-init-macrodef-test-debug,-init-macrodef-java,-init-macrodef-nbjpda,-init-macrodef-nbjsdebug,-init-macrodef-debug,-init-taskdefs,-init-ap-cmdline" name="init"/>
877     <!--
878                 COMPILATION SECTION
879             -->
880     <target depends="init" if="no.dist.ear.dir" name="deps-module-jar" unless="no.deps">
881         <ant antfile="${project.jjobs-lib}/build.xml" inheritall="false" target="jar">
882             <property name="deploy.on.save" value="false"/>
883         </ant>
884     </target>
885     <target depends="init" if="dist.ear.dir" name="deps-ear-jar" unless="no.deps">
886         <ant antfile="${project.jjobs-lib}/build.xml" inheritall="false" target="jar">
887             <property name="deploy.on.save" value="false"/>
888         </ant>
889     </target>
890     <target depends="init, deps-module-jar, deps-ear-jar" name="deps-jar" unless="no.deps"/>
891     <target depends="init,deps-jar" name="-pre-pre-compile">
892         <mkdir dir="${build.classes.dir}"/>
893     </target>
894     <target name="-pre-compile">
895         <!-- Empty placeholder for easier customization. -->
896         <!-- You can override this target in the ../build.xml file. -->
897     </target>
898     <target name="-copy-webdir">
899         <copy todir="${build.web.dir}">
900             <fileset dir="${web.docbase.dir}" excludes="${build.web.excludes},${excludes}" includes="${includes}"/>
901         </copy>
902         <copy todir="${build.web.dir}/WEB-INF">
903             <fileset dir="${webinf.dir}" excludes="${build.web.excludes}"/>
904         </copy>
905     </target>
906     <target depends="init, deps-jar, -pre-pre-compile, -pre-compile, -copy-manifest, -copy-persistence-xml, -copy-webdir, library-inclusion-in-archive,library-inclusion-in-manifest" if="have.sources" name="-do-compile">
907         <webproject2:javac destdir="${build.classes.dir}" gensrcdir="${build.generated.sources.dir}"/>
908         <copy todir="${build.classes.dir}">
909             <fileset dir="${src.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
910         </copy>
911     </target>
912     <target if="has.custom.manifest" name="-copy-manifest">
913         <mkdir dir="${build.meta.inf.dir}"/>
914         <copy todir="${build.meta.inf.dir}">
915             <fileset dir="${conf.dir}" includes="MANIFEST.MF"/>
916         </copy>
917     </target>
918     <target if="has.persistence.xml" name="-copy-persistence-xml">
919         <mkdir dir="${build.web.dir}/WEB-INF/classes/META-INF"/>
920         <copy todir="${build.web.dir}/WEB-INF/classes/META-INF">
921             <fileset dir="${persistence.xml.dir}" includes="persistence.xml orm.xml"/>
922         </copy>
923     </target>
924     <target name="-post-compile">
925         <!-- Empty placeholder for easier customization. -->
926         <!-- You can override this target in the ../build.xml file. -->
927     </target>
928     <target depends="init,deps-jar,-pre-pre-compile,-pre-compile,-do-compile,-post-compile" description="Compile project." name="compile"/>
929     <target name="-pre-compile-single">
930         <!-- Empty placeholder for easier customization. -->
931         <!-- You can override this target in the ../build.xml file. -->
932     </target>
933     <target depends="init,deps-jar,-pre-pre-compile" name="-do-compile-single">
934         <fail unless="javac.includes">Must select some files in the IDE or set javac.includes</fail>
935         <webproject2:javac excludes="" gensrcdir="${build.generated.sources.dir}" includes="${javac.includes}"/>
936         <copy todir="${build.classes.dir}">
937             <fileset dir="${src.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
938         </copy>
939     </target>
940     <target name="-post-compile-single">
941         <!-- Empty placeholder for easier customization. -->
942         <!-- You can override this target in the ../build.xml file. -->
943     </target>
944     <target depends="init,deps-jar,-pre-pre-compile,-pre-compile-single,-do-compile-single,-post-compile-single" name="compile-single"/>
945     <property name="jspc.schemas" value="/resources/schemas/"/>
946     <property name="jspc.dtds" value="/resources/dtds/"/>
947     <target depends="compile" description="Test compile JSP pages to expose compilation errors." if="do.compile.jsps" name="compile-jsps">
948         <mkdir dir="${build.generated.dir}/src"/>
949         <java classname="org.netbeans.modules.web.project.ant.JspC" failonerror="true" fork="true">
950             <arg value="-uriroot"/>
951             <arg file="${basedir}/${build.web.dir}"/>
952             <arg value="-d"/>
953             <arg file="${basedir}/${build.generated.dir}/src"/>
954             <arg value="-die1"/>
955             <arg value="-schemas ${jspc.schemas}"/>
956             <arg value="-dtds ${jspc.dtds}"/>
957             <arg value="-compilerSourceVM ${javac.source}"/>
958             <arg value="-compilerTargetVM ${javac.target}"/>
959             <arg value="-javaEncoding ${source.encoding}"/>
960             <arg value="-sysClasspath ${libs.jsp-compilation-syscp.classpath}"/>
961             <classpath path="${java.home}/../lib/tools.jar:${libs.jsp-compiler.classpath}:${libs.jsp-compilation.classpath}"/>
962         </java>
963         <mkdir dir="${build.generated.dir}/classes"/>
964         <webproject2:javac classpath="${build.classes.dir}:${libs.jsp-compilation.classpath}:${javac.classpath}:${j2ee.platform.classpath}" destdir="${build.generated.dir}/classes" srcdir="${build.generated.dir}/src"/>
965     </target>
966     <target depends="compile" if="jsp.includes" name="-do-compile-single-jsp">
967         <fail unless="javac.jsp.includes">Must select some files in the IDE or set javac.jsp.includes</fail>
968         <mkdir dir="${build.generated.dir}/src"/>
969         <java classname="org.netbeans.modules.web.project.ant.JspCSingle" failonerror="true" fork="true">
970             <arg value="-uriroot"/>
971             <arg file="${basedir}/${build.web.dir}"/>
972             <arg value="-d"/>
973             <arg file="${basedir}/${build.generated.dir}/src"/>
974             <arg value="-die1"/>
975             <arg value="-schemas ${jspc.schemas}"/>
976             <arg value="-dtds ${jspc.dtds}"/>
977             <arg value="-sysClasspath ${libs.jsp-compilation-syscp.classpath}"/>
978             <arg value="-jspc.files"/>
979             <arg path="${jsp.includes}"/>
980             <arg value="-compilerSourceVM ${javac.source}"/>
981             <arg value="-compilerTargetVM ${javac.target}"/>
982             <arg value="-javaEncoding ${source.encoding}"/>
983             <classpath path="${java.home}/../lib/tools.jar:${libs.jsp-compiler.classpath}:${libs.jsp-compilation.classpath}"/>
984         </java>
985         <mkdir dir="${build.generated.dir}/classes"/>
986         <webproject2:javac classpath="${build.classes.dir}:${libs.jsp-compilation.classpath}:${javac.classpath}:${j2ee.platform.classpath}" destdir="${build.generated.dir}/classes" srcdir="${build.generated.dir}/src">
987             <customize>
988                 <patternset includes="${javac.jsp.includes}"/>
989             </customize>
990         </webproject2:javac>
991     </target>
992     <target name="compile-single-jsp">
993         <fail unless="jsp.includes">Must select a file in the IDE or set jsp.includes</fail>
994         <antcall target="-do-compile-single-jsp"/>
995     </target>
996     <!--
997                 DIST BUILDING SECTION
998             -->
999     <target name="-pre-dist">
1000         <!-- Empty placeholder for easier customization. -->
1001         <!-- You can override this target in the ../build.xml file. -->
1002     </target>
1003     <target depends="init,compile,compile-jsps,-pre-dist" if="do.war.package.without.custom.manifest" name="-do-dist-without-manifest">
1004         <dirname file="${dist.war}" property="dist.jar.dir"/>
1005         <mkdir dir="${dist.jar.dir}"/>
1006         <jar compress="${jar.compress}" jarfile="${dist.war}">
1007             <fileset dir="${build.web.dir}" excludes="WEB-INF/classes/.netbeans_*,${dist.archive.excludes}"/>
1008         </jar>
1009     </target>
1010     <target depends="init,compile,compile-jsps,-pre-dist" if="do.war.package.with.custom.manifest" name="-do-dist-with-manifest">
1011         <dirname file="${dist.war}" property="dist.jar.dir"/>
1012         <mkdir dir="${dist.jar.dir}"/>
1013         <jar compress="${jar.compress}" jarfile="${dist.war}" manifest="${build.meta.inf.dir}/MANIFEST.MF">
1014             <fileset dir="${build.web.dir}" excludes="WEB-INF/classes/.netbeans_*,${dist.archive.excludes}"/>
1015         </jar>
1016     </target>
1017     <target depends="init,compile,compile-jsps,-pre-dist" if="do.tmp.war.package.without.custom.manifest" name="-do-tmp-dist-without-manifest">
1018         <dirname file="${dist.war}" property="dist.jar.dir"/>
1019         <mkdir dir="${dist.jar.dir}"/>
1020         <jar compress="${jar.compress}" jarfile="${dist.war}">
1021             <fileset dir="${build.web.dir}" excludes="WEB-INF/classes/.netbeans_*,${dist.archive.excludes}"/>
1022         </jar>
1023     </target>
1024     <target depends="init,compile,compile-jsps,-pre-dist" if="do.tmp.war.package.with.custom.manifest" name="-do-tmp-dist-with-manifest">
1025         <dirname file="${dist.war}" property="dist.jar.dir"/>
1026         <mkdir dir="${dist.jar.dir}"/>
1027         <jar compress="${jar.compress}" jarfile="${dist.war}" manifest="${build.meta.inf.dir}/MANIFEST.MF">
1028             <fileset dir="${build.web.dir}" excludes="WEB-INF/classes/.netbeans_*,${dist.archive.excludes}"/>
1029         </jar>
1030     </target>
1031     <target depends="init,compile,compile-jsps,-pre-dist,-do-dist-with-manifest,-do-dist-without-manifest" name="do-dist"/>
1032     <target depends="init" if="dist.ear.dir" name="library-inclusion-in-manifest">
1033         <copyfiles files="${file.reference.jcontacts-core.jar}" iftldtodir="${build.web.dir}/WEB-INF" todir="${dist.ear.dir}/lib"/>
1034         <copyfiles files="${file.reference.jcore.jar}" iftldtodir="${build.web.dir}/WEB-INF" todir="${dist.ear.dir}/lib"/>
1035         <copyfiles files="${file.reference.jcore-logger-lib.jar}" iftldtodir="${build.web.dir}/WEB-INF" todir="${dist.ear.dir}/lib"/>
1036         <copyfiles files="${file.reference.jcountry-core.jar}" iftldtodir="${build.web.dir}/WEB-INF" todir="${dist.ear.dir}/lib"/>
1037         <copyfiles files="${file.reference.jcountry-lib.jar}" iftldtodir="${build.web.dir}/WEB-INF" todir="${dist.ear.dir}/lib"/>
1038         <copyfiles files="${file.reference.jphone-core.jar}" iftldtodir="${build.web.dir}/WEB-INF" todir="${dist.ear.dir}/lib"/>
1039         <copyfiles files="${file.reference.juser-core.jar}" iftldtodir="${build.web.dir}/WEB-INF" todir="${dist.ear.dir}/lib"/>
1040         <copyfiles files="${file.reference.juser-lib.jar}" iftldtodir="${build.web.dir}/WEB-INF" todir="${dist.ear.dir}/lib"/>
1041         <copyfiles files="${reference.jjobs-lib.jar}" iftldtodir="${build.web.dir}/WEB-INF" todir="${dist.ear.dir}/lib"/>
1042         <mkdir dir="${build.web.dir}/META-INF"/>
1043         <manifest file="${build.web.dir}/META-INF/MANIFEST.MF" mode="update"/>
1044     </target>
1045     <target depends="init" name="library-inclusion-in-archive" unless="dist.ear.dir">
1046         <copyfiles files="${file.reference.jcontacts-core.jar}" todir="${build.web.dir}/WEB-INF/lib"/>
1047         <copyfiles files="${file.reference.jcore.jar}" todir="${build.web.dir}/WEB-INF/lib"/>
1048         <copyfiles files="${file.reference.jcore-logger-lib.jar}" todir="${build.web.dir}/WEB-INF/lib"/>
1049         <copyfiles files="${file.reference.jcountry-core.jar}" todir="${build.web.dir}/WEB-INF/lib"/>
1050         <copyfiles files="${file.reference.jcountry-lib.jar}" todir="${build.web.dir}/WEB-INF/lib"/>
1051         <copyfiles files="${file.reference.jphone-core.jar}" todir="${build.web.dir}/WEB-INF/lib"/>
1052         <copyfiles files="${file.reference.juser-core.jar}" todir="${build.web.dir}/WEB-INF/lib"/>
1053         <copyfiles files="${file.reference.juser-lib.jar}" todir="${build.web.dir}/WEB-INF/lib"/>
1054         <copyfiles files="${reference.jjobs-lib.jar}" todir="${build.web.dir}/WEB-INF/lib"/>
1055     </target>
1056     <target depends="init" if="dist.ear.dir" name="-clean-webinf-lib">
1057         <delete dir="${build.web.dir}/WEB-INF/lib"/>
1058     </target>
1059     <target depends="init,-clean-webinf-lib,compile,compile-jsps,-pre-dist,library-inclusion-in-manifest" if="do.tmp.war.package" name="do-ear-dist">
1060         <dirname file="${dist.ear.war}" property="dist.jar.dir"/>
1061         <mkdir dir="${dist.jar.dir}"/>
1062         <jar compress="${jar.compress}" jarfile="${dist.ear.war}" manifest="${build.web.dir}/META-INF/MANIFEST.MF">
1063             <fileset dir="${build.web.dir}" excludes="WEB-INF/classes/.netbeans_*,${dist.archive.excludes}"/>
1064         </jar>
1065     </target>
1066     <target name="-post-dist">
1067         <!-- Empty placeholder for easier customization. -->
1068         <!-- You can override this target in the ../build.xml file. -->
1069     </target>
1070     <target depends="init,compile,-pre-dist,do-dist,-post-dist" description="Build distribution (WAR)." name="dist"/>
1071     <target depends="init,-clean-webinf-lib,-init-cos,compile,-pre-dist,do-ear-dist,-post-dist" description="Build distribution (WAR) to be packaged into an EAR." name="dist-ear"/>
1072     <!--
1073                 EXECUTION SECTION
1074             -->
1075     <target depends="run-deploy,run-display-browser" description="Deploy to server and show in browser." name="run"/>
1076     <target name="-pre-run-deploy">
1077         <!-- Empty placeholder for easier customization. -->
1078         <!-- You can override this target in the ../build.xml file. -->
1079     </target>
1080     <target name="-post-run-deploy">
1081         <!-- Empty placeholder for easier customization. -->
1082         <!-- You can override this target in the ../build.xml file. -->
1083     </target>
1084     <target name="-pre-nbmodule-run-deploy">
1085         <!-- Empty placeholder for easier customization. -->
1086         <!-- This target can be overriden by NetBeans modules. Don't override it directly, use -pre-run-deploy task instead. -->
1087     </target>
1088     <target name="-post-nbmodule-run-deploy">
1089         <!-- Empty placeholder for easier customization. -->
1090         <!-- This target can be overriden by NetBeans modules. Don't override it directly, use -post-run-deploy task instead. -->
1091     </target>
1092     <target name="-run-deploy-am">
1093         <!-- Task to deploy to the Access Manager runtime. -->
1094     </target>
1095     <target depends="init,-init-cos,compile,compile-jsps,-do-compile-single-jsp,-pre-dist,-do-tmp-dist-with-manifest,-do-tmp-dist-without-manifest,-pre-run-deploy,-pre-nbmodule-run-deploy,-run-deploy-nb,-init-deploy-ant,-deploy-ant,-run-deploy-am,-post-nbmodule-run-deploy,-post-run-deploy,-do-update-breakpoints" name="run-deploy"/>
1096     <target if="netbeans.home" name="-run-deploy-nb">
1097         <nbdeploy clientUrlPart="${client.urlPart}" debugmode="false" forceRedeploy="${forceRedeploy}"/>
1098     </target>
1099     <target name="-init-deploy-ant" unless="netbeans.home">
1100         <property name="deploy.ant.archive" value="${dist.war}"/>
1101         <property name="deploy.ant.docbase.dir" value="${web.docbase.dir}"/>
1102         <property name="deploy.ant.resource.dir" value="${resource.dir}"/>
1103         <property name="deploy.ant.enabled" value="true"/>
1104     </target>
1105     <target depends="dist,-run-undeploy-nb,-init-deploy-ant,-undeploy-ant" name="run-undeploy"/>
1106     <target if="netbeans.home" name="-run-undeploy-nb">
1107         <fail message="Undeploy is not supported from within the IDE"/>
1108     </target>
1109     <target depends="init,-pre-dist,dist,-post-dist" name="verify">
1110         <nbverify file="${dist.war}"/>
1111     </target>
1112     <target depends="run-deploy,-init-display-browser,-display-browser-nb-old,-display-browser-nb,-display-browser-cl" name="run-display-browser"/>
1113     <target if="do.display.browser" name="-init-display-browser">
1114         <condition property="do.display.browser.nb.old">
1115             <and>
1116                 <isset property="netbeans.home"/>
1117                 <not>
1118                     <isset property="browser.context"/>
1119                 </not>
1120             </and>
1121         </condition>
1122         <condition property="do.display.browser.nb">
1123             <and>
1124                 <isset property="netbeans.home"/>
1125                 <isset property="browser.context"/>
1126             </and>
1127         </condition>
1128         <condition property="do.display.browser.cl">
1129             <isset property="deploy.ant.enabled"/>
1130         </condition>
1131     </target>
1132     <target if="do.display.browser.nb.old" name="-display-browser-nb-old">
1133         <nbbrowse url="${client.url}"/>
1134     </target>
1135     <target if="do.display.browser.nb" name="-display-browser-nb">
1136         <nbbrowse context="${browser.context}" url="${client.url}" urlPath="${client.urlPart}"/>
1137     </target>
1138     <target if="do.display.browser.cl" name="-get-browser" unless="browser">
1139         <condition property="browser" value="rundll32">
1140             <os family="windows"/>
1141         </condition>
1142         <condition else="" property="browser.args" value="url.dll,FileProtocolHandler">
1143             <os family="windows"/>
1144         </condition>
1145         <condition property="browser" value="/usr/bin/open">
1146             <os family="mac"/>
1147         </condition>
1148         <property environment="env"/>
1149         <condition property="browser" value="${env.BROWSER}">
1150             <isset property="env.BROWSER"/>
1151         </condition>
1152         <condition property="browser" value="/usr/bin/firefox">
1153             <available file="/usr/bin/firefox"/>
1154         </condition>
1155         <condition property="browser" value="/usr/local/firefox/firefox">
1156             <available file="/usr/local/firefox/firefox"/>
1157         </condition>
1158         <condition property="browser" value="/usr/bin/mozilla">
1159             <available file="/usr/bin/mozilla"/>
1160         </condition>
1161         <condition property="browser" value="/usr/local/mozilla/mozilla">
1162             <available file="/usr/local/mozilla/mozilla"/>
1163         </condition>
1164         <condition property="browser" value="/usr/sfw/lib/firefox/firefox">
1165             <available file="/usr/sfw/lib/firefox/firefox"/>
1166         </condition>
1167         <condition property="browser" value="/opt/csw/bin/firefox">
1168             <available file="/opt/csw/bin/firefox"/>
1169         </condition>
1170         <condition property="browser" value="/usr/sfw/lib/mozilla/mozilla">
1171             <available file="/usr/sfw/lib/mozilla/mozilla"/>
1172         </condition>
1173         <condition property="browser" value="/opt/csw/bin/mozilla">
1174             <available file="/opt/csw/bin/mozilla"/>
1175         </condition>
1176     </target>
1177     <target depends="-get-browser" if="do.display.browser.cl" name="-display-browser-cl">
1178         <fail unless="browser">
1179                     Browser not found, cannot launch the deployed application. Try to set the BROWSER environment variable.
1180                 </fail>
1181         <property name="browse.url" value="${deploy.ant.client.url}${client.urlPart}"/>
1182         <echo>Launching ${browse.url}</echo>
1183         <exec executable="${browser}" spawn="true">
1184             <arg line="${browser.args} ${browse.url}"/>
1185         </exec>
1186     </target>
1187     <target depends="init,-init-cos,compile-single" name="run-main">
1188         <fail unless="run.class">Must select one file in the IDE or set run.class</fail>
1189         <webproject1:java classname="${run.class}"/>
1190     </target>
1191     <target depends="init,compile-test-single,-pre-test-run-single" name="run-test-with-main">
1192         <fail unless="run.class">Must select one file in the IDE or set run.class</fail>
1193         <webproject1:java classname="${run.class}" classpath="${run.test.classpath}"/>
1194     </target>
1195     <target depends="init" if="netbeans.home" name="-do-update-breakpoints">
1196         <webproject1:nbjpdaappreloaded/>
1197     </target>
1198     <!--
1199                 DEBUGGING SECTION
1200             -->
1201     <target depends="init,-init-cos,compile,compile-jsps,-do-compile-single-jsp,-pre-dist,-do-tmp-dist-with-manifest,-do-tmp-dist-without-manifest" description="Debug project in IDE." if="netbeans.home" name="debug">
1202         <nbstartserver debugmode="true"/>
1203         <antcall target="connect-debugger"/>
1204         <nbdeploy clientUrlPart="${client.urlPart}" debugmode="true" forceRedeploy="true"/>
1205         <antcall target="debug-display-browser-old"/>
1206         <antcall target="debug-display-browser"/>
1207         <antcall target="connect-client-debugger"/>
1208     </target>
1209     <target if="do.debug.server" name="connect-debugger" unless="is.debugged">
1210         <condition property="listeningcp" value="sourcepath">
1211             <istrue value="${j2ee.compile.on.save}"/>
1212         </condition>
1213         <nbjpdaconnect address="${jpda.address}" host="${jpda.host}" listeningcp="${listeningcp}" name="${name}" transport="${jpda.transport}">
1214             <classpath>
1215                 <path path="${debug.classpath}:${j2ee.platform.classpath}"/>
1216             </classpath>
1217             <sourcepath>
1218                 <path path="${web.docbase.dir}"/>
1219             </sourcepath>
1220         </nbjpdaconnect>
1221     </target>
1222     <target if="do.display.browser.debug.old" name="debug-display-browser-old">
1223         <nbbrowse url="${client.url}"/>
1224     </target>
1225     <target if="do.display.browser.debug" name="debug-display-browser">
1226         <nbbrowse context="${browser.context}" url="${client.url}" urlPath="${client.urlPart}"/>
1227     </target>
1228     <target if="do.debug.client" name="connect-client-debugger">
1229         <webproject1:nbjsdebugstart webUrl="${client.url}"/>
1230     </target>
1231     <target depends="init,compile-test-single" if="netbeans.home" name="-debug-start-debuggee-main-test">
1232         <fail unless="debug.class">Must select one file in the IDE or set debug.class</fail>
1233         <webproject1:debug classname="${debug.class}" classpath="${debug.test.classpath}"/>
1234     </target>
1235     <target depends="init,compile-test-single,-debug-start-debugger-main-test,-debug-start-debuggee-main-test" if="netbeans.home" name="debug-test-with-main"/>
1236     <target depends="init,compile,compile-jsps,-do-compile-single-jsp,debug" if="netbeans.home" name="debug-single"/>
1237     <target depends="init" if="netbeans.home" name="-debug-start-debugger-main-test">
1238         <webproject1:nbjpdastart classpath="${debug.test.classpath}" name="${debug.class}"/>
1239     </target>
1240     <target depends="init" if="netbeans.home" name="-debug-start-debugger">
1241         <webproject1:nbjpdastart name="${debug.class}"/>
1242     </target>
1243     <target depends="init,compile-single" if="netbeans.home" name="-debug-start-debuggee-single">
1244         <fail unless="debug.class">Must select one file in the IDE or set debug.class</fail>
1245         <webproject1:debug classname="${debug.class}"/>
1246     </target>
1247     <target depends="init,compile-single,-debug-start-debugger,-debug-start-debuggee-single" if="netbeans.home" name="debug-single-main"/>
1248     <target depends="init" name="-pre-debug-fix">
1249         <fail unless="fix.includes">Must set fix.includes</fail>
1250         <property name="javac.includes" value="${fix.includes}.java"/>
1251     </target>
1252     <target depends="init,-pre-debug-fix,compile-single" if="netbeans.home" name="-do-debug-fix">
1253         <webproject1:nbjpdareload/>
1254     </target>
1255     <target depends="init,-pre-debug-fix,-do-debug-fix" if="netbeans.home" name="debug-fix"/>
1256     <!--
1257             =================
1258             PROFILING SECTION
1259             =================
1260             -->
1261     <!--
1262                 pre NB7.2 profiling section; consider it deprecated
1263             -->
1264     <target description="Profile a J2EE project in the IDE." if="profiler.info.jvmargs.agent" name="-profile-pre72">
1265         <condition else="start-profiled-server" property="profiler.startserver.target" value="start-profiled-server-extraargs">
1266             <isset property="profiler.info.jvmargs.extra"/>
1267         </condition>
1268         <antcall target="${profiler.startserver.target}"/>
1269         <antcall target="run"/>
1270         <antcall target="-profile-start-loadgen"/>
1271     </target>
1272     <target if="profiler.info.jvmargs.agent" name="start-profiled-server">
1273         <nbstartprofiledserver forceRestart="${profiler.j2ee.serverForceRestart}" javaPlatform="${profiler.info.javaPlatform}" startupTimeout="${profiler.j2ee.serverStartupTimeout}">
1274             <jvmarg value="${profiler.info.jvmargs.agent}"/>
1275             <jvmarg value="${profiler.j2ee.agentID}"/>
1276         </nbstartprofiledserver>
1277     </target>
1278     <target if="profiler.info.jvmargs.agent" name="start-profiled-server-extraargs">
1279         <nbstartprofiledserver forceRestart="${profiler.j2ee.serverForceRestart}" javaPlatform="${profiler.info.javaPlatform}" startupTimeout="${profiler.j2ee.serverStartupTimeout}">
1280             <jvmarg value="${profiler.info.jvmargs.extra}"/>
1281             <jvmarg value="${profiler.info.jvmargs.agent}"/>
1282             <jvmarg value="${profiler.j2ee.agentID}"/>
1283         </nbstartprofiledserver>
1284     </target>
1285     <target depends="profile-init,compile-test-single" if="profiler.info.jvmargs.agent" name="-profile-test-single-pre72">
1286         <fail unless="netbeans.home">This target only works when run from inside the NetBeans IDE.</fail>
1287         <nbprofiledirect>
1288             <classpath>
1289                 <path path="${run.test.classpath}"/>
1290                 <path path="${j2ee.platform.classpath}"/>
1291             </classpath>
1292         </nbprofiledirect>
1293         <junit dir="${profiler.info.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" jvm="${profiler.info.jvm}" showoutput="true">
1294             <env key="${profiler.info.pathvar}" path="${profiler.info.agentpath}:${profiler.current.path}"/>
1295             <jvmarg value="${profiler.info.jvmargs.agent}"/>
1296             <jvmarg line="${profiler.info.jvmargs}"/>
1297             <test name="${profile.class}"/>
1298             <classpath>
1299                 <path path="${run.test.classpath}"/>
1300                 <path path="${j2ee.platform.classpath}"/>
1301             </classpath>
1302             <syspropertyset>
1303                 <propertyref prefix="test-sys-prop."/>
1304                 <mapper from="test-sys-prop.*" to="*" type="glob"/>
1305             </syspropertyset>
1306             <formatter type="brief" usefile="false"/>
1307             <formatter type="xml"/>
1308         </junit>
1309     </target>
1310     <target if="netbeans.home" name="-profile-check">
1311         <condition property="profiler.configured">
1312             <or>
1313                 <contains casesensitive="true" string="${run.jvmargs.ide}" substring="-agentpath:"/>
1314                 <contains casesensitive="true" string="${run.jvmargs.ide}" substring="-javaagent:"/>
1315             </or>
1316         </condition>
1317     </target>
1318     <target depends="init,-init-cos,compile,compile-jsps,-do-compile-single-jsp,-pre-dist,-do-tmp-dist-with-manifest,-do-tmp-dist-without-manifest" name="-do-profile">
1319         <startprofiler/>
1320         <nbstartserver profilemode="true"/>
1321         <nbdeploy clientUrlPart="${client.urlPart}" forceRedeploy="true" profilemode="true"/>
1322         <antcall target="debug-display-browser-old"/>
1323         <antcall target="debug-display-browser"/>
1324         <antcall target="-profile-start-loadgen"/>
1325     </target>
1326     <target depends="-profile-check,-profile-pre72" description="Profile a J2EE project in the IDE." if="profiler.configured" name="profile" unless="profiler.info.jvmargs.agent">
1327         <antcall target="-do-profile"/>
1328     </target>
1329     <target depends="-profile-test-single-pre72" name="profile-test-single"/>
1330     <target depends="-profile-check" if="profiler.configured" name="profile-test" unless="profiler.info.jvmargs.agent">
1331         <startprofiler/>
1332         <antcall target="test-single"/>
1333     </target>
1334     <target if="profiler.loadgen.path" name="-profile-start-loadgen">
1335         <loadgenstart path="${profiler.loadgen.path}"/>
1336     </target>
1337     <!--
1338                 JAVADOC SECTION
1339             -->
1340     <target depends="init" if="have.sources" name="javadoc-build">
1341         <mkdir dir="${dist.javadoc.dir}"/>
1342         <javadoc additionalparam="${javadoc.additionalparam}" author="${javadoc.author}" charset="UTF-8" destdir="${dist.javadoc.dir}" docencoding="UTF-8" encoding="${javadoc.encoding.used}" failonerror="true" noindex="${javadoc.noindex}" nonavbar="${javadoc.nonavbar}" notree="${javadoc.notree}" private="${javadoc.private}" source="${javac.source}" splitindex="${javadoc.splitindex}" use="${javadoc.use}" useexternalfile="true" version="${javadoc.version}" windowtitle="${javadoc.windowtitle}">
1343             <classpath>
1344                 <path path="${javac.classpath}:${j2ee.platform.classpath}"/>
1345             </classpath>
1346             <fileset dir="${src.dir}" excludes="${excludes}" includes="${includes}">
1347                 <filename name="**/*.java"/>
1348             </fileset>
1349             <fileset dir="${build.generated.sources.dir}" erroronmissingdir="false">
1350                 <include name="**/*.java"/>
1351             </fileset>
1352         </javadoc>
1353         <copy todir="${dist.javadoc.dir}">
1354             <fileset dir="${src.dir}" excludes="${excludes}" includes="${includes}">
1355                 <filename name="**/doc-files/**"/>
1356             </fileset>
1357             <fileset dir="${build.generated.sources.dir}" erroronmissingdir="false">
1358                 <include name="**/doc-files/**"/>
1359             </fileset>
1360         </copy>
1361     </target>
1362     <target depends="init,javadoc-build" if="netbeans.home" name="javadoc-browse" unless="no.javadoc.preview">
1363         <nbbrowse file="${dist.javadoc.dir}/index.html"/>
1364     </target>
1365     <target depends="init,javadoc-build,javadoc-browse" description="Build Javadoc." name="javadoc"/>
1366     <!--
1367                 
1368                 TEST COMPILATION SECTION
1369             -->
1370     <target depends="init,compile" if="have.tests" name="-pre-pre-compile-test">
1371         <mkdir dir="${build.test.classes.dir}"/>
1372         <property name="j2ee.platform.embeddableejb.classpath" value=""/>
1373     </target>
1374     <target name="-pre-compile-test">
1375         <!-- Empty placeholder for easier customization. -->
1376         <!-- You can override this target in the ../build.xml file. -->
1377     </target>
1378     <target depends="init,compile,-pre-pre-compile-test,-pre-compile-test" if="have.tests" name="-do-compile-test">
1379         <webproject2:javac classpath="${javac.test.classpath}:${j2ee.platform.classpath}:${j2ee.platform.embeddableejb.classpath}" debug="true" destdir="${build.test.classes.dir}" srcdir="${test.src.dir}"/>
1380         <copy todir="${build.test.classes.dir}">
1381             <fileset dir="${test.src.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
1382         </copy>
1383     </target>
1384     <target name="-post-compile-test">
1385         <!-- Empty placeholder for easier customization. -->
1386         <!-- You can override this target in the ../build.xml file. -->
1387     </target>
1388     <target depends="init,compile,-pre-pre-compile-test,-pre-compile-test,-do-compile-test,-post-compile-test" name="compile-test"/>
1389     <target name="-pre-compile-test-single">
1390         <!-- Empty placeholder for easier customization. -->
1391         <!-- You can override this target in the ../build.xml file. -->
1392     </target>
1393     <target depends="init,compile,-pre-pre-compile-test,-pre-compile-test-single" if="have.tests" name="-do-compile-test-single">
1394         <fail unless="javac.includes">Must select some files in the IDE or set javac.includes</fail>
1395         <webproject2:javac classpath="${javac.test.classpath}:${j2ee.platform.classpath}:${j2ee.platform.embeddableejb.classpath}" debug="true" destdir="${build.test.classes.dir}" excludes="" includes="${javac.includes}" srcdir="${test.src.dir}"/>
1396         <copy todir="${build.test.classes.dir}">
1397             <fileset dir="${test.src.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
1398         </copy>
1399     </target>
1400     <target name="-post-compile-test-single">
1401         <!-- Empty placeholder for easier customization. -->
1402         <!-- You can override this target in the ../build.xml file. -->
1403     </target>
1404     <target depends="init,compile,-pre-pre-compile-test,-pre-compile-test-single,-do-compile-test-single,-post-compile-test-single" name="compile-test-single"/>
1405     <!--
1406                 
1407                 TEST EXECUTION SECTION
1408             -->
1409     <target depends="init" if="have.tests" name="-pre-test-run">
1410         <mkdir dir="${build.test.results.dir}"/>
1411     </target>
1412     <target depends="init,compile-test,-pre-test-run" if="have.tests" name="-do-test-run">
1413         <webproject2:test includes="${includes}" testincludes="**/*Test.java"/>
1414     </target>
1415     <target depends="init,compile-test,-pre-test-run,-do-test-run" if="have.tests" name="-post-test-run">
1416         <fail if="tests.failed" unless="ignore.failing.tests">Some tests failed; see details above.</fail>
1417     </target>
1418     <target depends="init" if="have.tests" name="test-report"/>
1419     <target depends="init" if="netbeans.home+have.tests" name="-test-browse"/>
1420     <target depends="init,compile-test,-pre-test-run,-do-test-run,test-report,-post-test-run,-test-browse" description="Run unit tests." name="test"/>
1421     <target depends="init" if="have.tests" name="-pre-test-run-single">
1422         <mkdir dir="${build.test.results.dir}"/>
1423     </target>
1424     <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-do-test-run-single">
1425         <fail unless="test.includes">Must select some files in the IDE or set test.includes</fail>
1426         <webproject2:test excludes="" includes="${test.includes}" testincludes="${test.includes}"/>
1427     </target>
1428     <target depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single" if="have.tests" name="-post-test-run-single">
1429         <fail if="tests.failed" unless="ignore.failing.tests">Some tests failed; see details above.</fail>
1430     </target>
1431     <target depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single,-post-test-run-single" description="Run single unit test." name="test-single"/>
1432     <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-do-test-run-single-method">
1433         <fail unless="test.class">Must select some files in the IDE or set test.class</fail>
1434         <fail unless="test.method">Must select some method in the IDE or set test.method</fail>
1435         <webproject2:test excludes="" includes="${javac.includes}" testincludes="${test.class}" testmethods="${test.method}"/>
1436     </target>
1437     <target depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single-method" if="have.tests" name="-post-test-run-single-method">
1438         <fail if="tests.failed" unless="ignore.failing.tests">Some tests failed; see details above.</fail>
1439     </target>
1440     <target depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single-method,-post-test-run-single-method" description="Run single unit test." name="test-single-method"/>
1441     <!--
1442                 
1443                 TEST DEBUGGING SECTION
1444             -->
1445     <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-debug-start-debuggee-test">
1446         <fail unless="test.class">Must select one file in the IDE or set test.class</fail>
1447         <webproject2:test-debug excludes="" includes="${javac.includes}" testClass="${test.class}" testincludes="${javac.includes}"/>
1448     </target>
1449     <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-debug-start-debuggee-test-method">
1450         <fail unless="test.class">Must select one file in the IDE or set test.class</fail>
1451         <fail unless="test.method">Must select some method in the IDE or set test.method</fail>
1452         <webproject2:test-debug excludes="" includes="${javac.includes}" testClass="${test.class}" testMethod="${test.method}" testincludes="${test.class}" testmethods="${test.method}"/>
1453     </target>
1454     <target depends="init,compile-test" if="netbeans.home+have.tests" name="-debug-start-debugger-test">
1455         <webproject1:nbjpdastart classpath="${debug.test.classpath}" name="${test.class}"/>
1456     </target>
1457     <target depends="init,compile-test,-debug-start-debugger-test,-debug-start-debuggee-test" name="debug-test"/>
1458     <target depends="init,compile-test-single,-debug-start-debugger-test,-debug-start-debuggee-test-method" name="debug-test-method"/>
1459     <target depends="init,-pre-debug-fix,compile-test-single" if="netbeans.home" name="-do-debug-fix-test">
1460         <webproject1:nbjpdareload dir="${build.test.classes.dir}"/>
1461     </target>
1462     <target depends="init,-pre-debug-fix,-do-debug-fix-test" if="netbeans.home" name="debug-fix-test"/>
1463     <!--
1464                 
1465                 CLEANUP SECTION
1466             -->
1467     <target depends="init" name="deps-clean" unless="no.deps">
1468         <ant antfile="${project.jjobs-lib}/build.xml" inheritall="false" target="clean"/>
1469     </target>
1470     <target depends="init" name="do-clean">
1471         <condition property="build.dir.to.clean" value="${build.web.dir}">
1472             <isset property="dist.ear.dir"/>
1473         </condition>
1474         <property name="build.dir.to.clean" value="${build.web.dir}"/>
1475         <delete includeEmptyDirs="true" quiet="true">
1476             <fileset dir="${build.dir.to.clean}/WEB-INF/lib"/>
1477         </delete>
1478         <delete dir="${build.dir}"/>
1479         <available file="${build.dir.to.clean}/WEB-INF/lib" property="status.clean-failed" type="dir"/>
1480         <delete dir="${dist.dir}"/>
1481     </target>
1482     <target depends="do-clean" if="status.clean-failed" name="check-clean">
1483         <echo message="Warning: unable to delete some files in ${build.web.dir}/WEB-INF/lib - they are probably locked by the J2EE server. "/>
1484         <echo level="info" message="To delete all files undeploy the module from Server Registry in Runtime tab and then use Clean again."/>
1485     </target>
1486     <target depends="init" if="netbeans.home" name="undeploy-clean">
1487         <nbundeploy failOnError="false" startServer="false"/>
1488     </target>
1489     <target name="-post-clean">
1490         <!-- Empty placeholder for easier customization. -->
1491         <!-- You can override this target in the ../build.xml file. -->
1492     </target>
1493     <target depends="init,undeploy-clean,deps-clean,do-clean,check-clean,-post-clean" description="Clean build products." name="clean"/>
1494     <target depends="clean" description="Clean build products." name="clean-ear"/>
1495 </project>