+++ /dev/null
-Installation instructions:
-==========================
-
-0) Create an empty database and setup proper permissions
-
-1) (Import install/install.sql into your new database) Currently DROP+CREATE
-
-2) Setup a JDBC pool. I took the simple driver:
-
-Pool name: ShopPool
-Resource type: java.sql.Driver
-Driver: MySQL
-Driver class: com.mysql.jdbc.Driver
-
-URL: jdbc:mysql://localhost/your_database
-user: your_login
-password: your_password
-
-3) Setup a JDBC resource:
-
-JNDI name: jdbc/shop
-Pool name: ShopPool
-
-4) Setup a JMS connection factory:
-
-JNDI name: jms/shopConnectionFactory
-Resource type: javax.jms.QueueConnectionFactory
-
-5) Setup a JMS destination resource:
-
-JNDI name: jms/shopCheckoutQueue
-Physical destination name: checkout
-Resource type: javax.jms.Queue
-
-You should be done now. And always try to give informative descriptions, not
-just only "shop" or "factory".
-
-Of course, you need to build and deploy the EAR/WAR files. ;-)
-
-6) In juser-core project you will find a JAR named "commons-codec-1.10.jar" you
- need to copy this to your $GLASSFISH_DOMAIN/lib/ path to make password
- encryption working. Please setup sufficient access rights (CHMOD 0644 is
- enough).
-
- If you forgot this file to copy and you have copied it now, please restart
- the Glassfish server so the JAR can be found and loaded.
+++ /dev/null
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- You may freely edit this file. See commented blocks below for -->
-<!-- some examples of how to customize the build. -->
-<!-- (If you delete it and reopen the project it will be recreated.) -->
-<!-- By default, only the Clean and Build commands use this build script. -->
-<!-- Commands such as Run, Debug, and Test only use this build script if -->
-<!-- the Compile on Save feature is turned off for the project. -->
-<!-- You can turn off the Compile on Save (or Deploy on Save) setting -->
-<!-- in the project's Project Properties dialog box.-->
-<project name="PizzaService-ejb" default="default" basedir="." xmlns:ejbjarproject="http://www.netbeans.org/ns/j2ee-ejbjarproject/3">
- <description>Builds, tests, and runs the project PizzaService-ejb.</description>
- <import file="nbproject/build-impl.xml"/>
- <!--
-
- There exist several targets which are by default empty and which can be
- used for execution of your tasks. These targets are usually executed
- before and after some main targets. They are:
-
- -pre-init: called before initialization of project properties
- -post-init: called after initialization of project properties
- -pre-compile: called before javac compilation
- -post-compile: called after javac compilation
- -pre-compile-single: called before javac compilation of single file
- -post-compile-single: called after javac compilation of single file
- -pre-dist: called before archive building
- -post-dist: called after archive building
- -post-clean: called after cleaning build products
- -pre-run-deploy: called before deploying
- -post-run-deploy: called after deploying
-
- (Targets beginning with '-' are not intended to be called on their own.)
-
- Example of pluging an obfuscator after the compilation could look like
-
- <target name="-post-compile">
- <obfuscate>
- <fileset dir="${build.classes.dir}"/>
- </obfuscate>
- </target>
-
- For list of available properties check the imported
- nbproject/build-impl.xml file.
-
-
- Other way how to customize the build is by overriding existing main targets.
- The target of interest are:
-
- init-macrodef-javac: defines macro for javac compilation
- init-macrodef-debug: defines macro for class debugging
- do-dist: archive building
- run: execution of project
- javadoc-build: javadoc generation
-
- Example of overriding the target for project execution could look like
-
- <target name="run" depends="<PROJNAME>-impl.jar">
- <exec dir="bin" executable="launcher.exe">
- <arg file="${dist.jar}"/>
- </exec>
- </target>
-
- Notice that overridden target depends on jar target and not only on
- compile target as regular run target does. Again, for list of available
- properties which you can use check the target you are overriding in
- nbproject/build-impl.xml file.
-
- -->
-</project>
+++ /dev/null
-libs.CopyLibs.classpath=\
- ${base}/CopyLibs/org-netbeans-modules-java-j2seproject-copylibstask.jar
-libs.CopyLibs.displayName=CopyLibs Task
-libs.CopyLibs.prop-version=2.0
-libs.eclipselink.classpath=\
- ${base}/eclipselink/eclipselink.jar;\
- ${base}/eclipselink/javax.persistence_2.1.0.v201304241213.jar;\
- ${base}/eclipselink/org.eclipse.persistence.jpa.jpql_2.5.2.v20140319-9ad6abd.jar
-libs.eclipselink.displayName=EclipseLink (JPA 2.1)
-libs.eclipselink.javadoc=
-libs.eclipselink.prop-maven-dependencies=\n org.eclipse.persistence:eclipselink:2.5.2:jar\n
-libs.eclipselinkmodelgen.classpath=\
- ${base}/eclipselinkmodelgen/org.eclipse.persistence.jpa.modelgen_2.5.2.v20140319-9ad6abd.jar
-libs.eclipselinkmodelgen.displayName=EclipseLink-ModelGen (JPA 2.1)
-libs.eclipselinkmodelgen.prop-maven-dependencies=org.eclipse.persistence:org.eclipse.persistence.jpa.modelgen.processor:2.5.2:jar
+++ /dev/null
-<?xml version="1.0" encoding="UTF-8"?>
-<project default="-deploy-ant" basedir=".">
- <target name="-init-cl-deployment-env" if="deploy.ant.enabled">
- <property file="${deploy.ant.properties.file}" />
- <available file="${deploy.ant.docbase.dir}/WEB-INF/sun-web.xml" property="sun.web.present"/>
- <available file="${deploy.ant.docbase.dir}/WEB-INF/glassfish-web.xml" property="glassfish.web.present"/>
- <available file="${deploy.ant.resource.dir}" property="has.setup"/>
- <tempfile prefix="gfv3" property="gfv3.password.file" destdir="${java.io.tmpdir}"/> <!-- do not forget to delete this! -->
- <echo message="AS_ADMIN_PASSWORD=${gfv3.password}" file="${gfv3.password.file}"/>
- </target>
-
- <target name="-parse-sun-web" depends="-init-cl-deployment-env" if="sun.web.present">
- <tempfile prefix="gfv3" property="temp.sun.web" destdir="${java.io.tmpdir}"/>
- <copy file="${deploy.ant.docbase.dir}/WEB-INF/sun-web.xml" tofile="${temp.sun.web}"/>
- <!-- The doctype triggers resolution which can fail -->
- <replace file="${temp.sun.web}">
- <replacetoken><![CDATA[<!DOCTYPE]]></replacetoken>
- <replacevalue><![CDATA[<!-- <!DOCTYPE]]></replacevalue>
- </replace>
- <replace file="${temp.sun.web}">
- <replacetoken><![CDATA[<sun-web-app]]></replacetoken>
- <replacevalue><![CDATA[--> <sun-web-app]]></replacevalue>
- </replace>
- <xmlproperty file="${temp.sun.web}" validate="false">
- </xmlproperty>
- <delete file="${temp.sun.web}"/>
- <condition property="deploy.ant.client.url" value="${gfv3.url}${sun-web-app.context-root}" else="${gfv3.url}/${ant.project.name}">
- <isset property="sun-web-app.context-root"/>
- </condition>
- <condition property="deploy.context.root.argument" value="&contextroot=${sun-web-app.context-root}" else="/${ant.project.name}">
- <isset property="sun-web-app.context-root"/>
- </condition>
- </target>
- <target name="-parse-glassfish-web" depends="-init-cl-deployment-env" if="glassfish.web.present">
- <tempfile prefix="gfv3" property="temp.gf.web" destdir="${java.io.tmpdir}"/>
- <copy file="${deploy.ant.docbase.dir}/WEB-INF/glassfish-web.xml" tofile="${temp.gf.web}"/>
- <!-- The doctype triggers resolution which can fail -->
- <replace file="${temp.gf.web}">
- <replacetoken><![CDATA[<!DOCTYPE]]></replacetoken>
- <replacevalue><![CDATA[<!-- <!DOCTYPE]]></replacevalue>
- </replace>
- <replace file="${temp.gf.web}">
- <replacetoken><![CDATA[<glassfish-web-app]]></replacetoken>
- <replacevalue><![CDATA[--> <glassfish-web-app]]></replacevalue>
- </replace>
- <xmlproperty file="${temp.gf.web}" validate="false">
- </xmlproperty>
- <delete file="${temp.gf.web}"/>
- <condition property="deploy.ant.client.url" value="${gfv3.url}${glassfish-web-app.context-root}" else="${gfv3.url}/${ant.project.name}">
- <isset property="glassfish-web-app.context-root"/>
- </condition>
- <condition property="deploy.context.root.argument" value="&contextroot=${glassfish-web-app.context-root}" else="/${ant.project.name}">
- <isset property="glassfish-web-app.context-root"/>
- </condition>
- </target>
- <target name="-no-parse-sun-web" depends="-init-cl-deployment-env" unless="sun.web.present">
- <property name="deploy.context.root.argument" value=""/>
- </target>
- <target name="-add-resources" depends="-init-cl-deployment-env" if="has.setup">
- <tempfile prefix="gfv3" property="gfv3.resources.dir" destdir="${java.io.tmpdir}"/>
- <mkdir dir="${gfv3.resources.dir}"/>
- <mkdir dir="${gfv3.resources.dir}/META-INF"/>
- <copy todir="${gfv3.resources.dir}/META-INF">
- <fileset dir="${deploy.ant.resource.dir}"/>
- </copy>
- <jar destfile="${deploy.ant.archive}" update="true">
- <fileset dir="${gfv3.resources.dir}"/>
- </jar>
- <delete dir="${gfv3.resources.dir}"/>
- </target>
- <target name="-deploy-ant" depends="-parse-glassfish-web, -parse-sun-web, -no-parse-sun-web,-add-resources" if="deploy.ant.enabled">
- <antcall target="-deploy-without-pw"/>
- <antcall target="-deploy-with-pw"/>
- </target>
-
- <target name="-deploy-without-pw" unless="gfv3.password">
- <echo message="Deploying ${deploy.ant.archive}"/>
- <tempfile prefix="gfv3" property="gfv3.results.file" destdir="${java.io.tmpdir}"/> <!-- do not forget to delete this! -->
- <property name="full.deploy.ant.archive" location="${deploy.ant.archive}"/>
- <get src="${gfv3.admin.url}/__asadmin/deploy?path=${full.deploy.ant.archive}${deploy.context.root.argument}&force=true&name=${ant.project.name}"
- dest="${gfv3.results.file}"/>
- <delete file="${gfv3.results.file}"/>
- </target>
- <target name="-deploy-with-pw" if="gfv3.password">
- <echo message="Deploying ${deploy.ant.archive}"/>
- <tempfile prefix="gfv3" property="gfv3.results.file" destdir="${java.io.tmpdir}"/> <!-- do not forget to delete this! -->
- <property name="full.deploy.ant.archive" location="${deploy.ant.archive}"/>
- <get username="${gfv3.username}" password="${gfv3.password}" src="${gfv3.admin.url}/__asadmin/deploy?path=${full.deploy.ant.archive}${deploy.context.root.argument}&force=true&name=${ant.project.name}"
- dest="${gfv3.results.file}"/>
- <delete file="${gfv3.results.file}"/>
- </target>
- <target name="-undeploy-ant" depends="-init-cl-deployment-env" if="deploy.ant.enabled">
- <antcall target="-undeploy-without-pw"/>
- <antcall target="-undeploy-with-pw"/>
- </target>
-
- <target name="-undeploy-without-pw" unless="gfv3.password">
- <echo message="Undeploying ${deploy.ant.archive}"/>
- <tempfile prefix="gfv3" property="gfv3.results.file" destdir="${java.io.tmpdir}"/> <!-- do not forget to delete this! -->
- <get src="${gfv3.admin.url}/__asadmin/undeploy?name=${ant.project.name}"
- dest="${gfv3.results.file}"/>
- <delete file="${gfv3.results.file}"/>
- </target>
- <target name="-undeploy-with-pw" if="gfv3.password">
- <echo message="Undeploying ${deploy.ant.archive}"/>
- <tempfile prefix="gfv3" property="gfv3.results.file" destdir="${java.io.tmpdir}"/> <!-- do not forget to delete this! -->
- <get username="${gfv3.username}" password="${gfv3.password}" src="${gfv3.admin.url}/__asadmin/undeploy?name=${ant.project.name}"
- dest="${gfv3.results.file}"/>
- <delete file="${gfv3.results.file}"/>
- </target>
-</project>
+++ /dev/null
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-*** GENERATED FROM project.xml - DO NOT EDIT ***
-*** EDIT ../build.xml INSTEAD ***
-
-For the purpose of easier reading the script
-is divided into following sections:
-
- - initialization
- - compilation
- - dist
- - execution
- - debugging
- - javadoc
- - cleanup
-
- -->
-<project xmlns:ejbjarproject1="http://www.netbeans.org/ns/j2ee-ejbjarproject/1" xmlns:ejbjarproject2="http://www.netbeans.org/ns/j2ee-ejbjarproject/2" xmlns:ejbjarproject3="http://www.netbeans.org/ns/j2ee-ejbjarproject/3" basedir=".." default="default" name="PizzaService-ejb-impl">
- <import file="ant-deploy.xml"/>
- <fail message="Please build using Ant 1.7.1 or higher.">
- <condition>
- <not>
- <antversion atleast="1.7.1"/>
- </not>
- </condition>
- </fail>
- <target depends="dist,javadoc" description="Build whole project." name="default"/>
- <!--
- INITIALIZATION SECTION
- -->
- <target name="-pre-init">
- <!-- Empty placeholder for easier customization. -->
- <!-- You can override this target in the ../build.xml file. -->
- </target>
- <target depends="-pre-init" name="-init-private">
- <property file="nbproject/private/private.properties"/>
- </target>
- <target name="-pre-init-libraries">
- <property location="lib/nblibraries.properties" name="libraries.path"/>
- <dirname file="${libraries.path}" property="libraries.dir.nativedirsep"/>
- <pathconvert dirsep="/" property="libraries.dir">
- <path path="${libraries.dir.nativedirsep}"/>
- </pathconvert>
- <basename file="${libraries.path}" property="libraries.basename" suffix=".properties"/>
- <available file="${libraries.dir}/${libraries.basename}-private.properties" property="private.properties.available"/>
- </target>
- <target depends="-pre-init-libraries" if="private.properties.available" name="-init-private-libraries">
- <loadproperties encoding="ISO-8859-1" srcfile="${libraries.dir}/${libraries.basename}-private.properties">
- <filterchain>
- <replacestring from="$${base}" to="${libraries.dir}"/>
- <escapeunicode/>
- </filterchain>
- </loadproperties>
- </target>
- <target depends="-pre-init,-init-private,-init-private-libraries" name="-init-libraries">
- <loadproperties encoding="ISO-8859-1" srcfile="${libraries.path}">
- <filterchain>
- <replacestring from="$${base}" to="${libraries.dir}"/>
- <escapeunicode/>
- </filterchain>
- </loadproperties>
- </target>
- <target depends="-pre-init,-init-private,-init-libraries" name="-init-userdir">
- <property location="${netbeans.user}/build.properties" name="user.properties.file"/>
- </target>
- <target depends="-pre-init,-init-private,-init-libraries,-init-userdir" name="-init-user">
- <property file="${user.properties.file}"/>
- <!-- The two properties below are usually overridden -->
- <!-- by the active platform. Just a fallback. -->
- <property name="default.javac.source" value="1.4"/>
- <property name="default.javac.target" value="1.4"/>
- </target>
- <target depends="-pre-init,-init-private,-init-libraries,-init-userdir,-init-user" name="-init-project">
- <property file="nbproject/project.properties"/>
- </target>
- <target depends="-pre-init,-init-private,-init-libraries,-init-userdir,-init-user,-init-project,-init-macrodef-property" name="-do-init">
- <!-- Ensure configuration directory exists. -->
- <mkdir dir="${meta.inf}"/>
- <property name="runmain.jvmargs" value=""/>
- <condition property="have.tests">
- <or>
- <available file="${test.src.dir}"/>
- </or>
- </condition>
- <condition property="have.sources">
- <or>
- <available file="${src.dir}"/>
- </or>
- </condition>
- <condition property="netbeans.home+have.tests">
- <and>
- <isset property="netbeans.home"/>
- <isset property="have.tests"/>
- </and>
- </condition>
- <condition property="no.javadoc.preview">
- <isfalse value="${javadoc.preview}"/>
- </condition>
- <available file="${meta.inf}/MANIFEST.MF" property="has.custom.manifest"/>
- <!--
- Variables needed to support directory deployment.
- -->
- <condition property="do.package.with.custom.manifest.not.directory.deploy">
- <and>
- <isset property="has.custom.manifest"/>
- <isfalse value="${directory.deployment.supported}"/>
- </and>
- </condition>
- <condition property="do.package.without.custom.manifest.not.directory.deploy">
- <and>
- <not>
- <isset property="has.custom.manifest"/>
- </not>
- <isfalse value="${directory.deployment.supported}"/>
- </and>
- </condition>
- <!--End Variables needed to support directory deployment.-->
- <condition property="classes.dir" value="${build.ear.classes.dir}">
- <isset property="dist.ear.dir"/>
- </condition>
- <property name="classes.dir" value="${build.classes.dir}"/>
- <condition property="no.deps">
- <and>
- <istrue value="${no.dependencies}"/>
- </and>
- </condition>
- <condition property="no.dist.ear.dir">
- <not>
- <isset property="dist.ear.dir"/>
- </not>
- </condition>
- <property name="source.encoding" value="${file.encoding}"/>
- <condition property="javadoc.encoding.used" value="${javadoc.encoding}">
- <and>
- <isset property="javadoc.encoding"/>
- <not>
- <equals arg1="${javadoc.encoding}" arg2=""/>
- </not>
- </and>
- </condition>
- <property name="javadoc.encoding.used" value="${source.encoding}"/>
- <property name="includes" value="**"/>
- <property name="excludes" value=""/>
- <path id="endorsed.classpath.path" path="${endorsed.classpath}"/>
- <condition else="" property="endorsed.classpath.cmd.line.arg" value="-Xbootclasspath/p:'${toString:endorsed.classpath.path}'">
- <and>
- <isset property="endorsed.classpath"/>
- <length length="0" string="${endorsed.classpath}" when="greater"/>
- </and>
- </condition>
- <condition property="is.server.weblogic" value="true">
- <equals arg1="${j2ee.server.type}" arg2="WebLogic9"/>
- </condition>
- <condition property="is.jars.in.ejbjar" value="true">
- <equals arg1="${jars.in.ejbjar}" arg2="true"/>
- </condition>
- <condition else="false" property="jdkBug6558476">
- <and>
- <matches pattern="1\.[56]" string="${java.specification.version}"/>
- <not>
- <os family="unix"/>
- </not>
- </and>
- </condition>
- <property name="javac.fork" value="${jdkBug6558476}"/>
- <condition property="junit.available">
- <or>
- <available classname="org.junit.Test" classpath="${run.test.classpath}"/>
- <available classname="junit.framework.Test" classpath="${run.test.classpath}"/>
- </or>
- </condition>
- <condition property="testng.available">
- <available classname="org.testng.annotations.Test" classpath="${run.test.classpath}"/>
- </condition>
- <condition property="junit+testng.available">
- <and>
- <istrue value="${junit.available}"/>
- <istrue value="${testng.available}"/>
- </and>
- </condition>
- <condition else="testng" property="testng.mode" value="mixed">
- <istrue value="${junit+testng.available}"/>
- </condition>
- <condition else="" property="testng.debug.mode" value="-mixed">
- <istrue value="${junit+testng.available}"/>
- </condition>
- </target>
- <target depends="init" name="-init-cos" unless="deploy.on.save">
- <condition property="deploy.on.save" value="true">
- <or>
- <istrue value="${j2ee.deploy.on.save}"/>
- <istrue value="${j2ee.compile.on.save}"/>
- </or>
- </condition>
- </target>
- <target name="-post-init">
- <!-- Empty placeholder for easier customization. -->
- <!-- You can override this target in the ../build.xml file. -->
- </target>
- <target depends="-pre-init,-init-private,-init-libraries,-init-userdir,-init-user,-init-project,-do-init" name="-init-check">
- <fail unless="src.dir">Must set src.dir</fail>
- <fail unless="test.src.dir">Must set test.src.dir</fail>
- <fail unless="build.dir">Must set build.dir</fail>
- <fail unless="build.generated.dir">Must set build.generated.dir</fail>
- <fail unless="dist.dir">Must set dist.dir</fail>
- <fail unless="build.classes.dir">Must set build.classes.dir</fail>
- <fail unless="dist.javadoc.dir">Must set dist.javadoc.dir</fail>
- <fail unless="build.classes.excludes">Must set build.classes.excludes</fail>
- <fail unless="dist.jar">Must set dist.jar</fail>
- <condition property="missing.j2ee.server.home">
- <and>
- <matches pattern="j2ee.server.home" string="${j2ee.platform.classpath}"/>
- <not>
- <isset property="j2ee.server.home"/>
- </not>
- </and>
- </condition>
- <fail if="missing.j2ee.server.home">
-The Java EE server classpath is not correctly set up - server home directory is missing.
-Either open the project in the IDE and assign the server or setup the server classpath manually.
-For example like this:
- ant -Dj2ee.server.home=<app_server_installation_directory>
- </fail>
- <fail unless="j2ee.platform.classpath">
-The Java EE server classpath is not correctly set up. Your active server type is ${j2ee.server.type}.
-Either open the project in the IDE and assign the server or setup the server classpath manually.
-For example like this:
- ant -Duser.properties.file=<path_to_property_file> (where you put the property "j2ee.platform.classpath" in a .properties file)
-or ant -Dj2ee.platform.classpath=<server_classpath> (where no properties file is used)
- </fail>
- </target>
- <target name="-init-macrodef-property">
- <macrodef name="property" uri="http://www.netbeans.org/ns/j2ee-ejbjarproject/1">
- <attribute name="name"/>
- <attribute name="value"/>
- <sequential>
- <property name="@{name}" value="${@{value}}"/>
- </sequential>
- </macrodef>
- </target>
- <target depends="-init-ap-cmdline-properties" if="ap.supported.internal" name="-init-macrodef-javac-with-processors">
- <macrodef name="javac" uri="http://www.netbeans.org/ns/j2ee-ejbjarproject/2">
- <attribute default="${src.dir}" name="srcdir"/>
- <attribute default="${build.classes.dir}" name="destdir"/>
- <attribute default="${javac.classpath}:${j2ee.platform.classpath}" name="classpath"/>
- <attribute default="${javac.processorpath}" name="processorpath"/>
- <attribute default="${build.generated.sources.dir}/ap-source-output" name="apgeneratedsrcdir"/>
- <attribute default="${includes}" name="includes"/>
- <attribute default="${excludes}" name="excludes"/>
- <attribute default="${javac.debug}" name="debug"/>
- <attribute default="${empty.dir}" name="gensrcdir"/>
- <element name="customize" optional="true"/>
- <sequential>
- <property name="javac.compilerargs" value=""/>
- <property location="${build.dir}/empty" name="empty.dir"/>
- <mkdir dir="${empty.dir}"/>
- <mkdir dir="@{apgeneratedsrcdir}"/>
- <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}">
- <src>
- <dirset dir="@{gensrcdir}" erroronmissingdir="false">
- <include name="*"/>
- </dirset>
- </src>
- <classpath>
- <path path="@{classpath}"/>
- </classpath>
- <compilerarg line="${endorsed.classpath.cmd.line.arg}"/>
- <compilerarg line="${javac.compilerargs}"/>
- <compilerarg value="-processorpath"/>
- <compilerarg path="@{processorpath}:${empty.dir}"/>
- <compilerarg line="${ap.processors.internal}"/>
- <compilerarg value="-s"/>
- <compilerarg path="@{apgeneratedsrcdir}"/>
- <compilerarg line="${ap.proc.none.internal}"/>
- <customize/>
- </javac>
- </sequential>
- </macrodef>
- </target>
- <target depends="-init-ap-cmdline-properties" name="-init-macrodef-javac-without-processors" unless="ap.supported.internal">
- <macrodef name="javac" uri="http://www.netbeans.org/ns/j2ee-ejbjarproject/2">
- <attribute default="${src.dir}" name="srcdir"/>
- <attribute default="${build.classes.dir}" name="destdir"/>
- <attribute default="${javac.classpath}:${j2ee.platform.classpath}" name="classpath"/>
- <attribute default="${javac.processorpath}" name="processorpath"/>
- <attribute default="${build.generated.sources.dir}/ap-source-output" name="apgeneratedsrcdir"/>
- <attribute default="${includes}" name="includes"/>
- <attribute default="${excludes}" name="excludes"/>
- <attribute default="${javac.debug}" name="debug"/>
- <attribute default="${empty.dir}" name="gensrcdir"/>
- <element name="customize" optional="true"/>
- <sequential>
- <property name="javac.compilerargs" value=""/>
- <property location="${build.dir}/empty" name="empty.dir"/>
- <mkdir dir="${empty.dir}"/>
- <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}">
- <src>
- <dirset dir="@{gensrcdir}" erroronmissingdir="false">
- <include name="*"/>
- </dirset>
- </src>
- <classpath>
- <path path="@{classpath}"/>
- </classpath>
- <compilerarg line="${endorsed.classpath.cmd.line.arg}"/>
- <compilerarg line="${javac.compilerargs}"/>
- <customize/>
- </javac>
- </sequential>
- </macrodef>
- </target>
- <target depends="-init-macrodef-javac-with-processors,-init-macrodef-javac-without-processors" name="-init-macrodef-javac">
- <macrodef name="depend" uri="http://www.netbeans.org/ns/j2ee-ejbjarproject/2">
- <attribute default="${src.dir}" name="srcdir"/>
- <attribute default="${build.classes.dir}" name="destdir"/>
- <attribute default="${javac.classpath}:${j2ee.platform.classpath}" name="classpath"/>
- <sequential>
- <depend cache="${build.dir}/depcache" destdir="@{destdir}" excludes="${excludes}" includes="${includes}" srcdir="@{srcdir}">
- <classpath>
- <path path="@{classpath}"/>
- </classpath>
- </depend>
- </sequential>
- </macrodef>
- <macrodef name="force-recompile" uri="http://www.netbeans.org/ns/j2ee-ejbjarproject/2">
- <attribute default="${build.classes.dir}" name="destdir"/>
- <sequential>
- <fail unless="javac.includes">Must set javac.includes</fail>
- <pathconvert pathsep="${line.separator}" property="javac.includes.binary">
- <path>
- <filelist dir="@{destdir}" files="${javac.includes}"/>
- </path>
- <globmapper from="*.java" to="*.class"/>
- </pathconvert>
- <tempfile deleteonexit="true" property="javac.includesfile.binary"/>
- <echo file="${javac.includesfile.binary}" message="${javac.includes.binary}"/>
- <delete>
- <files includesfile="${javac.includesfile.binary}"/>
- </delete>
- <delete file="${javac.includesfile.binary}"/>
- </sequential>
- </macrodef>
- </target>
- <target if="${junit.available}" name="-init-macrodef-junit-init">
- <condition else="false" property="nb.junit.batch" value="true">
- <and>
- <istrue value="${junit.available}"/>
- <not>
- <isset property="test.method"/>
- </not>
- </and>
- </condition>
- <condition else="false" property="nb.junit.single" value="true">
- <and>
- <istrue value="${junit.available}"/>
- <isset property="test.method"/>
- </and>
- </condition>
- </target>
- <target name="-init-test-properties">
- <property name="test.binaryincludes" value="<nothing>"/>
- <property name="test.binarytestincludes" value=""/>
- <property name="test.binaryexcludes" value=""/>
- </target>
- <target if="${nb.junit.single}" name="-init-macrodef-junit-single" unless="${nb.junit.batch}">
- <macrodef name="junit" uri="http://www.netbeans.org/ns/j2ee-ejbjarproject/2">
- <attribute default="${includes}" name="includes"/>
- <attribute default="${excludes}" name="excludes"/>
- <attribute default="**" name="testincludes"/>
- <attribute default="" name="testmethods"/>
- <element name="customize" optional="true"/>
- <sequential>
- <junit dir="${basedir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" showoutput="true" tempdir="${java.io.tmpdir}">
- <test methods="@{testmethods}" name="@{testincludes}" todir="${build.test.results.dir}"/>
- <syspropertyset>
- <propertyref prefix="test-sys-prop."/>
- <mapper from="test-sys-prop.*" to="*" type="glob"/>
- </syspropertyset>
- <formatter type="brief" usefile="false"/>
- <formatter type="xml"/>
- <jvmarg value="-ea"/>
- <customize/>
- </junit>
- </sequential>
- </macrodef>
- </target>
- <target depends="-init-test-properties" if="${nb.junit.batch}" name="-init-macrodef-junit-batch" unless="${nb.junit.single}">
- <macrodef name="junit" uri="http://www.netbeans.org/ns/j2ee-ejbjarproject/2">
- <attribute default="${includes}" name="includes"/>
- <attribute default="${excludes}" name="excludes"/>
- <attribute default="**" name="testincludes"/>
- <attribute default="" name="testmethods"/>
- <element name="customize" optional="true"/>
- <sequential>
- <property name="run.jvmargs.ide" value=""/>
- <junit dir="${basedir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" showoutput="true" tempdir="${build.dir}">
- <batchtest todir="${build.test.results.dir}">
- <fileset dir="${test.src.dir}" excludes="@{excludes},${excludes}" includes="@{includes}">
- <filename name="@{testincludes}"/>
- </fileset>
- <fileset dir="${build.test.classes.dir}" excludes="@{excludes},${excludes},${test.binaryexcludes}" includes="${test.binaryincludes}">
- <filename name="${test.binarytestincludes}"/>
- </fileset>
- </batchtest>
- <syspropertyset>
- <propertyref prefix="test-sys-prop."/>
- <mapper from="test-sys-prop.*" to="*" type="glob"/>
- </syspropertyset>
- <formatter type="brief" usefile="false"/>
- <formatter type="xml"/>
- <jvmarg value="-ea"/>
- <jvmarg line="${run.jvmargs.ide}"/>
- <customize/>
- </junit>
- </sequential>
- </macrodef>
- </target>
- <target depends="-init-macrodef-junit-init,-init-macrodef-junit-single, -init-macrodef-junit-batch" if="${junit.available}" name="-init-macrodef-junit"/>
- <target if="${testng.available}" name="-init-macrodef-testng">
- <macrodef name="testng" uri="http://www.netbeans.org/ns/j2ee-ejbjarproject/2">
- <attribute default="${includes}" name="includes"/>
- <attribute default="${excludes}" name="excludes"/>
- <attribute default="**" name="testincludes"/>
- <attribute default="" name="testmethods"/>
- <element name="customize" optional="true"/>
- <sequential>
- <condition else="" property="testng.methods.arg" value="@{testincludes}.@{testmethods}">
- <isset property="test.method"/>
- </condition>
- <union id="test.set">
- <fileset dir="${test.src.dir}" excludes="@{excludes},**/*.xml,${excludes}" includes="@{includes}">
- <filename name="@{testincludes}"/>
- </fileset>
- </union>
- <taskdef classname="org.testng.TestNGAntTask" classpath="${run.test.classpath}" name="testng"/>
- <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="PizzaService-ejb" testname="TestNG tests" workingDir="${basedir}">
- <xmlfileset dir="${build.test.classes.dir}" includes="@{testincludes}"/>
- <propertyset>
- <propertyref prefix="test-sys-prop."/>
- <mapper from="test-sys-prop.*" to="*" type="glob"/>
- </propertyset>
- <customize/>
- </testng>
- </sequential>
- </macrodef>
- </target>
- <target name="-init-macrodef-test-impl">
- <macrodef name="test-impl" uri="http://www.netbeans.org/ns/j2ee-ejbjarproject/2">
- <attribute default="${includes}" name="includes"/>
- <attribute default="${excludes}" name="excludes"/>
- <attribute default="**" name="testincludes"/>
- <attribute default="" name="testmethods"/>
- <element implicit="true" name="customize" optional="true"/>
- <sequential>
- <echo>No tests executed.</echo>
- </sequential>
- </macrodef>
- </target>
- <target depends="-init-macrodef-junit" if="${junit.available}" name="-init-macrodef-junit-impl">
- <macrodef name="test-impl" uri="http://www.netbeans.org/ns/j2ee-ejbjarproject/2">
- <attribute default="${includes}" name="includes"/>
- <attribute default="${excludes}" name="excludes"/>
- <attribute default="**" name="testincludes"/>
- <attribute default="" name="testmethods"/>
- <element implicit="true" name="customize" optional="true"/>
- <sequential>
- <ejbjarproject2:junit excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}">
- <customize/>
- </ejbjarproject2:junit>
- </sequential>
- </macrodef>
- </target>
- <target depends="-init-macrodef-testng" if="${testng.available}" name="-init-macrodef-testng-impl">
- <macrodef name="test-impl" uri="http://www.netbeans.org/ns/j2ee-ejbjarproject/2">
- <attribute default="${includes}" name="includes"/>
- <attribute default="${excludes}" name="excludes"/>
- <attribute default="**" name="testincludes"/>
- <attribute default="" name="testmethods"/>
- <element implicit="true" name="customize" optional="true"/>
- <sequential>
- <ejbjarproject2:testng excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}">
- <customize/>
- </ejbjarproject2:testng>
- </sequential>
- </macrodef>
- </target>
- <target depends="-init-macrodef-test-impl,-init-macrodef-junit-impl,-init-macrodef-testng-impl" name="-init-macrodef-test">
- <macrodef name="test" uri="http://www.netbeans.org/ns/j2ee-ejbjarproject/2">
- <attribute default="${includes}" name="includes"/>
- <attribute default="${excludes}" name="excludes"/>
- <attribute default="**" name="testincludes"/>
- <attribute default="" name="testmethods"/>
- <sequential>
- <ejbjarproject2:test-impl excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}">
- <customize>
- <classpath>
- <path path="${run.test.classpath}"/>
- <path path="${j2ee.platform.classpath}"/>
- <path path="${j2ee.platform.embeddableejb.classpath}"/>
- </classpath>
- <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
- <jvmarg line="${runmain.jvmargs}"/>
- </customize>
- </ejbjarproject2:test-impl>
- </sequential>
- </macrodef>
- </target>
- <target if="${junit.available}" name="-init-macrodef-junit-debug" unless="${nb.junit.batch}">
- <macrodef name="junit-debug" uri="http://www.netbeans.org/ns/j2ee-ejbjarproject/2">
- <attribute default="${includes}" name="includes"/>
- <attribute default="${excludes}" name="excludes"/>
- <attribute default="**" name="testincludes"/>
- <attribute default="" name="testmethods"/>
- <element name="customize" optional="true"/>
- <sequential>
- <junit dir="${basedir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" showoutput="true" tempdir="${java.io.tmpdir}">
- <test methods="@{testmethods}" name="@{testincludes}" todir="${build.test.results.dir}"/>
- <syspropertyset>
- <propertyref prefix="test-sys-prop."/>
- <mapper from="test-sys-prop.*" to="*" type="glob"/>
- </syspropertyset>
- <formatter type="brief" usefile="false"/>
- <formatter type="xml"/>
- <jvmarg value="-ea"/>
- <jvmarg line="${debug-args-line}"/>
- <jvmarg value="-Xrunjdwp:transport=${debug-transport},address=${jpda.address}"/>
- <customize/>
- </junit>
- </sequential>
- </macrodef>
- </target>
- <target depends="-init-test-properties" if="${nb.junit.batch}" name="-init-macrodef-junit-debug-batch">
- <macrodef name="junit-debug" uri="http://www.netbeans.org/ns/j2ee-ejbjarproject/2">
- <attribute default="${includes}" name="includes"/>
- <attribute default="${excludes}" name="excludes"/>
- <attribute default="**" name="testincludes"/>
- <attribute default="" name="testmethods"/>
- <element name="customize" optional="true"/>
- <sequential>
- <property name="run.jvmargs.ide" value=""/>
- <junit dir="${basedir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" showoutput="true" tempdir="${build.dir}">
- <batchtest todir="${build.test.results.dir}">
- <fileset dir="${test.src.dir}" excludes="@{excludes},${excludes}" includes="@{includes}">
- <filename name="@{testincludes}"/>
- </fileset>
- <fileset dir="${build.test.classes.dir}" excludes="@{excludes},${excludes},${test.binaryexcludes}" includes="${test.binaryincludes}">
- <filename name="${test.binarytestincludes}"/>
- </fileset>
- </batchtest>
- <syspropertyset>
- <propertyref prefix="test-sys-prop."/>
- <mapper from="test-sys-prop.*" to="*" type="glob"/>
- </syspropertyset>
- <formatter type="brief" usefile="false"/>
- <formatter type="xml"/>
- <jvmarg value="-ea"/>
- <jvmarg line="${run.jvmargs.ide}"/>
- <jvmarg line="${debug-args-line}"/>
- <jvmarg value="-Xrunjdwp:transport=${debug-transport},address=${jpda.address}"/>
- <customize/>
- </junit>
- </sequential>
- </macrodef>
- </target>
- <target depends="-init-macrodef-junit-debug,-init-macrodef-junit-debug-batch" if="${junit.available}" name="-init-macrodef-junit-debug-impl">
- <macrodef name="test-debug-impl" uri="http://www.netbeans.org/ns/j2ee-ejbjarproject/2">
- <attribute default="${includes}" name="includes"/>
- <attribute default="${excludes}" name="excludes"/>
- <attribute default="**" name="testincludes"/>
- <attribute default="" name="testmethods"/>
- <element implicit="true" name="customize" optional="true"/>
- <sequential>
- <ejbjarproject2:junit-debug excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}">
- <customize/>
- </ejbjarproject2:junit-debug>
- </sequential>
- </macrodef>
- </target>
- <target if="${testng.available}" name="-init-macrodef-testng-debug">
- <macrodef name="testng-debug" uri="http://www.netbeans.org/ns/j2ee-ejbjarproject/2">
- <attribute default="${main.class}" name="testClass"/>
- <attribute default="" name="testMethod"/>
- <element name="customize2" optional="true"/>
- <sequential>
- <condition else="-testclass @{testClass}" property="test.class.or.method" value="-methods @{testClass}.@{testMethod}">
- <isset property="test.method"/>
- </condition>
- <condition else="-suitename PizzaService-ejb -testname @{testClass} ${test.class.or.method}" property="testng.cmd.args" value="@{testClass}">
- <matches pattern=".*\.xml" string="@{testClass}"/>
- </condition>
- <delete dir="${build.test.results.dir}" quiet="true"/>
- <mkdir dir="${build.test.results.dir}"/>
- <ejbjarproject1:debug args="${testng.cmd.args}" classname="org.testng.TestNG" classpath="${debug.test.classpath}:${j2ee.platform.embeddableejb.classpath}">
- <customize>
- <customize2/>
- <jvmarg value="-ea"/>
- <arg line="${testng.debug.mode}"/>
- <arg line="-d ${build.test.results.dir}"/>
- <arg line="-listener org.testng.reporters.VerboseReporter"/>
- </customize>
- </ejbjarproject1:debug>
- </sequential>
- </macrodef>
- </target>
- <target depends="-init-macrodef-testng-debug" if="${testng.available}" name="-init-macrodef-testng-debug-impl">
- <macrodef name="testng-debug-impl" uri="http://www.netbeans.org/ns/j2ee-ejbjarproject/2">
- <attribute default="${main.class}" name="testClass"/>
- <attribute default="" name="testMethod"/>
- <element implicit="true" name="customize2" optional="true"/>
- <sequential>
- <ejbjarproject2:testng-debug testClass="@{testClass}" testMethod="@{testMethod}">
- <customize2/>
- </ejbjarproject2:testng-debug>
- </sequential>
- </macrodef>
- </target>
- <target depends="-init-macrodef-junit-debug-impl" if="${junit.available}" name="-init-macrodef-test-debug-junit">
- <macrodef name="test-debug" uri="http://www.netbeans.org/ns/j2ee-ejbjarproject/2">
- <attribute default="${includes}" name="includes"/>
- <attribute default="${excludes}" name="excludes"/>
- <attribute default="**" name="testincludes"/>
- <attribute default="" name="testmethods"/>
- <attribute default="${main.class}" name="testClass"/>
- <attribute default="" name="testMethod"/>
- <sequential>
- <ejbjarproject2:test-debug-impl excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}">
- <customize>
- <classpath>
- <path path="${run.test.classpath}"/>
- <path path="${j2ee.platform.classpath}"/>
- <path path="${j2ee.platform.embeddableejb.classpath}"/>
- </classpath>
- <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
- <jvmarg line="${runmain.jvmargs}"/>
- </customize>
- </ejbjarproject2:test-debug-impl>
- </sequential>
- </macrodef>
- </target>
- <target depends="-init-macrodef-testng-debug-impl" if="${testng.available}" name="-init-macrodef-test-debug-testng">
- <macrodef name="test-debug" uri="http://www.netbeans.org/ns/j2ee-ejbjarproject/2">
- <attribute default="${includes}" name="includes"/>
- <attribute default="${excludes}" name="excludes"/>
- <attribute default="**" name="testincludes"/>
- <attribute default="" name="testmethods"/>
- <attribute default="${main.class}" name="testClass"/>
- <attribute default="" name="testMethod"/>
- <sequential>
- <ejbjarproject2:testng-debug-impl testClass="@{testClass}" testMethod="@{testMethod}">
- <customize2>
- <syspropertyset>
- <propertyref prefix="test-sys-prop."/>
- <mapper from="test-sys-prop.*" to="*" type="glob"/>
- </syspropertyset>
- </customize2>
- </ejbjarproject2:testng-debug-impl>
- </sequential>
- </macrodef>
- </target>
- <target depends="-init-macrodef-test-debug-junit,-init-macrodef-test-debug-testng" name="-init-macrodef-test-debug"/>
- <target name="-init-macrodef-java">
- <macrodef name="java" uri="http://www.netbeans.org/ns/j2ee-ejbjarproject/3">
- <attribute default="${main.class}" name="classname"/>
- <element name="customize" optional="true"/>
- <sequential>
- <java classname="@{classname}" fork="true">
- <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
- <jvmarg line="${runmain.jvmargs}"/>
- <classpath>
- <path path="${build.classes.dir}:${javac.classpath}:${j2ee.platform.classpath}"/>
- </classpath>
- <syspropertyset>
- <propertyref prefix="run-sys-prop."/>
- <mapper from="run-sys-prop.*" to="*" type="glob"/>
- </syspropertyset>
- <customize/>
- </java>
- </sequential>
- </macrodef>
- </target>
- <target depends="-init-debug-args" name="-init-macrodef-nbjpda">
- <macrodef name="nbjpdastart" uri="http://www.netbeans.org/ns/j2ee-ejbjarproject/1">
- <attribute default="${main.class}" name="name"/>
- <attribute default="${debug.classpath}" name="classpath"/>
- <sequential>
- <nbjpdastart addressproperty="jpda.address" name="@{name}" transport="${debug-transport}">
- <classpath>
- <path path="@{classpath}"/>
- </classpath>
- </nbjpdastart>
- </sequential>
- </macrodef>
- <macrodef name="nbjpdareload" uri="http://www.netbeans.org/ns/j2ee-ejbjarproject/1">
- <attribute default="${build.classes.dir}" name="dir"/>
- <sequential>
- <nbjpdareload>
- <fileset dir="@{dir}" includes="${fix.classes}">
- <include name="${fix.includes}*.class"/>
- </fileset>
- </nbjpdareload>
- </sequential>
- </macrodef>
- <macrodef name="nbjpdaappreloaded" uri="http://www.netbeans.org/ns/j2ee-ejbjarproject/1">
- <sequential>
- <nbjpdaappreloaded/>
- </sequential>
- </macrodef>
- </target>
- <target name="-init-debug-args">
- <property name="version-output" value="java version "${ant.java.version}"/>
- <condition property="have-jdk-older-than-1.4">
- <or>
- <contains string="${version-output}" substring="java version "1.0"/>
- <contains string="${version-output}" substring="java version "1.1"/>
- <contains string="${version-output}" substring="java version "1.2"/>
- <contains string="${version-output}" substring="java version "1.3"/>
- </or>
- </condition>
- <condition else="-Xdebug" property="debug-args-line" value="-Xdebug -Xnoagent -Djava.compiler=none">
- <istrue value="${have-jdk-older-than-1.4}"/>
- </condition>
- <condition else="dt_socket" property="debug-transport-by-os" value="dt_shmem">
- <os family="windows"/>
- </condition>
- <condition else="${debug-transport-by-os}" property="debug-transport" value="${debug.transport}">
- <isset property="debug.transport"/>
- </condition>
- </target>
- <target depends="-init-debug-args" name="-init-macrodef-debug">
- <macrodef name="debug" uri="http://www.netbeans.org/ns/j2ee-ejbjarproject/1">
- <attribute default="${main.class}" name="classname"/>
- <attribute default="${debug.classpath}" name="classpath"/>
- <attribute default="${application.args}" name="args"/>
- <element name="customize" optional="true"/>
- <sequential>
- <java classname="@{classname}" fork="true">
- <jvmarg line="${debug-args-line}"/>
- <jvmarg value="-Xrunjdwp:transport=${debug-transport},address=${jpda.address}"/>
- <jvmarg line="${runmain.jvmargs}"/>
- <classpath>
- <path path="@{classpath}"/>
- </classpath>
- <arg line="@{args}"/>
- <customize/>
- </java>
- </sequential>
- </macrodef>
- </target>
- <target name="-init-taskdefs">
- <fail unless="libs.CopyLibs.classpath">
-The libs.CopyLibs.classpath property is not set up.
-This property must point to
-org-netbeans-modules-java-j2seproject-copylibstask.jar file which is part
-of NetBeans IDE installation and is usually located at
-<netbeans_installation>/java<version>/ant/extra folder.
-Either open the project in the IDE and make sure CopyLibs library
-exists or setup the property manually. For example like this:
- ant -Dlibs.CopyLibs.classpath=a/path/to/org-netbeans-modules-java-j2seproject-copylibstask.jar
- </fail>
- <taskdef classpath="${libs.CopyLibs.classpath}" resource="org/netbeans/modules/java/j2seproject/copylibstask/antlib.xml"/>
- </target>
- <target name="-init-ap-cmdline-properties">
- <property name="annotation.processing.enabled" value="true"/>
- <property name="annotation.processing.processors.list" value=""/>
- <property name="annotation.processing.run.all.processors" value="true"/>
- <property name="javac.processorpath" value="${javac.classpath}"/>
- <property name="javac.test.processorpath" value="${javac.test.classpath}"/>
- <condition property="ap.supported.internal" value="true">
- <not>
- <matches pattern="1\.[0-5](\..*)?" string="${javac.source}"/>
- </not>
- </condition>
- </target>
- <target depends="-init-ap-cmdline-properties" if="ap.supported.internal" name="-init-ap-cmdline-supported">
- <condition else="" property="ap.processors.internal" value="-processor ${annotation.processing.processors.list}">
- <isfalse value="${annotation.processing.run.all.processors}"/>
- </condition>
- <condition else="" property="ap.proc.none.internal" value="-proc:none">
- <isfalse value="${annotation.processing.enabled}"/>
- </condition>
- </target>
- <target depends="-init-ap-cmdline-properties,-init-ap-cmdline-supported" name="-init-ap-cmdline">
- <property name="ap.cmd.line.internal" value=""/>
- </target>
- <!--
- pre NB7.2 profiling section; consider it deprecated
- -->
- <target depends="-profile-pre-init, init, -profile-post-init, -profile-init-check" if="profiler.info.jvmargs.agent" name="profile-init"/>
- <target if="profiler.info.jvmargs.agent" name="-profile-pre-init">
- <!-- Empty placeholder for easier customization. -->
- <!-- You can override this target in the ../build.xml file. -->
- </target>
- <target if="profiler.info.jvmargs.agent" name="-profile-post-init">
- <!-- Empty placeholder for easier customization. -->
- <!-- You can override this target in the ../build.xml file. -->
- </target>
- <target depends="-profile-pre-init, init, -profile-post-init" if="profiler.info.jvmargs.agent" name="-profile-init-check">
- <fail unless="profiler.info.jvm">Must set JVM to use for profiling in profiler.info.jvm</fail>
- <fail unless="profiler.info.jvmargs.agent">Must set profiler agent JVM arguments in profiler.info.jvmargs.agent</fail>
- </target>
- <!--
- end of pre NB7.2 profiling section
- -->
- <target depends="-pre-init,-init-private,-init-userdir,-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-debug,-init-taskdefs,-init-ap-cmdline" name="init"/>
- <!--
- COMPILATION SECTION
- -->
- <target depends="init" if="no.dist.ear.dir" name="-deps-module-jar" unless="no.deps">
- <ant antfile="${project.PizzaService-lib}/build.xml" inheritall="false" target="jar">
- <property name="deploy.on.save" value="false"/>
- </ant>
- </target>
- <target depends="init" if="dist.ear.dir" name="-deps-ear-jar" unless="no.deps">
- <ant antfile="${project.PizzaService-lib}/build.xml" inheritall="false" target="jar">
- <property name="deploy.on.save" value="false"/>
- </ant>
- </target>
- <target depends="init, -deps-module-jar, -deps-ear-jar" name="deps-jar"/>
- <target depends="init,deps-jar" name="-pre-pre-compile">
- <mkdir dir="${build.classes.dir}"/>
- <mkdir dir="${build.ear.classes.dir}"/>
- </target>
- <target name="-pre-compile">
- <!-- Empty placeholder for easier customization. -->
- <!-- You can override this target in the ../build.xml file. -->
- </target>
- <target depends="compile,-library-inclusion-in-archive-weblogic,-library-inclusion-in-archive-by-user" name="library-inclusion-in-archive"/>
- <target if="is.jars.in.ejbjar" name="-library-inclusion-in-archive-by-user">
- <copyfiles files="${file.reference.jcountry-core.jar}" todir="${build.classes.dir}"/>
- <copyfiles files="${file.reference.jcountry-lib.jar}" todir="${build.classes.dir}"/>
- <copyfiles files="${file.reference.jcoreee.jar}" todir="${build.classes.dir}"/>
- <copyfiles files="${file.reference.jcore-logger-lib.jar}" todir="${build.classes.dir}"/>
- <copyfiles files="${reference.PizzaService-lib.jar}" todir="${build.classes.dir}"/>
- <copyfiles files="${file.reference.jcontacts-core.jar}" todir="${build.classes.dir}"/>
- <copyfiles files="${file.reference.jphone-core.jar}" todir="${build.classes.dir}"/>
- <copyfiles files="${file.reference.jphone-lib.jar}" todir="${build.classes.dir}"/>
- <copyfiles files="${file.reference.jshop-core.jar}" todir="${build.classes.dir}"/>
- <copyfiles files="${file.reference.jshop-ee-lib.jar}" todir="${build.classes.dir}"/>
- <copyfiles files="${file.reference.cdi-api.jar}" todir="${build.classes.dir}"/>
- </target>
- <target if="is.server.weblogic" name="-library-inclusion-in-archive-weblogic">
- <basename file="${file.reference.jcountry-core.jar}" property="manifest.file.reference.jcountry-core.jar"/>
- <basename file="${file.reference.jcountry-lib.jar}" property="manifest.file.reference.jcountry-lib.jar"/>
- <basename file="${file.reference.jcoreee.jar}" property="manifest.file.reference.jcoreee.jar"/>
- <basename file="${file.reference.jcore-logger-lib.jar}" property="manifest.file.reference.jcore-logger-lib.jar"/>
- <basename file="${reference.PizzaService-lib.jar}" property="manifest.reference.PizzaService-lib.jar"/>
- <basename file="${file.reference.jcontacts-core.jar}" property="manifest.file.reference.jcontacts-core.jar"/>
- <basename file="${file.reference.jphone-core.jar}" property="manifest.file.reference.jphone-core.jar"/>
- <basename file="${file.reference.jphone-lib.jar}" property="manifest.file.reference.jphone-lib.jar"/>
- <basename file="${file.reference.jshop-core.jar}" property="manifest.file.reference.jshop-core.jar"/>
- <basename file="${file.reference.jshop-ee-lib.jar}" property="manifest.file.reference.jshop-ee-lib.jar"/>
- <basename file="${file.reference.cdi-api.jar}" property="manifest.file.reference.cdi-api.jar"/>
- <manifest file="${build.ear.classes.dir}/META-INF/MANIFEST.MF" mode="update">
- <attribute name="Extension-List" value="jar-1 jar-2 jar-3 jar-4 jar-5 jar-6 jar-7 jar-8 jar-9 jar-10 jar-11 "/>
- <attribute name="jar-1-Extension-Name" value="${manifest.file.reference.jcountry-core.jar}"/>
- <attribute name="jar-2-Extension-Name" value="${manifest.file.reference.jcountry-lib.jar}"/>
- <attribute name="jar-3-Extension-Name" value="${manifest.file.reference.jcoreee.jar}"/>
- <attribute name="jar-4-Extension-Name" value="${manifest.file.reference.jcore-logger-lib.jar}"/>
- <attribute name="jar-5-Extension-Name" value="${manifest.reference.PizzaService-lib.jar}"/>
- <attribute name="jar-6-Extension-Name" value="${manifest.file.reference.jcontacts-core.jar}"/>
- <attribute name="jar-7-Extension-Name" value="${manifest.file.reference.jphone-core.jar}"/>
- <attribute name="jar-8-Extension-Name" value="${manifest.file.reference.jphone-lib.jar}"/>
- <attribute name="jar-9-Extension-Name" value="${manifest.file.reference.jshop-core.jar}"/>
- <attribute name="jar-10-Extension-Name" value="${manifest.file.reference.jshop-ee-lib.jar}"/>
- <attribute name="jar-11-Extension-Name" value="${manifest.file.reference.cdi-api.jar}"/>
- </manifest>
- </target>
- <target depends="compile" name="library-inclusion-in-manifest">
- <copyfiles files="${file.reference.jcountry-core.jar}" todir="${dist.ear.dir}/lib"/>
- <copyfiles files="${file.reference.jcountry-lib.jar}" todir="${dist.ear.dir}/lib"/>
- <copyfiles files="${file.reference.jcoreee.jar}" todir="${dist.ear.dir}/lib"/>
- <copyfiles files="${file.reference.jcore-logger-lib.jar}" todir="${dist.ear.dir}/lib"/>
- <copyfiles files="${reference.PizzaService-lib.jar}" todir="${dist.ear.dir}/lib"/>
- <copyfiles files="${file.reference.jcontacts-core.jar}" todir="${dist.ear.dir}/lib"/>
- <copyfiles files="${file.reference.jphone-core.jar}" todir="${dist.ear.dir}/lib"/>
- <copyfiles files="${file.reference.jphone-lib.jar}" todir="${dist.ear.dir}/lib"/>
- <copyfiles files="${file.reference.jshop-core.jar}" todir="${dist.ear.dir}/lib"/>
- <copyfiles files="${file.reference.jshop-ee-lib.jar}" todir="${dist.ear.dir}/lib"/>
- <copyfiles files="${file.reference.cdi-api.jar}" todir="${dist.ear.dir}/lib"/>
- <manifest file="${build.ear.classes.dir}/META-INF/MANIFEST.MF" mode="update"/>
- </target>
- <target name="-copy-meta-inf">
- <copy todir="${classes.dir}">
- <fileset dir="${meta.inf}" includes="**/*.dbschema"/>
- </copy>
- <copy todir="${classes.dir}/META-INF">
- <fileset dir="${meta.inf}" excludes="**/*.dbschema **/xml-resources/** ${meta.inf.excludes}"/>
- </copy>
- </target>
- <target depends="init,deps-jar,-pre-pre-compile,-pre-compile,-copy-meta-inf" if="have.sources" name="-do-compile">
- <ejbjarproject2:javac destdir="${classes.dir}" gensrcdir="${build.generated.sources.dir}"/>
- <copy todir="${classes.dir}">
- <fileset dir="${src.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
- </copy>
- </target>
- <target name="-post-compile">
- <!-- Empty placeholder for easier customization. -->
- <!-- You can override this target in the ../build.xml file. -->
- </target>
- <target depends="init,deps-jar,-pre-pre-compile,-pre-compile,-do-compile,-post-compile" description="Compile project." name="compile"/>
- <target name="-pre-compile-single">
- <!-- Empty placeholder for easier customization. -->
- <!-- You can override this target in the ../build.xml file. -->
- </target>
- <target depends="init,deps-jar,-pre-pre-compile" name="-do-compile-single">
- <fail unless="javac.includes">Must select some files in the IDE or set javac.includes</fail>
- <ejbjarproject2:javac excludes="" gensrcdir="${build.generated.sources.dir}" includes="${javac.includes}"/>
- </target>
- <target name="-post-compile-single">
- <!-- Empty placeholder for easier customization. -->
- <!-- You can override this target in the ../build.xml file. -->
- </target>
- <target depends="init,deps-jar,-pre-pre-compile,-pre-compile-single,-do-compile-single,-post-compile-single" name="compile-single"/>
- <!--
- DIST BUILDING SECTION
- -->
- <target name="-pre-dist">
- <!-- Empty placeholder for easier customization. -->
- <!-- You can override this target in the ../build.xml file. -->
- </target>
- <target depends="init,compile,-pre-dist,library-inclusion-in-archive" if="has.custom.manifest" name="-do-dist-with-manifest">
- <dirname file="${dist.jar}" property="dist.jar.dir"/>
- <mkdir dir="${dist.jar.dir}"/>
- <jar compress="${jar.compress}" jarfile="${dist.jar}" manifest="${build.classes.dir}/META-INF/MANIFEST.MF">
- <fileset dir="${build.classes.dir}"/>
- </jar>
- </target>
- <target depends="init,compile,-pre-dist,library-inclusion-in-archive" name="-do-dist-without-manifest" unless="has.custom.manifest">
- <dirname file="${dist.jar}" property="dist.jar.dir"/>
- <mkdir dir="${dist.jar.dir}"/>
- <jar compress="${jar.compress}" jarfile="${dist.jar}">
- <fileset dir="${build.classes.dir}"/>
- </jar>
- </target>
- <!--
- TARGETS NEEDED TO SUPPORT DIRECTORY DEPLOYMENT
- -->
- <target depends="init,compile,-pre-dist,library-inclusion-in-archive" if="do.package.with.custom.manifest.not.directory.deploy" name="-do-tmp-dist-with-manifest">
- <dirname file="${dist.jar}" property="dist.jar.dir"/>
- <mkdir dir="${dist.jar.dir}"/>
- <jar compress="${jar.compress}" jarfile="${dist.jar}" manifest="${build.classes.dir}/META-INF/MANIFEST.MF">
- <fileset dir="${build.classes.dir}"/>
- </jar>
- </target>
- <target depends="init,compile,-pre-dist,library-inclusion-in-archive" if="do.package.without.custom.manifest.not.directory.deploy" name="-do-tmp-dist-without-manifest">
- <dirname file="${dist.jar}" property="dist.jar.dir"/>
- <mkdir dir="${dist.jar.dir}"/>
- <jar compress="${jar.compress}" jarfile="${dist.jar}">
- <fileset dir="${build.classes.dir}"/>
- </jar>
- </target>
- <target depends="init,compile,-pre-dist,library-inclusion-in-archive, -do-tmp-dist-without-manifest, -do-tmp-dist-with-manifest" name="-do-dist-directory-deploy"/>
- <target depends="init,compile,-pre-dist,-do-dist-directory-deploy,-post-dist" description="Build distribution (JAR) - if directory deployment is not supported." name="dist-directory-deploy"/>
- <!--
- END TARGETS NEEDED TO SUPPORT DIRECTORY DEPLOYMENT
- -->
- <target depends="init,compile,-pre-dist,library-inclusion-in-archive, -do-dist-without-manifest, -do-dist-with-manifest" name="-do-dist"/>
- <target depends="init,compile,-pre-dist,library-inclusion-in-manifest" name="-do-ear-dist">
- <dirname file="${dist.ear.jar}" property="dist.jar.dir"/>
- <mkdir dir="${dist.jar.dir}"/>
- <jar compress="${jar.compress}" jarfile="${dist.ear.jar}" manifest="${build.ear.classes.dir}/META-INF/MANIFEST.MF">
- <fileset dir="${build.ear.classes.dir}"/>
- </jar>
- </target>
- <target name="-post-dist">
- <!-- Empty placeholder for easier customization. -->
- <!-- You can override this target in the ../build.xml file. -->
- </target>
- <target depends="init,compile,-pre-dist,-do-dist,-post-dist" description="Build distribution (JAR)." name="dist"/>
- <target depends="init,-init-cos,compile,-pre-dist,-do-ear-dist,-post-dist" description="Build distribution (JAR) to be packaged into an EAR." name="dist-ear"/>
- <!--
- EXECUTION SECTION
- -->
- <target depends="run-deploy" description="Deploy to server." name="run"/>
- <target name="-init-deploy">
- <property name="include.jar.manifest" value=""/>
- </target>
- <target name="pre-run-deploy">
- <!-- Empty placeholder for easier customization. -->
- <!-- You can override this target in the ../build.xml file. -->
- </target>
- <target name="post-run-deploy">
- <!-- Empty placeholder for easier customization. -->
- <!-- You can override this target in the ../build.xml file. -->
- </target>
- <target name="-pre-nbmodule-run-deploy">
- <!-- Empty placeholder for easier customization. -->
- <!-- This target can be overriden by NetBeans modules. Don't override it directly, use -pre-run-deploy task instead. -->
- </target>
- <target name="-post-nbmodule-run-deploy">
- <!-- Empty placeholder for easier customization. -->
- <!-- This target can be overriden by NetBeans modules. Don't override it directly, use -post-run-deploy task instead. -->
- </target>
- <target name="-run-deploy-am">
- <!-- Task to deploy to the Access Manager runtime. -->
- </target>
- <target depends="init,-init-cos,-init-deploy,compile,library-inclusion-in-archive,dist-directory-deploy,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"/>
- <target if="netbeans.home" name="-run-deploy-nb">
- <nbdeploy debugmode="false" forceRedeploy="${forceRedeploy}"/>
- </target>
- <target name="-init-deploy-ant" unless="netbeans.home">
- <property name="deploy.ant.archive" value="${dist.jar}"/>
- <property name="deploy.ant.resource.dir" value="${resource.dir}"/>
- <property name="deploy.ant.enabled" value="true"/>
- </target>
- <target depends="dist,-run-undeploy-nb,-init-deploy-ant,-undeploy-ant" name="run-undeploy"/>
- <target if="netbeans.home" name="-run-undeploy-nb">
- <fail message="Undeploy is not supported from within the IDE"/>
- </target>
- <target depends="dist" name="verify">
- <nbverify file="${dist.jar}"/>
- </target>
- <target depends="init,compile-single" name="run-main">
- <fail unless="run.class">Must select one file in the IDE or set run.class</fail>
- <ejbjarproject3:java classname="${run.class}"/>
- </target>
- <target depends="init" if="netbeans.home" name="-do-update-breakpoints">
- <ejbjarproject1:nbjpdaappreloaded/>
- </target>
- <!--
- DEBUGGING SECTION
- -->
- <target depends="init,compile,dist-directory-deploy" description="Debug project in IDE." if="netbeans.home" name="debug">
- <nbdeploy debugmode="true"/>
- <antcall target="connect-debugger"/>
- </target>
- <target name="connect-debugger" unless="is.debugged">
- <condition property="listeningcp" value="sourcepath">
- <istrue value="${j2ee.compile.on.save}"/>
- </condition>
- <nbjpdaconnect address="${jpda.address}" host="${jpda.host}" listeningcp="${listeningcp}" name="${name}" transport="${jpda.transport}">
- <classpath>
- <path path="${debug.classpath}"/>
- </classpath>
- <sourcepath>
- <path path="${web.docbase.dir}"/>
- </sourcepath>
- </nbjpdaconnect>
- </target>
- <target depends="init" if="netbeans.home" name="-debug-start-debugger">
- <ejbjarproject1:nbjpdastart/>
- </target>
- <target depends="init,compile-single" if="netbeans.home" name="-debug-start-debuggee-single">
- <fail unless="main.class">Must select one file in the IDE or set main.class</fail>
- <ejbjarproject1:debug/>
- </target>
- <target depends="init,compile-single,-debug-start-debugger,-debug-start-debuggee-single" if="netbeans.home" name="debug-single-main"/>
- <target depends="init" name="-pre-debug-fix">
- <fail unless="fix.includes">Must set fix.includes</fail>
- <property name="javac.includes" value="${fix.includes}.java"/>
- </target>
- <target depends="init,-pre-debug-fix,compile-single" if="netbeans.home" name="-do-debug-fix">
- <ejbjarproject1:nbjpdareload/>
- </target>
- <target depends="init,-pre-debug-fix,-do-debug-fix" if="netbeans.home" name="debug-fix"/>
- <!--
- =================
- PROFILING SECTION
- =================
- -->
- <!--
- pre NB7.2 profiling section; consider it deprecated
- -->
- <target description="Profile a J2EE project in the IDE." if="profiler.info.jvmargs.agent" name="-profile-pre72">
- <fail unless="netbeans.home">This target only works when run from inside the NetBeans IDE.</fail>
- <condition else="start-profiled-server" property="profiler.startserver.target" value="start-profiled-server-extraargs">
- <isset property="profiler.info.jvmargs.extra"/>
- </condition>
- <antcall target="${profiler.startserver.target}"/>
- <antcall target="run"/>
- <antcall target="-profile-start-loadgen"/>
- </target>
- <target depends="profile-init,compile-test-single" if="profiler.info.jvmargs.agent" name="-profile-test-single-pre72">
- <fail unless="netbeans.home">This target only works when run from inside the NetBeans IDE.</fail>
- <nbprofiledirect>
- <classpath>
- <path path="${run.test.classpath}"/>
- <path path="${j2ee.platform.classpath}"/>
- </classpath>
- </nbprofiledirect>
- <junit dir="${profiler.info.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" jvm="${profiler.info.jvm}" showoutput="true">
- <env key="${profiler.info.pathvar}" path="${profiler.info.agentpath}:${profiler.current.path}"/>
- <jvmarg value="${profiler.info.jvmargs.agent}"/>
- <jvmarg line="${profiler.info.jvmargs}"/>
- <test name="${profile.class}"/>
- <classpath>
- <path path="${run.test.classpath}"/>
- <path path="${j2ee.platform.classpath}"/>
- </classpath>
- <syspropertyset>
- <propertyref prefix="test-sys-prop."/>
- <mapper from="test-sys-prop.*" to="*" type="glob"/>
- </syspropertyset>
- <formatter type="brief" usefile="false"/>
- <formatter type="xml"/>
- </junit>
- </target>
- <target name="start-profiled-server">
- <nbstartprofiledserver forceRestart="${profiler.j2ee.serverForceRestart}" javaPlatform="${profiler.info.javaPlatform}" startupTimeout="${profiler.j2ee.serverStartupTimeout}">
- <jvmarg value="${profiler.info.jvmargs.agent}"/>
- <jvmarg value="${profiler.j2ee.agentID}"/>
- </nbstartprofiledserver>
- </target>
- <target name="start-profiled-server-extraargs">
- <nbstartprofiledserver forceRestart="${profiler.j2ee.serverForceRestart}" javaPlatform="${profiler.info.javaPlatform}" startupTimeout="${profiler.j2ee.serverStartupTimeout}">
- <jvmarg value="${profiler.info.jvmargs.extra}"/>
- <jvmarg value="${profiler.info.jvmargs.agent}"/>
- <jvmarg value="${profiler.j2ee.agentID}"/>
- </nbstartprofiledserver>
- </target>
- <!--
- end of pre NB7.2 profiling section
- -->
- <target if="netbeans.home" name="-profile-check">
- <condition property="profiler.configured">
- <or>
- <contains casesensitive="true" string="${run.jvmargs.ide}" substring="-agentpath:"/>
- <contains casesensitive="true" string="${run.jvmargs.ide}" substring="-javaagent:"/>
- </or>
- </condition>
- </target>
- <target depends="init,compile,dist-directory-deploy" name="-do-profile">
- <startprofiler/>
- <nbstartserver profilemode="true"/>
- <nbdeploy clientUrlPart="$" forceRedeploy="true" profilemode="true"/>
- <antcall target="-profile-start-loadgen"/>
- </target>
- <target depends="-profile-check,-profile-pre72" description="Profile a J2EE project in the IDE." if="profiler.configured" name="profile" unless="profiler.info.jvmargs.agent">
- <antcall target="-do-profile"/>
- </target>
- <target depends="-profile-test-single-pre72" name="profile-test-single"/>
- <target depends="-profile-check" if="profiler.configured" name="profile-test" unless="profiler.info.jvmargs.agent">
- <startprofiler/>
- <antcall target="test-single"/>
- </target>
- <target if="profiler.loadgen.path" name="-profile-start-loadgen">
- <loadgenstart path="${profiler.loadgen.path}"/>
- </target>
- <!--
- JAVADOC SECTION
- -->
- <target depends="init" if="have.sources" name="javadoc-build">
- <mkdir dir="${dist.javadoc.dir}"/>
- <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}">
- <classpath>
- <path path="${javac.classpath}:${j2ee.platform.classpath}"/>
- </classpath>
- <fileset dir="${src.dir}" excludes="${excludes}" includes="${includes}">
- <filename name="**/*.java"/>
- </fileset>
- <fileset dir="${build.generated.sources.dir}" erroronmissingdir="false">
- <include name="**/*.java"/>
- </fileset>
- </javadoc>
- <copy todir="${dist.javadoc.dir}">
- <fileset dir="${src.dir}" excludes="${excludes}" includes="${includes}">
- <filename name="**/doc-files/**"/>
- </fileset>
- <fileset dir="${build.generated.sources.dir}" erroronmissingdir="false">
- <include name="**/doc-files/**"/>
- </fileset>
- </copy>
- </target>
- <target depends="init,javadoc-build" if="netbeans.home" name="javadoc-browse" unless="no.javadoc.preview">
- <nbbrowse file="${dist.javadoc.dir}/index.html"/>
- </target>
- <target depends="init,javadoc-build,javadoc-browse" description="Build Javadoc." name="javadoc"/>
- <!--
- TEST COMPILATION SECTION
- -->
- <target depends="init,compile" if="have.tests" name="-pre-pre-compile-test">
- <mkdir dir="${build.test.classes.dir}"/>
- <property name="j2ee.platform.embeddableejb.classpath" value=""/>
- </target>
- <target name="-pre-compile-test">
- <!-- Empty placeholder for easier customization. -->
- <!-- You can override this target in the ../build.xml file. -->
- </target>
- <target depends="init,compile,-pre-pre-compile-test,-pre-compile-test" if="have.tests" name="-do-compile-test">
- <ejbjarproject2:javac classpath="${javac.test.classpath}:${j2ee.platform.classpath}:${j2ee.platform.embeddableejb.classpath}" debug="true" destdir="${build.test.classes.dir}" srcdir="${test.src.dir}"/>
- <copy todir="${build.test.classes.dir}">
- <fileset dir="${test.src.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
- </copy>
- </target>
- <target name="-post-compile-test">
- <!-- Empty placeholder for easier customization. -->
- <!-- You can override this target in the ../build.xml file. -->
- </target>
- <target depends="init,compile,-pre-pre-compile-test,-pre-compile-test,-do-compile-test,-post-compile-test" name="compile-test"/>
- <target name="-pre-compile-test-single">
- <!-- Empty placeholder for easier customization. -->
- <!-- You can override this target in the ../build.xml file. -->
- </target>
- <target depends="init,compile,-pre-pre-compile-test,-pre-compile-test-single" if="have.tests" name="-do-compile-test-single">
- <fail unless="javac.includes">Must select some files in the IDE or set javac.includes</fail>
- <ejbjarproject2: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}"/>
- </target>
- <target name="-post-compile-test-single">
- <!-- Empty placeholder for easier customization. -->
- <!-- You can override this target in the ../build.xml file. -->
- </target>
- <target depends="init,compile,-pre-pre-compile-test,-pre-compile-test-single,-do-compile-test-single,-post-compile-test-single" name="compile-test-single"/>
- <!--
- TEST EXECUTION SECTION
- -->
- <target depends="init" if="have.tests" name="-pre-test-run">
- <mkdir dir="${build.test.results.dir}"/>
- </target>
- <target depends="init,compile-test,-pre-test-run" if="have.tests" name="-do-test-run">
- <ejbjarproject2:test includes="${includes}" testincludes="**/*Test.java"/>
- </target>
- <target depends="init,compile-test,-pre-test-run,-do-test-run" if="have.tests" name="-post-test-run">
- <fail if="tests.failed" unless="ignore.failing.tests">Some tests failed; see details above.</fail>
- </target>
- <target depends="init" if="have.tests" name="test-report"/>
- <target depends="init" if="netbeans.home+have.tests" name="-test-browse"/>
- <target depends="init,compile-test,-pre-test-run,-do-test-run,test-report,-post-test-run,-test-browse" description="Run unit tests." name="test"/>
- <target depends="init" if="have.tests" name="-pre-test-run-single">
- <mkdir dir="${build.test.results.dir}"/>
- </target>
- <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-do-test-run-single">
- <fail unless="test.includes">Must select some files in the IDE or set test.includes</fail>
- <ejbjarproject2:test excludes="" includes="${test.includes}" testincludes="${test.includes}"/>
- </target>
- <target depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single" if="have.tests" name="-post-test-run-single">
- <fail if="tests.failed" unless="ignore.failing.tests">Some tests failed; see details above.</fail>
- </target>
- <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"/>
- <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-do-test-run-single-method">
- <fail unless="test.class">Must select some files in the IDE or set test.class</fail>
- <fail unless="test.method">Must select some method in the IDE or set test.method</fail>
- <ejbjarproject2:test excludes="" includes="${javac.includes}" testincludes="${test.class}" testmethods="${test.method}"/>
- </target>
- <target depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single-method" if="have.tests" name="-post-test-run-single-method">
- <fail if="tests.failed" unless="ignore.failing.tests">Some tests failed; see details above.</fail>
- </target>
- <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"/>
- <!--
- TEST DEBUGGING SECTION
- -->
- <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-debug-start-debuggee-test">
- <fail unless="test.class">Must select one file in the IDE or set test.class</fail>
- <ejbjarproject2:test-debug excludes="" includes="${javac.includes}" testClass="${test.class}" testincludes="${javac.includes}"/>
- </target>
- <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-debug-start-debuggee-test-method">
- <fail unless="test.class">Must select one file in the IDE or set test.class</fail>
- <fail unless="test.method">Must select some method in the IDE or set test.method</fail>
- <ejbjarproject2:test-debug excludes="" includes="${javac.includes}" testClass="${test.class}" testMethod="${test.method}" testincludes="${test.class}" testmethods="${test.method}"/>
- </target>
- <target depends="init,compile-test" if="netbeans.home+have.tests" name="-debug-start-debugger-test">
- <ejbjarproject1:nbjpdastart classpath="${debug.test.classpath}" name="${test.class}"/>
- </target>
- <target depends="init,compile-test,-debug-start-debugger-test,-debug-start-debuggee-test" name="debug-test"/>
- <target depends="init,compile-test-single,-debug-start-debugger-test,-debug-start-debuggee-test-method" name="debug-test-method"/>
- <target depends="init,-pre-debug-fix,compile-test-single" if="netbeans.home" name="-do-debug-fix-test">
- <ejbjarproject1:nbjpdareload dir="${build.test.classes.dir}"/>
- </target>
- <target depends="init,-pre-debug-fix,-do-debug-fix-test" if="netbeans.home" name="debug-fix-test"/>
- <!--
- CLEANUP SECTION
- -->
- <target depends="init" name="deps-clean" unless="no.deps">
- <ant antfile="${project.PizzaService-lib}/build.xml" inheritall="false" target="clean"/>
- </target>
- <target depends="init" name="-do-clean">
- <delete dir="${build.dir}"/>
- <delete dir="${dist.dir}"/>
- </target>
- <target name="-post-clean">
- <!-- Empty placeholder for easier customization. -->
- <!-- You can override this target in the ../build.xml file. -->
- </target>
- <target depends="init" if="netbeans.home" name="undeploy-clean">
- <nbundeploy failOnError="false" startServer="false"/>
- </target>
- <target depends="init,undeploy-clean,deps-clean,-do-clean,-post-clean" description="Clean build products." name="clean"/>
- <target depends="clean" name="clean-ear"/>
-</project>
+++ /dev/null
-build.xml.data.CRC32=0427eba4
-build.xml.script.CRC32=cabe2e92
-build.xml.stylesheet.CRC32=5910fda3@1.51.1
-# This file is used by a NetBeans-based IDE to track changes in generated files such as build-impl.xml.
-# Do not edit this file. You may delete it but then the IDE will never regenerate such files for you.
-nbproject/build-impl.xml.data.CRC32=6890d152
-nbproject/build-impl.xml.script.CRC32=5087c2fa
-nbproject/build-impl.xml.stylesheet.CRC32=6096d939@1.55.1
+++ /dev/null
-annotation.processing.enabled=true
-annotation.processing.enabled.in.editor=true
-annotation.processing.processor.options=-Aeclipselink.canonicalmodel.use_static_factory=false
-annotation.processing.processors.list=
-annotation.processing.run.all.processors=true
-annotation.processing.source.output=${build.generated.sources.dir}/ap-source-output
-build.classes.dir=${build.dir}/classes
-build.classes.excludes=**/*.java,**/*.form,**/.nbattrs
-build.dir=build
-build.ear.classes.dir=${build.dir}/classes
-build.generated.dir=${build.dir}/generated
-build.generated.sources.dir=${build.dir}/generated-sources
-build.test.classes.dir=${build.dir}/test/classes
-build.test.results.dir=${build.dir}/test/results
-debug.classpath=${javac.classpath}:${build.classes.dir}
-debug.test.classpath=\
- ${run.test.classpath}
-dist.dir=dist
-dist.ear.jar=${dist.dir}/${jar.name}
-dist.jar=${dist.dir}/${jar.name}
-dist.javadoc.dir=${dist.dir}/javadoc
-endorsed.classpath=
-excludes=
-file.reference.cdi-api.jar=lib/cdi-api.jar
-file.reference.jcontacts-core.jar=lib/jcontacts-core.jar
-file.reference.jcore-logger-lib.jar=lib/jcore-logger-lib.jar
-file.reference.jcoreee.jar=lib/jcoreee.jar
-file.reference.jcountry-core.jar=lib/jcountry-core.jar
-file.reference.jcountry-lib.jar=lib/jcountry-lib.jar
-file.reference.jphone-core.jar=lib/jphone-core.jar
-file.reference.jphone-lib.jar=lib/jphone-lib.jar
-file.reference.jshop-core.jar=lib/jshop-core.jar
-file.reference.jshop-ee-lib.jar=lib/jshop-ee-lib.jar
-includes=**
-j2ee.compile.on.save=true
-j2ee.deploy.on.save=true
-j2ee.platform=1.7
-j2ee.platform.classpath=${j2ee.server.home}/modules/endorsed/javax.annotation-api.jar:${j2ee.server.home}/modules/endorsed/webservices-api-osgi.jar:${j2ee.server.home}/modules/endorsed/jaxb-api.jar:${j2ee.server.home}/modules/javax.batch-api.jar:${j2ee.server.home}/modules/javax.security.auth.message-api.jar:${j2ee.server.home}/modules/javax.faces.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jstl-api.jar:${j2ee.server.home}/modules/javax.transaction-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jar:${j2ee.server.home}/modules/webservices-osgi.jar:${j2ee.server.home}/modules/javax.mail.jar:${j2ee.server.home}/modules/javax.interceptor-api.jar:${j2ee.server.home}/modules/javax.inject.jar:${j2ee.server.home}/modules/javax.resource-api.jar:${j2ee.server.home}/modules/javax.enterprise.concurrent-api.jar:${j2ee.server.home}/modules/javax.el.jar:${j2ee.server.home}/modules/javax.ejb-api.jar:${j2ee.server.home}/modules/javax.xml.rpc-api.jar:${j2ee.server.home}/modules/javax.security.jacc-api.jar:${j2ee.server.home}/modules/javax.json.jar:${j2ee.server.home}/modules/javax.xml.registry-api.jar:${j2ee.server.home}/modules/javax.websocket-api.jar:${j2ee.server.home}/modules/javax.management.j2ee-api.jar:${j2ee.server.home}/modules/javax.servlet-api.jar:${j2ee.server.home}/modules/javax.jms-api.jar:${j2ee.server.home}/modules/javax.enterprise.concurrent.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jstl.jar:${j2ee.server.home}/modules/javax.enterprise.deploy-api.jar:${j2ee.server.home}/modules/bean-validator.jar:${j2ee.server.home}/modules/javax.ws.rs-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp-api.jar:${j2ee.server.home}/modules/jaxb-osgi.jar:${j2ee.server.home}/modules/cdi-api.jar:${j2ee.server.home}/modules/weld-osgi-bundle.jar:${j2ee.server.home}/modules/javax.persistence.jar:${j2ee.server.middleware}/mq/lib/jaxm-api.jar
-j2ee.platform.embeddableejb.classpath=${j2ee.server.home}/lib/embedded/glassfish-embedded-static-shell.jar
-j2ee.platform.wscompile.classpath=${j2ee.server.home}/modules/webservices-osgi.jar
-j2ee.platform.wsgen.classpath=${j2ee.server.home}/modules/webservices-osgi.jar:${j2ee.server.home}/modules/endorsed/webservices-api-osgi.jar:${j2ee.server.home}/modules/jaxb-osgi.jar:${j2ee.server.home}/modules/endorsed/jaxb-api.jar
-j2ee.platform.wsimport.classpath=${j2ee.server.home}/modules/webservices-osgi.jar:${j2ee.server.home}/modules/endorsed/webservices-api-osgi.jar:${j2ee.server.home}/modules/jaxb-osgi.jar:${j2ee.server.home}/modules/endorsed/jaxb-api.jar
-j2ee.platform.wsit.classpath=
-j2ee.server.type=gfv3ee6
-jar.compress=false
-jar.name=PizzaService-ejb.jar
-jars.in.ejbjar=true
-javac.classpath=\
- ${file.reference.jcountry-core.jar}:\
- ${file.reference.jcountry-lib.jar}:\
- ${file.reference.jcoreee.jar}:\
- ${file.reference.jcore-logger-lib.jar}:\
- ${reference.PizzaService-lib.jar}:\
- ${file.reference.jcontacts-core.jar}:\
- ${file.reference.jphone-core.jar}:\
- ${file.reference.jphone-lib.jar}:\
- ${file.reference.jshop-core.jar}:\
- ${file.reference.jshop-ee-lib.jar}:\
- ${file.reference.cdi-api.jar}
-javac.debug=true
-javac.deprecation=true
-javac.processorpath=\
- ${javac.classpath}
-javac.source=1.8
-javac.target=1.8
-javac.test.classpath=\
- ${javac.classpath}:\
- ${build.classes.dir}
-javac.test.processorpath=${javac.test.classpath}
-javadoc.additionalparam=
-javadoc.author=true
-javadoc.encoding=${source.encoding}
-javadoc.noindex=false
-javadoc.nonavbar=false
-javadoc.notree=false
-javadoc.preview=true
-javadoc.private=true
-javadoc.splitindex=true
-javadoc.use=true
-javadoc.version=true
-javadoc.windowtitle=Pizza-Service EJBs
-meta.inf=${source.root}/conf
-meta.inf.excludes=sun-cmp-mappings.xml
-platform.active=default_platform
-project.license=agpl30
-project.pizzaservice-lib=../../pizzaservice-lib
-project.PizzaService-lib=../../../public_html/pizzaservice-lib
-reference.PizzaService-lib.jar=${project.PizzaService-lib}/dist/PizzaService-lib.jar
-resource.dir=setup
-run.test.classpath=\
- ${javac.test.classpath}:\
- ${build.test.classes.dir}
-# Space-separated list of JVM arguments used when running a class with a main method or a unit test
-# (you may also define separate properties like run-sys-prop.name=value instead of -Dname=value):
-runmain.jvmargs=
-source.encoding=UTF-8
-source.reference.jcontacts-core.jar=../jcontacts-core/src/
-source.reference.jcore-logger-lib.jar=../jcore-logger-lib/src/
-source.reference.jcoreee.jar=../../jcoreee/src/
-source.reference.jcountry-core.jar=../jcountry-core/src/
-source.reference.jcountry-lib.jar=../jcountry-lib/src/
-source.reference.jphone-core.jar=../jphone-core/src/
-source.reference.jphone-lib.jar=../jphone-lib/src/
-source.reference.jshop-core.jar=../../jshop-core/src/
-source.reference.jshop-ee-lib.jar=../../jshop-ee-lib/src/
-source.root=src
-src.dir=${source.root}/java
-test.src.dir=test
+++ /dev/null
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://www.netbeans.org/ns/project/1">
- <type>org.netbeans.modules.j2ee.ejbjarproject</type>
- <configuration>
- <data xmlns="http://www.netbeans.org/ns/j2ee-ejbjarproject/3">
- <name>PizzaService-ejb</name>
- <minimum-ant-version>1.6.5</minimum-ant-version>
- <included-library dirs="200">file.reference.jcountry-core.jar</included-library>
- <included-library dirs="200">file.reference.jcountry-lib.jar</included-library>
- <included-library dirs="200">file.reference.jcoreee.jar</included-library>
- <included-library dirs="200">file.reference.jcore-logger-lib.jar</included-library>
- <included-library dirs="200">reference.PizzaService-lib.jar</included-library>
- <included-library dirs="200">file.reference.jcontacts-core.jar</included-library>
- <included-library dirs="200">file.reference.jphone-core.jar</included-library>
- <included-library dirs="200">file.reference.jphone-lib.jar</included-library>
- <included-library dirs="200">file.reference.jshop-core.jar</included-library>
- <included-library dirs="200">file.reference.jshop-ee-lib.jar</included-library>
- <included-library dirs="200">file.reference.cdi-api.jar</included-library>
- <source-roots>
- <root id="src.dir"/>
- </source-roots>
- <test-roots>
- <root id="test.src.dir"/>
- </test-roots>
- </data>
- <libraries xmlns="http://www.netbeans.org/ns/ant-project-libraries/1">
- <definitions>lib/nblibraries.properties</definitions>
- </libraries>
- <references xmlns="http://www.netbeans.org/ns/ant-project-references/2">
- <reference>
- <foreign-project>PizzaService-lib</foreign-project>
- <artifact-type>jar</artifact-type>
- <script>${project.PizzaService-lib}/build.xml</script>
- <target>jar</target>
- <clean-target>clean</clean-target>
- <id>jar</id>
- </reference>
- </references>
- </configuration>
-</project>
+++ /dev/null
-Manifest-Version: 1.0
-
+++ /dev/null
-<?xml version="1.0" encoding="UTF-8"?>
-<persistence version="2.1" xmlns="http://xmlns.jcp.org/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd">
- <persistence-unit name="PizzaService-ejbPU" transaction-type="JTA">
- <jta-data-source>jdbc/shop</jta-data-source>
- <class>org.mxchange.jcontacts.contact.UserContact</class>
- <class>org.mxchange.jcountry.data.CountryData</class>
- <class>org.mxchange.jphone.phonenumbers.cellphone.CellphoneNumber</class>
- <class>org.mxchange.jphone.phonenumbers.fax.FaxNumber</class>
- <class>org.mxchange.jphone.phonenumbers.landline.LandLineNumber</class>
- <class>org.mxchange.jphone.phonenumbers.smsprovider.CellphoneProvider</class>
- <class>org.mxchange.jshopcore.model.basket.items.BasketItem</class>
- <class>org.mxchange.jshopcore.model.category.ProductCategory</class>
- <class>org.mxchange.jshopcore.model.customer.ShopCustomer</class>
- <class>org.mxchange.jshopcore.model.order.ShopOrder</class>
- <class>org.mxchange.jshopcore.model.order.items.OrderItem</class>
- <class>org.mxchange.jshopcore.model.product.GenericProduct</class>
- <exclude-unlisted-classes>false</exclude-unlisted-classes>
- <properties>
- <property name="javax.persistence.schema-generation.database.action" value="create"/>
- </properties>
- </persistence-unit>
-</persistence>
+++ /dev/null
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-Copyright (C) 2016 Roland Haeder
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU Affero General Public License as
-published by the Free Software Foundation, either version 3 of the
-License, or (at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU Affero General Public License for more details.
-
-You should have received a copy of the GNU Affero General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
--->
-<Configuration status="INFO">
- <Appenders>
- <Console name="STDOUT" target="SYSTEM_OUT">
- <PatternLayout pattern="%d %-5p [%t] %C{2} (%F:%L) - %m%n"/>
- </Console>
- </Appenders>
- <Loggers>
- <Root level="trace">
- <AppenderRef ref="STDOUT" level="TRACE"/>
- </Root>
- </Loggers>
-</Configuration>
+++ /dev/null
-/*
- * Copyright (C) 2016 Roland Haeder
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Affero General Public License as
- * published by the Free Software Foundation, either version 3 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Affero General Public License for more details.
- *
- * You should have received a copy of the GNU Affero General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-package org.mxchange.jcountry.data;
-
-import java.util.List;
-import javax.ejb.Singleton;
-import javax.ejb.Startup;
-import javax.persistence.Query;
-import org.mxchange.jcoreee.database.BaseDatabaseBean;
-
-/**
- * A singleton bean for country informations
- * <p>
- * @author Roland Haeder<roland@mxchange.org>
- */
-@Startup
-@Singleton (name = "country", mappedName = "ejb/pizzaservice-singleton-country", description = "A singleton session bean for country informations")
-public class PizzaCountrySingletonBean extends BaseDatabaseBean implements CountrySingletonBeanRemote {
-
- /**
- * Serial number
- */
- private static final long serialVersionUID = 15_846_983_298_691_207L;
-
- @Override
- @SuppressWarnings ("unchecked")
- public List<Country> allCountries () {
- // Init query
- Query query = this.getEntityManager().createNamedQuery("AllCountries", List.class); //NOI18N
-
- // Return it
- return query.getResultList();
- }
-
-}
+++ /dev/null
-/*
- * Copyright (C) 2016 Roland Haeder
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Affero General Public License as
- * published by the Free Software Foundation, either version 3 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Affero General Public License for more details.
- *
- * You should have received a copy of the GNU Affero General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-package org.mxchange.jphone.phonenumbers.smsprovider;
-
-import java.util.List;
-import javax.ejb.Singleton;
-import javax.ejb.Startup;
-import javax.persistence.Query;
-import org.mxchange.jcoreee.database.BaseDatabaseBean;
-
-/**
- * A singleton bean for SMS provider informations
- * <p>
- * @author Roland Haeder<roland@mxchange.org>
- */
-@Startup
-@Singleton (name = "smsprovider", mappedName = "ejb/pizzaservice-singleton-smsprovider", description = "A singleton session bean for SMS provider informations")
-public class PizzaSmsProviderSingletonBean extends BaseDatabaseBean implements SmsProviderSingletonBeanRemote {
-
- /**
- * Serial number
- */
- private static final long serialVersionUID = 15_846_983_298_691_207L;
-
- @Override
- @SuppressWarnings ("unchecked")
- public List<SmsProvider> allSmsProvider () {
- // Init query
- Query query = this.getEntityManager().createNamedQuery("AllSmsProvider", List.class); //NOI18N
-
- // Return it
- return query.getResultList();
- }
-
-}
<!-- the Compile on Save feature is turned off for the project. -->
<!-- You can turn off the Compile on Save (or Deploy on Save) setting -->
<!-- in the project's Project Properties dialog box.-->
-<project name="PizzaService" default="default" basedir="." xmlns:ear="http://www.netbeans.org/ns/j2ee-earproject/2">
- <description>Builds, tests, and runs the project PizzaService.</description>
+<project name="PizzaService-ejb" default="default" basedir="." xmlns:ejbjarproject="http://www.netbeans.org/ns/j2ee-ejbjarproject/3">
+ <description>Builds, tests, and runs the project PizzaService-ejb.</description>
<import file="nbproject/build-impl.xml"/>
<!--
used for execution of your tasks. These targets are usually executed
before and after some main targets. They are:
- pre-init: called before initialization of project properties
- post-init: called after initialization of project properties
- pre-compile: called before javac compilation
- post-compile: called after javac compilation
- pre-dist: called before archive building
- post-dist: called after archive building
- post-clean: called after cleaning build products
- pre-run-deploy: called before deploying
- post-run-deploy: called after deploying
+ -pre-init: called before initialization of project properties
+ -post-init: called after initialization of project properties
+ -pre-compile: called before javac compilation
+ -post-compile: called after javac compilation
+ -pre-compile-single: called before javac compilation of single file
+ -post-compile-single: called after javac compilation of single file
+ -pre-dist: called before archive building
+ -post-dist: called after archive building
+ -post-clean: called after cleaning build products
+ -pre-run-deploy: called before deploying
+ -post-run-deploy: called after deploying
+
+ (Targets beginning with '-' are not intended to be called on their own.)
Example of pluging an obfuscator after the compilation could look like
- <target name="post-compile">
+ <target name="-post-compile">
<obfuscate>
<fileset dir="${build.classes.dir}"/>
</obfuscate>
Other way how to customize the build is by overriding existing main targets.
The target of interest are:
+ init-macrodef-javac: defines macro for javac compilation
+ init-macrodef-debug: defines macro for class debugging
do-dist: archive building
run: execution of project
+ javadoc-build: javadoc generation
Example of overriding the target for project execution could look like
+++ /dev/null
-SET FOREIGN_KEY_CHECKS=0;
-SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
-SET time_zone = "+00:00";
-
-CREATE TABLE `category` (
- `id` bigint(20) unsigned NOT NULL COMMENT 'Primary key',
- `title` varchar(100) NOT NULL COMMENT 'Category title',
- `parent` bigint(20) unsigned DEFAULT NULL COMMENT 'Parent category',
- PRIMARY KEY (`id`),
- INDEX `parent` (`parent`)
-) ENGINE=InnoDBDEFAULT CHARSET=utf8 COMMENT='Categories';
-
-CREATE TABLE `contacts` (
- `id` bigint(20) unsigned NOT NULL COMMENT 'Primary key',
- `own_contact` tinyint(1) NOT NULL DEFAULT '0' COMMENT 'Whether own contact',
- `gender` varchar(10) NOT NULL DEFAULT 'UNKNOWN' COMMENT 'Gender',
- `first_name` varchar(100) NOT NULL COMMENT 'First name',
- `family_name` varchar(100) NOT NULL COMMENT 'Family name',
- `street` varchar(255) DEFAULT NULL COMMENT 'Street name',
- `house_number` smallint(5) unsigned DEFAULT NULL COMMENT 'House number',
- `city` varchar(100) DEFAULT NULL COMMENT 'City name',
- `zip_code` smallint(5) unsigned DEFAULT NULL COMMENT 'ZIP code',
- `country_code` char(2) DEFAULT NULL COMMENT 'Country code',
- `phone_number` varchar(100) DEFAULT NULL COMMENT 'Phone number',
- `cellphone_number` varchar(100) DEFAULT NULL COMMENT 'Cellphone number',
- `fax_number` varchar(100) DEFAULT NULL COMMENT 'Fax number',
- `email_address` varchar(100) DEFAULT NULL COMMENT 'Email addres',
- `birthday` date DEFAULT NULL COMMENT 'Birth day',
- `comment` tinytext NULL DEFAULT NULL COMMENT 'Comment',
- `created` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 'Entry created',
- `updated` timestamp NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT 'Updated entry',
- PRIMARY KEY (`id`)
-) ENGINE=InnoDBDEFAULT CHARSET=utf8 COMMENT='Contacts data';
-
-CREATE TABLE `customer` (
- `id` bigint(20) unsigned NOT NULL COMMENT 'Primary key',
- `customer_contact_id` bigint(20) unsigned NOT NULL COMMENT 'Table reference on "contact"',
- `customer_number` varchar(20) NOT NULL COMMENT 'Customer number',
- `customer_password_hash` varchar(255) DEFAULT NULL COMMENT 'Password hash',
- `customer_confirm_key` varchar(50) DEFAULT NULL COMMENT 'Email confirmation key',
- `customer_status` enum('UNCONFIRMED','CONFIRMED','LOCKED') NOT NULL DEFAULT 'UNCONFIRMED' COMMENT 'Account status',
- `customer_created` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 'Account creation',
- `customer_locked` timestamp NULL DEFAULT NULL COMMENT 'Last locked timestamp',
- PRIMARY KEY (`id`),
- UNIQUE (`customer_confirm_key`),
- UNIQUE (`customer_number`),
- INDEX (`customer_contact_id`)
-) ENGINE=InnoDBDEFAULT CHARSET=utf8 COMMENT='Customer data';
-
-CREATE TABLE `ordered_items` (
- `id` bigint(20) unsigned NOT NULL COMMENT 'Primary key',
- `order_id` bigint(20) unsigned NOT NULL COMMENT 'Table reference orders',
- `order_status` enum('UNCONFIRMED','CONFIRMED','DELIVERED','CANCELED') NOT NULL DEFAULT 'UNCONFIRMED' COMMENT 'Order status',
- `product_id` bigint(20) unsigned NOT NULL COMMENT 'Table reference products',
- `item_type` VARCHAR(20) NOT NULL COMMENT 'Item type',
- `amount` bigint(20) unsigned NOT NULL COMMENT 'Ordered amount',
- `added` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 'Record inserted',
- PRIMARY KEY (`id`),
- INDEX (`order_id`),
- INDEX (`product_id`)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Ordered items';
-
-CREATE TABLE `orders` (
- `id` bigint(20) unsigned NOT NULL COMMENT 'Primary key',
- `customer_id` bigint(20) unsigned NOT NULL COMMENT 'Table reference customer',
- `access_key` varchar(100) NULL DEFAULT NULL COMMENT 'Access key to receipt',
- `created` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 'Order created',
- PRIMARY KEY (`id`),
- INDEX (`customer_id`),
- UNIQUE (`access_key`)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Customer orders';
-
-CREATE TABLE `products` (
- `id` bigint(20) unsigned NOT NULL COMMENT 'Primary key',
- `category` bigint(20) unsigned DEFAULT NULL COMMENT 'Category id',
- `title` varchar(100) NOT NULL COMMENT 'Title of product',
- `price` decimal(20,2) unsigned NOT NULL COMMENT 'Product price',
- `available` tinyint(1) NOT NULL DEFAULT '0' COMMENT 'Whether product is available',
- PRIMARY KEY (`id`),
- INDEX (`category`)
-) ENGINE=InnoDBDEFAULT CHARSET=utf8 COMMENT='Products';
-
-ALTER TABLE `category`
-MODIFY `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Primary key';
-
-ALTER TABLE `contacts`
-MODIFY `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Primary key';
-
-ALTER TABLE `customer`
-MODIFY `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Primary key';
-
-ALTER TABLE `ordered_items`
-MODIFY `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Primary key';
-
-ALTER TABLE `orders`
-MODIFY `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Primary key';
-
-ALTER TABLE `products`
-MODIFY `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Primary key';
-
-ALTER TABLE `category`
-ADD CONSTRAINT `category_ibfk_1` FOREIGN KEY (`parent`) REFERENCES `category` (`id`) ON DELETE SET NULL ON UPDATE NO ACTION;
-
-ALTER TABLE `customer`
-ADD CONSTRAINT `customer_ibfk_1` FOREIGN KEY (`customer_contact_id`) REFERENCES `contacts` (`id`) ON DELETE CASCADE;
-
-ALTER TABLE `ordered_items`
-ADD CONSTRAINT `ordered_items_ibfk_2` FOREIGN KEY (`product_id`) REFERENCES `products` (`id`) ON DELETE CASCADE;
-
-ALTER TABLE `orders`
-ADD CONSTRAINT `orders_ibfk_1` FOREIGN KEY (`customer_id`) REFERENCES `customer` (`id`);
-
-ALTER TABLE `products`
-ADD CONSTRAINT `products_ibfk_1` FOREIGN KEY (`category`) REFERENCES `category` (`id`) ON DELETE SET NULL ON UPDATE NO ACTION;
-
-SET FOREIGN_KEY_CHECKS=1;
${base}/CopyLibs/org-netbeans-modules-java-j2seproject-copylibstask.jar
libs.CopyLibs.displayName=CopyLibs Task
libs.CopyLibs.prop-version=2.0
+libs.eclipselink.classpath=\
+ ${base}/eclipselink/eclipselink.jar;\
+ ${base}/eclipselink/javax.persistence_2.1.0.v201304241213.jar;\
+ ${base}/eclipselink/org.eclipse.persistence.jpa.jpql_2.5.2.v20140319-9ad6abd.jar
+libs.eclipselink.displayName=EclipseLink (JPA 2.1)
+libs.eclipselink.javadoc=
+libs.eclipselink.prop-maven-dependencies=\n org.eclipse.persistence:eclipselink:2.5.2:jar\n
+libs.eclipselinkmodelgen.classpath=\
+ ${base}/eclipselinkmodelgen/org.eclipse.persistence.jpa.modelgen_2.5.2.v20140319-9ad6abd.jar
+libs.eclipselinkmodelgen.displayName=EclipseLink-ModelGen (JPA 2.1)
+libs.eclipselinkmodelgen.prop-maven-dependencies=org.eclipse.persistence:org.eclipse.persistence.jpa.modelgen.processor:2.5.2:jar
- dist
- execution
- debugging
+ - javadoc
- cleanup
--->
-<project xmlns:ear2="http://www.netbeans.org/ns/j2ee-earproject/2" basedir=".." default="default" name="PizzaService-impl">
- <import file="ant-deploy.xml"/>
- <fail message="Please build using Ant 1.7.1 or higher.">
- <condition>
- <not>
- <antversion atleast="1.7.1"/>
- </not>
- </condition>
- </fail>
- <target depends="dist" description="Build whole project." name="default"/>
- <!--
- INITIALIZATION SECTION
- -->
- <target name="pre-init">
- <!-- Empty placeholder for easier customization. -->
- <!-- You can override this target in the ../build.xml file. -->
- </target>
- <target depends="pre-init" name="init-private">
- <property file="nbproject/private/private.properties"/>
- </target>
- <target depends="pre-init,init-private" name="init-userdir">
- <property location="${netbeans.user}/build.properties" name="user.properties.file"/>
- </target>
- <target depends="pre-init,init-private,init-userdir" name="init-user">
- <property file="${user.properties.file}"/>
- </target>
- <target depends="pre-init,init-private,init-userdir,init-user" name="init-project">
- <property file="nbproject/project.properties"/>
- </target>
- <target depends="pre-init,init-private,init-userdir,init-user,init-project" name="do-init">
- <!-- The two properties below are usually overridden -->
- <!-- by the active platform. Just a fallback. -->
- <property name="default.javac.source" value="1.4"/>
- <property name="default.javac.target" value="1.4"/>
- <condition property="do.compile.jsps">
- <istrue value="${compile.jsps}"/>
- </condition>
- <condition property="do.display.browser.old">
- <and>
- <istrue value="${display.browser}"/>
- <isset property="client.module.uri"/>
- <not>
- <isset property="app.client"/>
- </not>
- <not>
- <isset property="browser.context"/>
- </not>
- </and>
- </condition>
- <condition property="do.display.browser">
- <and>
- <istrue value="${display.browser}"/>
- <isset property="client.module.uri"/>
- <not>
- <isset property="app.client"/>
- </not>
- <isset property="browser.context"/>
- </and>
- </condition>
- <available file="${meta.inf}/MANIFEST.MF" property="has.custom.manifest"/>
- <!--
- Variables needed to support directory deployment.
- -->
- <condition property="do.package.with.custom.manifest.not.directory.deploy">
- <and>
- <isset property="has.custom.manifest"/>
- <isfalse value="${directory.deployment.supported}"/>
- </and>
- </condition>
- <condition property="do.package.without.custom.manifest.not.directory.deploy">
- <and>
- <not>
- <isset property="has.custom.manifest"/>
- </not>
- <isfalse value="${directory.deployment.supported}"/>
- </and>
- </condition>
- <condition property="do.package.not.directory.deploy">
- <isfalse value="${directory.deployment.supported}"/>
- </condition>
- <!--End Variables needed to support directory deployment.-->
- <condition else="" property="j2ee.appclient.mainclass.tool.param" value="-mainclass ${main.class}">
- <and>
- <isset property="main.class"/>
- <not>
- <equals arg1="${main.class}" arg2="" trim="true"/>
- </not>
- </and>
- </condition>
- <condition else="" property="j2ee.appclient.jvmoptions.param" value="${j2ee.appclient.jvmoptions}">
- <and>
- <isset property="j2ee.appclient.jvmoptions"/>
- <not>
- <equals arg1="${j2ee.appclient.jvmoptions}" arg2="" trim="true"/>
- </not>
- </and>
- </condition>
- <condition else="" property="application.args.param" value="${application.args}">
- <and>
- <isset property="application.args"/>
- <not>
- <equals arg1="${application.args}" arg2="" trim="true"/>
- </not>
- </and>
- </condition>
- <condition property="can.debug.appclient">
- <and>
- <isset property="netbeans.home"/>
- <isset property="app.client"/>
- </and>
- </condition>
- <path id="endorsed.classpath.path" path="${endorsed.classpath}"/>
- <condition else="" property="endorsed.classpath.cmd.line.arg" value="-Xbootclasspath/p:'${toString:endorsed.classpath.path}'">
- <and>
- <isset property="endorsed.classpath"/>
- <length length="0" string="${endorsed.classpath}" when="greater"/>
- </and>
- </condition>
- </target>
- <target depends="init" name="-init-cos">
- <condition else="false" property="build.deploy.on.save">
- <or>
- <istrue value="${j2ee.deploy.on.save}"/>
- <istrue value="${j2ee.compile.on.save}"/>
- </or>
- </condition>
- </target>
- <target name="post-init">
- <!-- Empty placeholder for easier customization. -->
- <!-- You can override this target in the ../build.xml file. -->
- </target>
- <target depends="pre-init,init-private,init-userdir,init-user,init-project,do-init" name="init-check">
- <fail unless="build.dir">Must set build.dir</fail>
- <fail unless="build.generated.dir">Must set build.generated.dir</fail>
- <fail unless="dist.dir">Must set dist.dir</fail>
- <fail unless="build.classes.excludes">Must set build.classes.excludes</fail>
- <fail unless="dist.jar">Must set dist.jar</fail>
- </target>
- <target name="-init-taskdefs">
- <fail unless="libs.CopyLibs.classpath">
- The libs.CopyLibs.classpath property is not set up.
- This property must point to
- org-netbeans-modules-java-j2seproject-copylibstask.jar file which is part
- of NetBeans IDE installation and is usually located at
+ -->
+<project xmlns:ejbjarproject1="http://www.netbeans.org/ns/j2ee-ejbjarproject/1" xmlns:ejbjarproject2="http://www.netbeans.org/ns/j2ee-ejbjarproject/2" xmlns:ejbjarproject3="http://www.netbeans.org/ns/j2ee-ejbjarproject/3" basedir=".." default="default" name="PizzaService-ejb-impl">
+ <import file="ant-deploy.xml"/>
+ <fail message="Please build using Ant 1.7.1 or higher.">
+ <condition>
+ <not>
+ <antversion atleast="1.7.1"/>
+ </not>
+ </condition>
+ </fail>
+ <target depends="dist,javadoc" description="Build whole project." name="default"/>
+ <!--
+ INITIALIZATION SECTION
+ -->
+ <target name="-pre-init">
+ <!-- Empty placeholder for easier customization. -->
+ <!-- You can override this target in the ../build.xml file. -->
+ </target>
+ <target depends="-pre-init" name="-init-private">
+ <property file="nbproject/private/private.properties"/>
+ </target>
+ <target name="-pre-init-libraries">
+ <property location="lib/nblibraries.properties" name="libraries.path"/>
+ <dirname file="${libraries.path}" property="libraries.dir.nativedirsep"/>
+ <pathconvert dirsep="/" property="libraries.dir">
+ <path path="${libraries.dir.nativedirsep}"/>
+ </pathconvert>
+ <basename file="${libraries.path}" property="libraries.basename" suffix=".properties"/>
+ <available file="${libraries.dir}/${libraries.basename}-private.properties" property="private.properties.available"/>
+ </target>
+ <target depends="-pre-init-libraries" if="private.properties.available" name="-init-private-libraries">
+ <loadproperties encoding="ISO-8859-1" srcfile="${libraries.dir}/${libraries.basename}-private.properties">
+ <filterchain>
+ <replacestring from="$${base}" to="${libraries.dir}"/>
+ <escapeunicode/>
+ </filterchain>
+ </loadproperties>
+ </target>
+ <target depends="-pre-init,-init-private,-init-private-libraries" name="-init-libraries">
+ <loadproperties encoding="ISO-8859-1" srcfile="${libraries.path}">
+ <filterchain>
+ <replacestring from="$${base}" to="${libraries.dir}"/>
+ <escapeunicode/>
+ </filterchain>
+ </loadproperties>
+ </target>
+ <target depends="-pre-init,-init-private,-init-libraries" name="-init-userdir">
+ <property location="${netbeans.user}/build.properties" name="user.properties.file"/>
+ </target>
+ <target depends="-pre-init,-init-private,-init-libraries,-init-userdir" name="-init-user">
+ <property file="${user.properties.file}"/>
+ <!-- The two properties below are usually overridden -->
+ <!-- by the active platform. Just a fallback. -->
+ <property name="default.javac.source" value="1.4"/>
+ <property name="default.javac.target" value="1.4"/>
+ </target>
+ <target depends="-pre-init,-init-private,-init-libraries,-init-userdir,-init-user" name="-init-project">
+ <property file="nbproject/project.properties"/>
+ </target>
+ <target depends="-pre-init,-init-private,-init-libraries,-init-userdir,-init-user,-init-project,-init-macrodef-property" name="-do-init">
+ <!-- Ensure configuration directory exists. -->
+ <mkdir dir="${meta.inf}"/>
+ <property name="runmain.jvmargs" value=""/>
+ <condition property="have.tests">
+ <or>
+ <available file="${test.src.dir}"/>
+ </or>
+ </condition>
+ <condition property="have.sources">
+ <or>
+ <available file="${src.dir}"/>
+ </or>
+ </condition>
+ <condition property="netbeans.home+have.tests">
+ <and>
+ <isset property="netbeans.home"/>
+ <isset property="have.tests"/>
+ </and>
+ </condition>
+ <condition property="no.javadoc.preview">
+ <isfalse value="${javadoc.preview}"/>
+ </condition>
+ <available file="${meta.inf}/MANIFEST.MF" property="has.custom.manifest"/>
+ <!--
+ Variables needed to support directory deployment.
+ -->
+ <condition property="do.package.with.custom.manifest.not.directory.deploy">
+ <and>
+ <isset property="has.custom.manifest"/>
+ <isfalse value="${directory.deployment.supported}"/>
+ </and>
+ </condition>
+ <condition property="do.package.without.custom.manifest.not.directory.deploy">
+ <and>
+ <not>
+ <isset property="has.custom.manifest"/>
+ </not>
+ <isfalse value="${directory.deployment.supported}"/>
+ </and>
+ </condition>
+ <!--End Variables needed to support directory deployment.-->
+ <condition property="classes.dir" value="${build.ear.classes.dir}">
+ <isset property="dist.ear.dir"/>
+ </condition>
+ <property name="classes.dir" value="${build.classes.dir}"/>
+ <condition property="no.deps">
+ <and>
+ <istrue value="${no.dependencies}"/>
+ </and>
+ </condition>
+ <condition property="no.dist.ear.dir">
+ <not>
+ <isset property="dist.ear.dir"/>
+ </not>
+ </condition>
+ <property name="source.encoding" value="${file.encoding}"/>
+ <condition property="javadoc.encoding.used" value="${javadoc.encoding}">
+ <and>
+ <isset property="javadoc.encoding"/>
+ <not>
+ <equals arg1="${javadoc.encoding}" arg2=""/>
+ </not>
+ </and>
+ </condition>
+ <property name="javadoc.encoding.used" value="${source.encoding}"/>
+ <property name="includes" value="**"/>
+ <property name="excludes" value=""/>
+ <path id="endorsed.classpath.path" path="${endorsed.classpath}"/>
+ <condition else="" property="endorsed.classpath.cmd.line.arg" value="-Xbootclasspath/p:'${toString:endorsed.classpath.path}'">
+ <and>
+ <isset property="endorsed.classpath"/>
+ <length length="0" string="${endorsed.classpath}" when="greater"/>
+ </and>
+ </condition>
+ <condition property="is.server.weblogic" value="true">
+ <equals arg1="${j2ee.server.type}" arg2="WebLogic9"/>
+ </condition>
+ <condition property="is.jars.in.ejbjar" value="true">
+ <equals arg1="${jars.in.ejbjar}" arg2="true"/>
+ </condition>
+ <condition else="false" property="jdkBug6558476">
+ <and>
+ <matches pattern="1\.[56]" string="${java.specification.version}"/>
+ <not>
+ <os family="unix"/>
+ </not>
+ </and>
+ </condition>
+ <property name="javac.fork" value="${jdkBug6558476}"/>
+ <condition property="junit.available">
+ <or>
+ <available classname="org.junit.Test" classpath="${run.test.classpath}"/>
+ <available classname="junit.framework.Test" classpath="${run.test.classpath}"/>
+ </or>
+ </condition>
+ <condition property="testng.available">
+ <available classname="org.testng.annotations.Test" classpath="${run.test.classpath}"/>
+ </condition>
+ <condition property="junit+testng.available">
+ <and>
+ <istrue value="${junit.available}"/>
+ <istrue value="${testng.available}"/>
+ </and>
+ </condition>
+ <condition else="testng" property="testng.mode" value="mixed">
+ <istrue value="${junit+testng.available}"/>
+ </condition>
+ <condition else="" property="testng.debug.mode" value="-mixed">
+ <istrue value="${junit+testng.available}"/>
+ </condition>
+ </target>
+ <target depends="init" name="-init-cos" unless="deploy.on.save">
+ <condition property="deploy.on.save" value="true">
+ <or>
+ <istrue value="${j2ee.deploy.on.save}"/>
+ <istrue value="${j2ee.compile.on.save}"/>
+ </or>
+ </condition>
+ </target>
+ <target name="-post-init">
+ <!-- Empty placeholder for easier customization. -->
+ <!-- You can override this target in the ../build.xml file. -->
+ </target>
+ <target depends="-pre-init,-init-private,-init-libraries,-init-userdir,-init-user,-init-project,-do-init" name="-init-check">
+ <fail unless="src.dir">Must set src.dir</fail>
+ <fail unless="test.src.dir">Must set test.src.dir</fail>
+ <fail unless="build.dir">Must set build.dir</fail>
+ <fail unless="build.generated.dir">Must set build.generated.dir</fail>
+ <fail unless="dist.dir">Must set dist.dir</fail>
+ <fail unless="build.classes.dir">Must set build.classes.dir</fail>
+ <fail unless="dist.javadoc.dir">Must set dist.javadoc.dir</fail>
+ <fail unless="build.classes.excludes">Must set build.classes.excludes</fail>
+ <fail unless="dist.jar">Must set dist.jar</fail>
+ <condition property="missing.j2ee.server.home">
+ <and>
+ <matches pattern="j2ee.server.home" string="${j2ee.platform.classpath}"/>
+ <not>
+ <isset property="j2ee.server.home"/>
+ </not>
+ </and>
+ </condition>
+ <fail if="missing.j2ee.server.home">
+The Java EE server classpath is not correctly set up - server home directory is missing.
+Either open the project in the IDE and assign the server or setup the server classpath manually.
+For example like this:
+ ant -Dj2ee.server.home=<app_server_installation_directory>
+ </fail>
+ <fail unless="j2ee.platform.classpath">
+The Java EE server classpath is not correctly set up. Your active server type is ${j2ee.server.type}.
+Either open the project in the IDE and assign the server or setup the server classpath manually.
+For example like this:
+ ant -Duser.properties.file=<path_to_property_file> (where you put the property "j2ee.platform.classpath" in a .properties file)
+or ant -Dj2ee.platform.classpath=<server_classpath> (where no properties file is used)
+ </fail>
+ </target>
+ <target name="-init-macrodef-property">
+ <macrodef name="property" uri="http://www.netbeans.org/ns/j2ee-ejbjarproject/1">
+ <attribute name="name"/>
+ <attribute name="value"/>
+ <sequential>
+ <property name="@{name}" value="${@{value}}"/>
+ </sequential>
+ </macrodef>
+ </target>
+ <target depends="-init-ap-cmdline-properties" if="ap.supported.internal" name="-init-macrodef-javac-with-processors">
+ <macrodef name="javac" uri="http://www.netbeans.org/ns/j2ee-ejbjarproject/2">
+ <attribute default="${src.dir}" name="srcdir"/>
+ <attribute default="${build.classes.dir}" name="destdir"/>
+ <attribute default="${javac.classpath}:${j2ee.platform.classpath}" name="classpath"/>
+ <attribute default="${javac.processorpath}" name="processorpath"/>
+ <attribute default="${build.generated.sources.dir}/ap-source-output" name="apgeneratedsrcdir"/>
+ <attribute default="${includes}" name="includes"/>
+ <attribute default="${excludes}" name="excludes"/>
+ <attribute default="${javac.debug}" name="debug"/>
+ <attribute default="${empty.dir}" name="gensrcdir"/>
+ <element name="customize" optional="true"/>
+ <sequential>
+ <property name="javac.compilerargs" value=""/>
+ <property location="${build.dir}/empty" name="empty.dir"/>
+ <mkdir dir="${empty.dir}"/>
+ <mkdir dir="@{apgeneratedsrcdir}"/>
+ <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}">
+ <src>
+ <dirset dir="@{gensrcdir}" erroronmissingdir="false">
+ <include name="*"/>
+ </dirset>
+ </src>
+ <classpath>
+ <path path="@{classpath}"/>
+ </classpath>
+ <compilerarg line="${endorsed.classpath.cmd.line.arg}"/>
+ <compilerarg line="${javac.compilerargs}"/>
+ <compilerarg value="-processorpath"/>
+ <compilerarg path="@{processorpath}:${empty.dir}"/>
+ <compilerarg line="${ap.processors.internal}"/>
+ <compilerarg value="-s"/>
+ <compilerarg path="@{apgeneratedsrcdir}"/>
+ <compilerarg line="${ap.proc.none.internal}"/>
+ <customize/>
+ </javac>
+ </sequential>
+ </macrodef>
+ </target>
+ <target depends="-init-ap-cmdline-properties" name="-init-macrodef-javac-without-processors" unless="ap.supported.internal">
+ <macrodef name="javac" uri="http://www.netbeans.org/ns/j2ee-ejbjarproject/2">
+ <attribute default="${src.dir}" name="srcdir"/>
+ <attribute default="${build.classes.dir}" name="destdir"/>
+ <attribute default="${javac.classpath}:${j2ee.platform.classpath}" name="classpath"/>
+ <attribute default="${javac.processorpath}" name="processorpath"/>
+ <attribute default="${build.generated.sources.dir}/ap-source-output" name="apgeneratedsrcdir"/>
+ <attribute default="${includes}" name="includes"/>
+ <attribute default="${excludes}" name="excludes"/>
+ <attribute default="${javac.debug}" name="debug"/>
+ <attribute default="${empty.dir}" name="gensrcdir"/>
+ <element name="customize" optional="true"/>
+ <sequential>
+ <property name="javac.compilerargs" value=""/>
+ <property location="${build.dir}/empty" name="empty.dir"/>
+ <mkdir dir="${empty.dir}"/>
+ <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}">
+ <src>
+ <dirset dir="@{gensrcdir}" erroronmissingdir="false">
+ <include name="*"/>
+ </dirset>
+ </src>
+ <classpath>
+ <path path="@{classpath}"/>
+ </classpath>
+ <compilerarg line="${endorsed.classpath.cmd.line.arg}"/>
+ <compilerarg line="${javac.compilerargs}"/>
+ <customize/>
+ </javac>
+ </sequential>
+ </macrodef>
+ </target>
+ <target depends="-init-macrodef-javac-with-processors,-init-macrodef-javac-without-processors" name="-init-macrodef-javac">
+ <macrodef name="depend" uri="http://www.netbeans.org/ns/j2ee-ejbjarproject/2">
+ <attribute default="${src.dir}" name="srcdir"/>
+ <attribute default="${build.classes.dir}" name="destdir"/>
+ <attribute default="${javac.classpath}:${j2ee.platform.classpath}" name="classpath"/>
+ <sequential>
+ <depend cache="${build.dir}/depcache" destdir="@{destdir}" excludes="${excludes}" includes="${includes}" srcdir="@{srcdir}">
+ <classpath>
+ <path path="@{classpath}"/>
+ </classpath>
+ </depend>
+ </sequential>
+ </macrodef>
+ <macrodef name="force-recompile" uri="http://www.netbeans.org/ns/j2ee-ejbjarproject/2">
+ <attribute default="${build.classes.dir}" name="destdir"/>
+ <sequential>
+ <fail unless="javac.includes">Must set javac.includes</fail>
+ <pathconvert pathsep="${line.separator}" property="javac.includes.binary">
+ <path>
+ <filelist dir="@{destdir}" files="${javac.includes}"/>
+ </path>
+ <globmapper from="*.java" to="*.class"/>
+ </pathconvert>
+ <tempfile deleteonexit="true" property="javac.includesfile.binary"/>
+ <echo file="${javac.includesfile.binary}" message="${javac.includes.binary}"/>
+ <delete>
+ <files includesfile="${javac.includesfile.binary}"/>
+ </delete>
+ <delete file="${javac.includesfile.binary}"/>
+ </sequential>
+ </macrodef>
+ </target>
+ <target if="${junit.available}" name="-init-macrodef-junit-init">
+ <condition else="false" property="nb.junit.batch" value="true">
+ <and>
+ <istrue value="${junit.available}"/>
+ <not>
+ <isset property="test.method"/>
+ </not>
+ </and>
+ </condition>
+ <condition else="false" property="nb.junit.single" value="true">
+ <and>
+ <istrue value="${junit.available}"/>
+ <isset property="test.method"/>
+ </and>
+ </condition>
+ </target>
+ <target name="-init-test-properties">
+ <property name="test.binaryincludes" value="<nothing>"/>
+ <property name="test.binarytestincludes" value=""/>
+ <property name="test.binaryexcludes" value=""/>
+ </target>
+ <target if="${nb.junit.single}" name="-init-macrodef-junit-single" unless="${nb.junit.batch}">
+ <macrodef name="junit" uri="http://www.netbeans.org/ns/j2ee-ejbjarproject/2">
+ <attribute default="${includes}" name="includes"/>
+ <attribute default="${excludes}" name="excludes"/>
+ <attribute default="**" name="testincludes"/>
+ <attribute default="" name="testmethods"/>
+ <element name="customize" optional="true"/>
+ <sequential>
+ <junit dir="${basedir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" showoutput="true" tempdir="${java.io.tmpdir}">
+ <test methods="@{testmethods}" name="@{testincludes}" todir="${build.test.results.dir}"/>
+ <syspropertyset>
+ <propertyref prefix="test-sys-prop."/>
+ <mapper from="test-sys-prop.*" to="*" type="glob"/>
+ </syspropertyset>
+ <formatter type="brief" usefile="false"/>
+ <formatter type="xml"/>
+ <jvmarg value="-ea"/>
+ <customize/>
+ </junit>
+ </sequential>
+ </macrodef>
+ </target>
+ <target depends="-init-test-properties" if="${nb.junit.batch}" name="-init-macrodef-junit-batch" unless="${nb.junit.single}">
+ <macrodef name="junit" uri="http://www.netbeans.org/ns/j2ee-ejbjarproject/2">
+ <attribute default="${includes}" name="includes"/>
+ <attribute default="${excludes}" name="excludes"/>
+ <attribute default="**" name="testincludes"/>
+ <attribute default="" name="testmethods"/>
+ <element name="customize" optional="true"/>
+ <sequential>
+ <property name="run.jvmargs.ide" value=""/>
+ <junit dir="${basedir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" showoutput="true" tempdir="${build.dir}">
+ <batchtest todir="${build.test.results.dir}">
+ <fileset dir="${test.src.dir}" excludes="@{excludes},${excludes}" includes="@{includes}">
+ <filename name="@{testincludes}"/>
+ </fileset>
+ <fileset dir="${build.test.classes.dir}" excludes="@{excludes},${excludes},${test.binaryexcludes}" includes="${test.binaryincludes}">
+ <filename name="${test.binarytestincludes}"/>
+ </fileset>
+ </batchtest>
+ <syspropertyset>
+ <propertyref prefix="test-sys-prop."/>
+ <mapper from="test-sys-prop.*" to="*" type="glob"/>
+ </syspropertyset>
+ <formatter type="brief" usefile="false"/>
+ <formatter type="xml"/>
+ <jvmarg value="-ea"/>
+ <jvmarg line="${run.jvmargs.ide}"/>
+ <customize/>
+ </junit>
+ </sequential>
+ </macrodef>
+ </target>
+ <target depends="-init-macrodef-junit-init,-init-macrodef-junit-single, -init-macrodef-junit-batch" if="${junit.available}" name="-init-macrodef-junit"/>
+ <target if="${testng.available}" name="-init-macrodef-testng">
+ <macrodef name="testng" uri="http://www.netbeans.org/ns/j2ee-ejbjarproject/2">
+ <attribute default="${includes}" name="includes"/>
+ <attribute default="${excludes}" name="excludes"/>
+ <attribute default="**" name="testincludes"/>
+ <attribute default="" name="testmethods"/>
+ <element name="customize" optional="true"/>
+ <sequential>
+ <condition else="" property="testng.methods.arg" value="@{testincludes}.@{testmethods}">
+ <isset property="test.method"/>
+ </condition>
+ <union id="test.set">
+ <fileset dir="${test.src.dir}" excludes="@{excludes},**/*.xml,${excludes}" includes="@{includes}">
+ <filename name="@{testincludes}"/>
+ </fileset>
+ </union>
+ <taskdef classname="org.testng.TestNGAntTask" classpath="${run.test.classpath}" name="testng"/>
+ <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="PizzaService-ejb" testname="TestNG tests" workingDir="${basedir}">
+ <xmlfileset dir="${build.test.classes.dir}" includes="@{testincludes}"/>
+ <propertyset>
+ <propertyref prefix="test-sys-prop."/>
+ <mapper from="test-sys-prop.*" to="*" type="glob"/>
+ </propertyset>
+ <customize/>
+ </testng>
+ </sequential>
+ </macrodef>
+ </target>
+ <target name="-init-macrodef-test-impl">
+ <macrodef name="test-impl" uri="http://www.netbeans.org/ns/j2ee-ejbjarproject/2">
+ <attribute default="${includes}" name="includes"/>
+ <attribute default="${excludes}" name="excludes"/>
+ <attribute default="**" name="testincludes"/>
+ <attribute default="" name="testmethods"/>
+ <element implicit="true" name="customize" optional="true"/>
+ <sequential>
+ <echo>No tests executed.</echo>
+ </sequential>
+ </macrodef>
+ </target>
+ <target depends="-init-macrodef-junit" if="${junit.available}" name="-init-macrodef-junit-impl">
+ <macrodef name="test-impl" uri="http://www.netbeans.org/ns/j2ee-ejbjarproject/2">
+ <attribute default="${includes}" name="includes"/>
+ <attribute default="${excludes}" name="excludes"/>
+ <attribute default="**" name="testincludes"/>
+ <attribute default="" name="testmethods"/>
+ <element implicit="true" name="customize" optional="true"/>
+ <sequential>
+ <ejbjarproject2:junit excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}">
+ <customize/>
+ </ejbjarproject2:junit>
+ </sequential>
+ </macrodef>
+ </target>
+ <target depends="-init-macrodef-testng" if="${testng.available}" name="-init-macrodef-testng-impl">
+ <macrodef name="test-impl" uri="http://www.netbeans.org/ns/j2ee-ejbjarproject/2">
+ <attribute default="${includes}" name="includes"/>
+ <attribute default="${excludes}" name="excludes"/>
+ <attribute default="**" name="testincludes"/>
+ <attribute default="" name="testmethods"/>
+ <element implicit="true" name="customize" optional="true"/>
+ <sequential>
+ <ejbjarproject2:testng excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}">
+ <customize/>
+ </ejbjarproject2:testng>
+ </sequential>
+ </macrodef>
+ </target>
+ <target depends="-init-macrodef-test-impl,-init-macrodef-junit-impl,-init-macrodef-testng-impl" name="-init-macrodef-test">
+ <macrodef name="test" uri="http://www.netbeans.org/ns/j2ee-ejbjarproject/2">
+ <attribute default="${includes}" name="includes"/>
+ <attribute default="${excludes}" name="excludes"/>
+ <attribute default="**" name="testincludes"/>
+ <attribute default="" name="testmethods"/>
+ <sequential>
+ <ejbjarproject2:test-impl excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}">
+ <customize>
+ <classpath>
+ <path path="${run.test.classpath}"/>
+ <path path="${j2ee.platform.classpath}"/>
+ <path path="${j2ee.platform.embeddableejb.classpath}"/>
+ </classpath>
+ <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
+ <jvmarg line="${runmain.jvmargs}"/>
+ </customize>
+ </ejbjarproject2:test-impl>
+ </sequential>
+ </macrodef>
+ </target>
+ <target if="${junit.available}" name="-init-macrodef-junit-debug" unless="${nb.junit.batch}">
+ <macrodef name="junit-debug" uri="http://www.netbeans.org/ns/j2ee-ejbjarproject/2">
+ <attribute default="${includes}" name="includes"/>
+ <attribute default="${excludes}" name="excludes"/>
+ <attribute default="**" name="testincludes"/>
+ <attribute default="" name="testmethods"/>
+ <element name="customize" optional="true"/>
+ <sequential>
+ <junit dir="${basedir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" showoutput="true" tempdir="${java.io.tmpdir}">
+ <test methods="@{testmethods}" name="@{testincludes}" todir="${build.test.results.dir}"/>
+ <syspropertyset>
+ <propertyref prefix="test-sys-prop."/>
+ <mapper from="test-sys-prop.*" to="*" type="glob"/>
+ </syspropertyset>
+ <formatter type="brief" usefile="false"/>
+ <formatter type="xml"/>
+ <jvmarg value="-ea"/>
+ <jvmarg line="${debug-args-line}"/>
+ <jvmarg value="-Xrunjdwp:transport=${debug-transport},address=${jpda.address}"/>
+ <customize/>
+ </junit>
+ </sequential>
+ </macrodef>
+ </target>
+ <target depends="-init-test-properties" if="${nb.junit.batch}" name="-init-macrodef-junit-debug-batch">
+ <macrodef name="junit-debug" uri="http://www.netbeans.org/ns/j2ee-ejbjarproject/2">
+ <attribute default="${includes}" name="includes"/>
+ <attribute default="${excludes}" name="excludes"/>
+ <attribute default="**" name="testincludes"/>
+ <attribute default="" name="testmethods"/>
+ <element name="customize" optional="true"/>
+ <sequential>
+ <property name="run.jvmargs.ide" value=""/>
+ <junit dir="${basedir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" showoutput="true" tempdir="${build.dir}">
+ <batchtest todir="${build.test.results.dir}">
+ <fileset dir="${test.src.dir}" excludes="@{excludes},${excludes}" includes="@{includes}">
+ <filename name="@{testincludes}"/>
+ </fileset>
+ <fileset dir="${build.test.classes.dir}" excludes="@{excludes},${excludes},${test.binaryexcludes}" includes="${test.binaryincludes}">
+ <filename name="${test.binarytestincludes}"/>
+ </fileset>
+ </batchtest>
+ <syspropertyset>
+ <propertyref prefix="test-sys-prop."/>
+ <mapper from="test-sys-prop.*" to="*" type="glob"/>
+ </syspropertyset>
+ <formatter type="brief" usefile="false"/>
+ <formatter type="xml"/>
+ <jvmarg value="-ea"/>
+ <jvmarg line="${run.jvmargs.ide}"/>
+ <jvmarg line="${debug-args-line}"/>
+ <jvmarg value="-Xrunjdwp:transport=${debug-transport},address=${jpda.address}"/>
+ <customize/>
+ </junit>
+ </sequential>
+ </macrodef>
+ </target>
+ <target depends="-init-macrodef-junit-debug,-init-macrodef-junit-debug-batch" if="${junit.available}" name="-init-macrodef-junit-debug-impl">
+ <macrodef name="test-debug-impl" uri="http://www.netbeans.org/ns/j2ee-ejbjarproject/2">
+ <attribute default="${includes}" name="includes"/>
+ <attribute default="${excludes}" name="excludes"/>
+ <attribute default="**" name="testincludes"/>
+ <attribute default="" name="testmethods"/>
+ <element implicit="true" name="customize" optional="true"/>
+ <sequential>
+ <ejbjarproject2:junit-debug excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}">
+ <customize/>
+ </ejbjarproject2:junit-debug>
+ </sequential>
+ </macrodef>
+ </target>
+ <target if="${testng.available}" name="-init-macrodef-testng-debug">
+ <macrodef name="testng-debug" uri="http://www.netbeans.org/ns/j2ee-ejbjarproject/2">
+ <attribute default="${main.class}" name="testClass"/>
+ <attribute default="" name="testMethod"/>
+ <element name="customize2" optional="true"/>
+ <sequential>
+ <condition else="-testclass @{testClass}" property="test.class.or.method" value="-methods @{testClass}.@{testMethod}">
+ <isset property="test.method"/>
+ </condition>
+ <condition else="-suitename PizzaService-ejb -testname @{testClass} ${test.class.or.method}" property="testng.cmd.args" value="@{testClass}">
+ <matches pattern=".*\.xml" string="@{testClass}"/>
+ </condition>
+ <delete dir="${build.test.results.dir}" quiet="true"/>
+ <mkdir dir="${build.test.results.dir}"/>
+ <ejbjarproject1:debug args="${testng.cmd.args}" classname="org.testng.TestNG" classpath="${debug.test.classpath}:${j2ee.platform.embeddableejb.classpath}">
+ <customize>
+ <customize2/>
+ <jvmarg value="-ea"/>
+ <arg line="${testng.debug.mode}"/>
+ <arg line="-d ${build.test.results.dir}"/>
+ <arg line="-listener org.testng.reporters.VerboseReporter"/>
+ </customize>
+ </ejbjarproject1:debug>
+ </sequential>
+ </macrodef>
+ </target>
+ <target depends="-init-macrodef-testng-debug" if="${testng.available}" name="-init-macrodef-testng-debug-impl">
+ <macrodef name="testng-debug-impl" uri="http://www.netbeans.org/ns/j2ee-ejbjarproject/2">
+ <attribute default="${main.class}" name="testClass"/>
+ <attribute default="" name="testMethod"/>
+ <element implicit="true" name="customize2" optional="true"/>
+ <sequential>
+ <ejbjarproject2:testng-debug testClass="@{testClass}" testMethod="@{testMethod}">
+ <customize2/>
+ </ejbjarproject2:testng-debug>
+ </sequential>
+ </macrodef>
+ </target>
+ <target depends="-init-macrodef-junit-debug-impl" if="${junit.available}" name="-init-macrodef-test-debug-junit">
+ <macrodef name="test-debug" uri="http://www.netbeans.org/ns/j2ee-ejbjarproject/2">
+ <attribute default="${includes}" name="includes"/>
+ <attribute default="${excludes}" name="excludes"/>
+ <attribute default="**" name="testincludes"/>
+ <attribute default="" name="testmethods"/>
+ <attribute default="${main.class}" name="testClass"/>
+ <attribute default="" name="testMethod"/>
+ <sequential>
+ <ejbjarproject2:test-debug-impl excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}">
+ <customize>
+ <classpath>
+ <path path="${run.test.classpath}"/>
+ <path path="${j2ee.platform.classpath}"/>
+ <path path="${j2ee.platform.embeddableejb.classpath}"/>
+ </classpath>
+ <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
+ <jvmarg line="${runmain.jvmargs}"/>
+ </customize>
+ </ejbjarproject2:test-debug-impl>
+ </sequential>
+ </macrodef>
+ </target>
+ <target depends="-init-macrodef-testng-debug-impl" if="${testng.available}" name="-init-macrodef-test-debug-testng">
+ <macrodef name="test-debug" uri="http://www.netbeans.org/ns/j2ee-ejbjarproject/2">
+ <attribute default="${includes}" name="includes"/>
+ <attribute default="${excludes}" name="excludes"/>
+ <attribute default="**" name="testincludes"/>
+ <attribute default="" name="testmethods"/>
+ <attribute default="${main.class}" name="testClass"/>
+ <attribute default="" name="testMethod"/>
+ <sequential>
+ <ejbjarproject2:testng-debug-impl testClass="@{testClass}" testMethod="@{testMethod}">
+ <customize2>
+ <syspropertyset>
+ <propertyref prefix="test-sys-prop."/>
+ <mapper from="test-sys-prop.*" to="*" type="glob"/>
+ </syspropertyset>
+ </customize2>
+ </ejbjarproject2:testng-debug-impl>
+ </sequential>
+ </macrodef>
+ </target>
+ <target depends="-init-macrodef-test-debug-junit,-init-macrodef-test-debug-testng" name="-init-macrodef-test-debug"/>
+ <target name="-init-macrodef-java">
+ <macrodef name="java" uri="http://www.netbeans.org/ns/j2ee-ejbjarproject/3">
+ <attribute default="${main.class}" name="classname"/>
+ <element name="customize" optional="true"/>
+ <sequential>
+ <java classname="@{classname}" fork="true">
+ <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
+ <jvmarg line="${runmain.jvmargs}"/>
+ <classpath>
+ <path path="${build.classes.dir}:${javac.classpath}:${j2ee.platform.classpath}"/>
+ </classpath>
+ <syspropertyset>
+ <propertyref prefix="run-sys-prop."/>
+ <mapper from="run-sys-prop.*" to="*" type="glob"/>
+ </syspropertyset>
+ <customize/>
+ </java>
+ </sequential>
+ </macrodef>
+ </target>
+ <target depends="-init-debug-args" name="-init-macrodef-nbjpda">
+ <macrodef name="nbjpdastart" uri="http://www.netbeans.org/ns/j2ee-ejbjarproject/1">
+ <attribute default="${main.class}" name="name"/>
+ <attribute default="${debug.classpath}" name="classpath"/>
+ <sequential>
+ <nbjpdastart addressproperty="jpda.address" name="@{name}" transport="${debug-transport}">
+ <classpath>
+ <path path="@{classpath}"/>
+ </classpath>
+ </nbjpdastart>
+ </sequential>
+ </macrodef>
+ <macrodef name="nbjpdareload" uri="http://www.netbeans.org/ns/j2ee-ejbjarproject/1">
+ <attribute default="${build.classes.dir}" name="dir"/>
+ <sequential>
+ <nbjpdareload>
+ <fileset dir="@{dir}" includes="${fix.classes}">
+ <include name="${fix.includes}*.class"/>
+ </fileset>
+ </nbjpdareload>
+ </sequential>
+ </macrodef>
+ <macrodef name="nbjpdaappreloaded" uri="http://www.netbeans.org/ns/j2ee-ejbjarproject/1">
+ <sequential>
+ <nbjpdaappreloaded/>
+ </sequential>
+ </macrodef>
+ </target>
+ <target name="-init-debug-args">
+ <property name="version-output" value="java version "${ant.java.version}"/>
+ <condition property="have-jdk-older-than-1.4">
+ <or>
+ <contains string="${version-output}" substring="java version "1.0"/>
+ <contains string="${version-output}" substring="java version "1.1"/>
+ <contains string="${version-output}" substring="java version "1.2"/>
+ <contains string="${version-output}" substring="java version "1.3"/>
+ </or>
+ </condition>
+ <condition else="-Xdebug" property="debug-args-line" value="-Xdebug -Xnoagent -Djava.compiler=none">
+ <istrue value="${have-jdk-older-than-1.4}"/>
+ </condition>
+ <condition else="dt_socket" property="debug-transport-by-os" value="dt_shmem">
+ <os family="windows"/>
+ </condition>
+ <condition else="${debug-transport-by-os}" property="debug-transport" value="${debug.transport}">
+ <isset property="debug.transport"/>
+ </condition>
+ </target>
+ <target depends="-init-debug-args" name="-init-macrodef-debug">
+ <macrodef name="debug" uri="http://www.netbeans.org/ns/j2ee-ejbjarproject/1">
+ <attribute default="${main.class}" name="classname"/>
+ <attribute default="${debug.classpath}" name="classpath"/>
+ <attribute default="${application.args}" name="args"/>
+ <element name="customize" optional="true"/>
+ <sequential>
+ <java classname="@{classname}" fork="true">
+ <jvmarg line="${debug-args-line}"/>
+ <jvmarg value="-Xrunjdwp:transport=${debug-transport},address=${jpda.address}"/>
+ <jvmarg line="${runmain.jvmargs}"/>
+ <classpath>
+ <path path="@{classpath}"/>
+ </classpath>
+ <arg line="@{args}"/>
+ <customize/>
+ </java>
+ </sequential>
+ </macrodef>
+ </target>
+ <target name="-init-taskdefs">
+ <fail unless="libs.CopyLibs.classpath">
+The libs.CopyLibs.classpath property is not set up.
+This property must point to
+org-netbeans-modules-java-j2seproject-copylibstask.jar file which is part
+of NetBeans IDE installation and is usually located at
<netbeans_installation>/java<version>/ant/extra folder.
- Either open the project in the IDE and make sure CopyLibs library
- exists or setup the property manually. For example like this:
- ant -Dlibs.CopyLibs.classpath=a/path/to/org-netbeans-modules-java-j2seproject-copylibstask.jar
- </fail>
- <taskdef classpath="${libs.CopyLibs.classpath}" resource="org/netbeans/modules/java/j2seproject/copylibstask/antlib.xml"/>
- </target>
- <!--
- pre NB7.2 profiling section; consider it deprecated
- -->
- <target depends="-profile-pre-init, init, -profile-post-init, -profile-init-check" if="profiler.info.jvmargs.agent" name="profile-init"/>
- <target if="profiler.info.jvmargs.agent" name="-profile-pre-init">
- <!-- Empty placeholder for easier customization. -->
- <!-- You can override this target in the ../build.xml file. -->
- </target>
- <target if="profiler.info.jvmargs.agent" name="-profile-post-init">
- <!-- Empty placeholder for easier customization. -->
- <!-- You can override this target in the ../build.xml file. -->
- </target>
- <target depends="-profile-pre-init, init, -profile-post-init" if="profiler.info.jvmargs.agent" name="-profile-init-check">
- <fail unless="profiler.info.jvm">Must set JVM to use for profiling in profiler.info.jvm</fail>
- <fail unless="profiler.info.jvmargs.agent">Must set profiler agent JVM arguments in profiler.info.jvmargs.agent</fail>
- </target>
- <!--
- end of pre NB7.2 profiling section
- -->
- <target depends="pre-init,init-private,init-userdir,init-user,init-project,do-init,post-init,init-check,-init-taskdefs" name="init"/>
- <!--
- COMPILATION SECTION
- -->
- <target depends="init" name="deps-jar" unless="no.deps">
- <condition property="build.deploy.on.save" value="false">
- <not>
- <isset property="build.deploy.on.save"/>
- </not>
- </condition>
- </target>
- <target depends="init" name="deps-j2ee-archive" unless="no.deps">
- <condition property="build.deploy.on.save" value="false">
- <not>
- <isset property="build.deploy.on.save"/>
- </not>
- </condition>
- <ant antfile="${project.PizzaService-ejb}/build.xml" inheritall="false" target="dist-ear">
- <property location="${build.dir}" name="dist.ear.dir"/>
- <property name="deploy.on.save" value="${build.deploy.on.save}"/>
- </ant>
- <ant antfile="${project.jshop-ejb}/build.xml" inheritall="false" target="dist-ear">
- <property location="${build.dir}" name="dist.ear.dir"/>
- <property name="deploy.on.save" value="${build.deploy.on.save}"/>
- </ant>
- </target>
- <target depends="init,deps-jar,deps-j2ee-archive" name="pre-pre-compile"/>
- <target name="pre-compile">
- <!-- Empty placeholder for easier customization. -->
- <!-- You can override this target in the ../build.xml file. -->
- </target>
- <target depends="init,deps-jar,pre-pre-compile,pre-compile,-do-compile-deps" name="do-compile">
- <copy todir="${build.dir}/META-INF">
- <fileset dir="${meta.inf}"/>
- </copy>
- </target>
- <target depends="init,deps-jar,pre-pre-compile,pre-compile" name="-do-compile-deps">
- <copyfiles files="${reference.PizzaService-ejb.dist-ear}" todir="${build.dir}//"/>
- <copyfiles files="${reference.jshop-ejb.dist-ear}" todir="${build.dir}//"/>
- </target>
- <target name="post-compile">
- <!-- Empty placeholder for easier customization. -->
- <!-- You can override this target in the ../build.xml file. -->
- </target>
- <target depends="init,deps-jar,pre-pre-compile,pre-compile,do-compile,post-compile" description="Compile project." name="compile"/>
- <!--
- DIST BUILDING SECTION
- -->
- <target name="pre-dist">
- <!-- Empty placeholder for easier customization. -->
- <!-- You can override this target in the ../build.xml file. -->
- </target>
- <target depends="init,compile,pre-dist" name="do-dist-without-manifest" unless="has.custom.manifest">
- <dirname file="${dist.jar}" property="dist.jar.dir"/>
- <mkdir dir="${dist.jar.dir}"/>
- <jar compress="${jar.compress}" jarfile="${dist.jar}">
- <fileset dir="${build.dir}"/>
- </jar>
- </target>
- <target depends="init,compile,pre-dist" if="has.custom.manifest" name="do-dist-with-manifest">
- <dirname file="${dist.jar}" property="dist.jar.dir"/>
- <mkdir dir="${dist.jar.dir}"/>
- <jar compress="${jar.compress}" jarfile="${dist.jar}" manifest="${meta.inf}/MANIFEST.MF">
- <fileset dir="${build.dir}"/>
- </jar>
- </target>
- <!--
- TARGETS NEEDED TO SUPPORT DIRECTORY DEPLOYMENT
- -->
- <target depends="init,compile,pre-dist" if="do.package.without.custom.manifest.not.directory.deploy" name="-do-tmp-dist-without-manifest">
- <dirname file="${dist.jar}" property="dist.jar.dir"/>
- <mkdir dir="${dist.jar.dir}"/>
- <jar compress="${jar.compress}" jarfile="${dist.jar}">
- <fileset dir="${build.dir}"/>
- </jar>
- </target>
- <target depends="init,compile,pre-dist" if="do.package.with.custom.manifest.not.directory.deploy" name="-do-tmp-dist-with-manifest">
- <dirname file="${dist.jar}" property="dist.jar.dir"/>
- <mkdir dir="${dist.jar.dir}"/>
- <jar compress="${jar.compress}" jarfile="${dist.jar}" manifest="${meta.inf}/MANIFEST.MF">
- <fileset dir="${build.dir}"/>
- </jar>
- </target>
- <target depends="init,compile,pre-dist,-do-tmp-dist-without-manifest,-do-tmp-dist-with-manifest" name="-do-dist-directory-deploy"/>
- <target depends="init,compile,pre-dist,-do-dist-directory-deploy,post-dist" description="Build distribution (JAR) - if directory deployment is not supported." name="dist-directory-deploy"/>
- <!--
- END TARGETS NEEDED TO SUPPORT DIRECTORY DEPLOYMENT
- -->
- <target name="post-dist">
- <!-- Empty placeholder for easier customization. -->
- <!-- You can override this target in the ../build.xml file. -->
- </target>
- <target depends="init,compile,pre-dist,do-dist-without-manifest,do-dist-with-manifest,post-dist" description="Build distribution (JAR)." name="dist"/>
- <!--
- EXECUTION SECTION
- -->
- <target depends="run-deploy,run-display-browser,run-ac" description="Deploy to server." name="run"/>
- <target name="pre-run-deploy">
- <!-- Empty placeholder for easier customization. -->
- <!-- You can override this target in the ../build.xml file. -->
- </target>
- <target name="post-run-deploy">
- <!-- Empty placeholder for easier customization. -->
- <!-- You can override this target in the ../build.xml file. -->
- </target>
- <target name="-pre-nbmodule-run-deploy">
- <!-- Empty placeholder for easier customization. -->
- <!-- This target can be overriden by NetBeans modules. Don't override it directly, use -pre-run-deploy task instead. -->
- </target>
- <target name="-post-nbmodule-run-deploy">
- <!-- Empty placeholder for easier customization. -->
- <!-- This target can be overriden by NetBeans modules. Don't override it directly, use -post-run-deploy task instead. -->
- </target>
- <target name="-run-deploy-am" unless="no.deps">
- <!-- Task to deploy to the Access Manager runtime. -->
- <ant antfile="${project.PizzaService-ejb}/build.xml" inheritall="false" target="-run-deploy-am"/>
- <ant antfile="${project.jshop-ejb}/build.xml" inheritall="false" target="-run-deploy-am"/>
- </target>
- <target depends="-init-cos,dist-directory-deploy,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" name="run-deploy"/>
- <target if="netbeans.home" name="-run-deploy-nb">
- <nbdeploy clientModuleUri="${client.module.uri}" clientUrlPart="${client.urlPart}" debugmode="false" forceRedeploy="${forceRedeploy}"/>
- </target>
- <target name="-init-deploy-ant" unless="netbeans.home">
- <property name="deploy.ant.archive" value="${dist.jar}"/>
- <property name="deploy.ant.resource.dir" value="${resource.dir}"/>
- <property name="deploy.ant.enabled" value="true"/>
- </target>
- <target depends="dist,-run-undeploy-nb,-init-deploy-ant,-undeploy-ant" name="run-undeploy"/>
- <target if="netbeans.home" name="-run-undeploy-nb">
- <fail message="Undeploy is not supported from within the IDE"/>
- </target>
- <target depends="dist" name="verify">
- <nbverify file="${dist.jar}"/>
- </target>
- <target depends="run-deploy,-init-display-browser,-display-browser-nb-old,-display-browser-nb,-display-browser-cl" name="run-display-browser"/>
- <target if="do.display.browser" name="-init-display-browser">
- <condition property="do.display.browser.nb.old">
- <and>
- <isset property="netbeans.home"/>
- <not>
- <isset property="browser.context"/>
- </not>
- </and>
- </condition>
- <condition property="do.display.browser.nb">
- <and>
- <isset property="netbeans.home"/>
- <isset property="browser.context"/>
- </and>
- </condition>
- <condition property="do.display.browser.cl">
- <and>
- <isset property="deploy.ant.enabled"/>
- <isset property="deploy.ant.client.url"/>
- </and>
- </condition>
- </target>
- <target if="do.display.browser.nb.old" name="-display-browser-nb-old">
- <nbbrowse url="${client.url}"/>
- </target>
- <target if="do.display.browser.nb" name="-display-browser-nb">
- <nbbrowse context="${browser.context}" url="${client.url}" urlPath="${client.urlPart}"/>
- </target>
- <target if="do.display.browser.cl" name="-get-browser" unless="browser">
- <condition property="browser" value="rundll32">
- <os family="windows"/>
- </condition>
- <condition else="" property="browser.args" value="url.dll,FileProtocolHandler">
- <os family="windows"/>
- </condition>
- <condition property="browser" value="/usr/bin/open">
- <os family="mac"/>
- </condition>
- <property environment="env"/>
- <condition property="browser" value="${env.BROWSER}">
- <isset property="env.BROWSER"/>
- </condition>
- <condition property="browser" value="/usr/bin/firefox">
- <available file="/usr/bin/firefox"/>
- </condition>
- <condition property="browser" value="/usr/local/firefox/firefox">
- <available file="/usr/local/firefox/firefox"/>
- </condition>
- <condition property="browser" value="/usr/bin/mozilla">
- <available file="/usr/bin/mozilla"/>
- </condition>
- <condition property="browser" value="/usr/local/mozilla/mozilla">
- <available file="/usr/local/mozilla/mozilla"/>
- </condition>
- <condition property="browser" value="/usr/sfw/lib/firefox/firefox">
- <available file="/usr/sfw/lib/firefox/firefox"/>
- </condition>
- <condition property="browser" value="/opt/csw/bin/firefox">
- <available file="/opt/csw/bin/firefox"/>
- </condition>
- <condition property="browser" value="/usr/sfw/lib/mozilla/mozilla">
- <available file="/usr/sfw/lib/mozilla/mozilla"/>
- </condition>
- <condition property="browser" value="/opt/csw/bin/mozilla">
- <available file="/opt/csw/bin/mozilla"/>
- </condition>
- </target>
- <target depends="-get-browser" if="do.display.browser.cl" name="-display-browser-cl">
- <fail unless="browser">
- Browser not found, cannot launch the deployed application. Try to set the BROWSER environment variable.
- </fail>
- <property name="browse.url" value="${deploy.ant.client.url}${client.urlPart}"/>
- <echo>Launching ${browse.url}</echo>
- <exec executable="${browser}" spawn="true">
- <arg line="${browser.args} ${browse.url}"/>
- </exec>
- </target>
- <target if="app.client" name="run-ac">
- <antcall target="-run-ac"/>
- </target>
- <target depends="init,-as-retrieve-option-workaround,-init-run-macros,-run-appclient-pregfv3,-run-appclient" name="-run-ac"/>
- <target if="j2ee.appclient.tool.args" name="-run-appclient-pregfv3">
- <ear2:run-appclient-pregfv3/>
- </target>
- <target name="-run-appclient" unless="j2ee.appclient.tool.args">
- <ear2:run-appclient subprojectname="${app.client}"/>
- </target>
- <target if="j2ee.appclient.mainclass.args" name="-as-retrieve-option-workaround" unless="j2ee.clientName">
- <property name="client.jar" value="${dist.dir}/PizzaServiceClient.jar"/>
- <sleep seconds="3"/>
- <copy failonerror="false" file="${wa.copy.client.jar.from}/PizzaService/PizzaServiceClient.jar" todir="${dist.dir}"/>
- <copy failonerror="false" flatten="true" todir="${dist.dir}/">
- <fileset dir="${wa.copy.client.jar.from}/PizzaService" includes="**/PizzaServiceClient.jar"/>
- </copy>
- <copy flatten="true" todir="${dist.dir}/PizzaServiceClient">
- <fileset dir="${wa.copy.client.jar.from}/PizzaService" includes="**/*.*ar"/>
- </copy>
- <copy failonerror="false" flatten="false" todir="${dist.dir}/PizzaServiceClient">
- <fileset dir="${dist.dir}/gfdeploy/PizzaService" includes="**/*.jar"/>
- </copy>
- </target>
- <target depends="init" name="-init-run-macros">
- <macrodef name="run-appclient" uri="http://www.netbeans.org/ns/j2ee-earproject/2">
- <attribute name="subprojectname"/>
- <attribute default="${application.args.param}" name="args"/>
- <element name="customize" optional="true"/>
- <sequential>
- <java dir="${basedir}" fork="true" jar="${client.jar}">
- <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
- <jvmarg line="${j2ee.appclient.tool.jvmoptions}${client.jar},arg=-name,arg=@{subprojectname}"/>
- <jvmarg line="${j2ee.appclient.jvmoptions.param}"/>
- <arg line="@{args}"/>
- <syspropertyset>
- <propertyref prefix="run-sys-prop."/>
- <mapper from="run-sys-prop.*" to="*" type="glob"/>
- </syspropertyset>
- <customize/>
- </java>
- </sequential>
- </macrodef>
- <macrodef name="run-appclient-pregfv3" uri="http://www.netbeans.org/ns/j2ee-earproject/2">
- <element name="customize" optional="true"/>
- <sequential>
- <java classname="${j2ee.appclient.tool.mainclass}" fork="true">
- <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
- <jvmarg line="${j2ee.appclient.tool.jvmoptions}"/>
- <jvmarg line="${j2ee.appclient.jvmoptions.param}"/>
- <arg line="${j2ee.appclient.tool.args}"/>
- <arg line="-client ${client.jar}"/>
- <arg line="${j2ee.appclient.mainclass.tool.param}"/>
- <arg line="${application.args.param}"/>
- <classpath>
- <path path="${j2ee.platform.classpath}:${j2ee.appclient.tool.runtime}"/>
- </classpath>
- <syspropertyset>
- <propertyref prefix="run-sys-prop."/>
- <mapper from="run-sys-prop.*" to="*" type="glob"/>
- </syspropertyset>
- <customize/>
- </java>
- </sequential>
- </macrodef>
- </target>
- <!--
- DEBUGGING SECTION
- -->
- <target depends="run-debug,run-debug-appclient" description="Deploy to server." name="debug"/>
- <target depends="dist" description="Debug project in IDE." if="netbeans.home" name="run-debug" unless="app.client">
- <nbdeploy clientModuleUri="${client.module.uri}" clientUrlPart="${client.urlPart}" debugmode="true"/>
- <antcall target="connect-debugger"/>
- <antcall target="debug-display-browser-old"/>
- <antcall target="debug-display-browser"/>
- </target>
- <target name="connect-debugger" unless="is.debugged">
- <condition property="listeningcp" value="sourcepath">
- <istrue value="${j2ee.compile.on.save}"/>
- </condition>
- <nbjpdaconnect address="${jpda.address}" host="${jpda.host}" listeningcp="${listeningcp}" name="${jpda.host}:${jpda.address}" transport="${jpda.transport}">
- <classpath>
- <path path="${debug.classpath}"/>
- <fileset dir="${build.dir}" includes="lib/*.jar"/>
- </classpath>
- <sourcepath>
- <path path="${ear.docbase.dirs}"/>
- </sourcepath>
- </nbjpdaconnect>
- </target>
- <target if="do.display.browser.old" name="debug-display-browser-old">
- <nbbrowse url="${client.url}"/>
- </target>
- <target if="do.display.browser" name="debug-display-browser">
- <nbbrowse context="${browser.context}" url="${client.url}" urlPath="${client.urlPart}"/>
- </target>
- <target if="can.debug.appclient" name="run-debug-appclient">
- <antcall target="-run-debug-appclient"/>
- </target>
- <target depends="init,-init-debug-args,-debug-appclient-deploy,-as-retrieve-option-workaround,-init-debug-macros,-debug-appclient-start-nbjpda,-debug-appclient-pregfv3,-debug-appclient,connect-debugger" name="-run-debug-appclient"/>
- <target name="-init-debug-args">
- <property name="version-output" value="java version "${ant.java.version}"/>
- <condition property="have-jdk-older-than-1.4">
- <or>
- <contains string="${version-output}" substring="java version "1.0"/>
- <contains string="${version-output}" substring="java version "1.1"/>
- <contains string="${version-output}" substring="java version "1.2"/>
- <contains string="${version-output}" substring="java version "1.3"/>
- </or>
- </condition>
- <condition else="-Xdebug" property="debug-args-line" value="-Xdebug -Xnoagent -Djava.compiler=none">
- <istrue value="${have-jdk-older-than-1.4}"/>
- </condition>
- </target>
- <target depends="init,-init-debug-args,-as-retrieve-option-workaround,-init-run-macros" name="-init-debug-macros">
- <condition else="dt_socket" property="debug-transport-by-os" value="dt_shmem">
- <os family="windows"/>
- </condition>
- <condition else="${debug-transport-by-os}" property="debug-transport-appclient" value="${debug.transport}">
- <isset property="debug.transport"/>
- </condition>
- <macrodef name="nbjpdastart" uri="http://www.netbeans.org/ns/j2ee-earproject/2">
- <attribute default="${main.class}" name="name"/>
- <attribute default="${debug.classpath}" name="classpath"/>
- <attribute default="" name="stopclassname"/>
- <sequential>
- <nbjpdastart addressproperty="jpda.address.appclient" name="@{name}" stopclassname="@{stopclassname}" transport="${debug-transport-appclient}">
- <classpath>
- <path path="@{classpath}"/>
- </classpath>
- </nbjpdastart>
- </sequential>
- </macrodef>
- <macrodef name="debug-appclient" uri="http://www.netbeans.org/ns/j2ee-earproject/2">
- <attribute name="subprojectname"/>
- <sequential>
- <ear2:run-appclient subprojectname="@{subprojectname}">
- <customize>
- <jvmarg value="-Xrunjdwp:transport=${debug-transport-appclient},address=${jpda.address.appclient}"/>
- <jvmarg line="${debug-args-line}"/>
- </customize>
- </ear2:run-appclient>
- </sequential>
- </macrodef>
- <macrodef name="debug-appclient-pregfv3" uri="http://www.netbeans.org/ns/j2ee-earproject/2">
- <sequential>
- <ear2:run-appclient-pregfv3>
- <customize>
- <jvmarg value="-Xrunjdwp:transport=${debug-transport-appclient},address=${jpda.address.appclient}"/>
- <jvmarg line="${debug-args-line}"/>
- </customize>
- </ear2:run-appclient-pregfv3>
- </sequential>
- </macrodef>
- </target>
- <target name="-debug-appclient-deploy">
- <nbstartserver debugmode="true"/>
- <nbdeploy clientModuleUri="${client.module.uri}" clientUrlPart="${client.urlPart}" debugmode="true"/>
- </target>
- <target name="-debug-appclient-start-nbjpda">
- <ear2:nbjpdastart classpath="" name="${app.client}"/>
- </target>
- <target if="j2ee.appclient.tool.args" name="-debug-appclient-pregfv3">
- <ear2:debug-appclient-pregfv3/>
- </target>
- <target name="-debug-appclient" unless="j2ee.appclient.tool.args">
- <ear2:debug-appclient subprojectname="${app.client}"/>
- </target>
- <!--
- =================
- PROFILING SECTION
- =================
- -->
- <!--
- pre NB7.2 profiling section; consider it deprecated
- -->
- <target description="Profile a J2EE project in the IDE." if="profiler.info.jvmargs.agent" name="-profile-pre72">
- <condition else="start-profiled-server" property="profiler.startserver.target" value="start-profiled-server-extraargs">
- <isset property="profiler.info.jvmargs.extra"/>
- </condition>
- <antcall target="${profiler.startserver.target}"/>
- <antcall target="run"/>
- <antcall target="-profile-start-loadgen"/>
- </target>
- <target name="start-profiled-server">
- <nbstartprofiledserver forceRestart="${profiler.j2ee.serverForceRestart}" javaPlatform="${profiler.info.javaPlatform}" startupTimeout="${profiler.j2ee.serverStartupTimeout}">
- <jvmarg value="${profiler.info.jvmargs.agent}"/>
- <jvmarg value="${profiler.j2ee.agentID}"/>
- </nbstartprofiledserver>
- </target>
- <target name="start-profiled-server-extraargs">
- <nbstartprofiledserver forceRestart="${profiler.j2ee.serverForceRestart}" javaPlatform="${profiler.info.javaPlatform}" startupTimeout="${profiler.j2ee.serverStartupTimeout}">
- <jvmarg value="${profiler.info.jvmargs.extra}"/>
- <jvmarg value="${profiler.info.jvmargs.agent}"/>
- <jvmarg value="${profiler.j2ee.agentID}"/>
- </nbstartprofiledserver>
- </target>
- <!--
- end of pre NB7.2 profiling section
- -->
- <target if="netbeans.home" name="-profile-check">
- <condition property="profiler.configured">
- <or>
- <contains casesensitive="true" string="${run.jvmargs.ide}" substring="-agentpath:"/>
- <contains casesensitive="true" string="${run.jvmargs.ide}" substring="-javaagent:"/>
- </or>
- </condition>
- </target>
- <target depends="dist" name="-do-profile">
- <startprofiler/>
- <nbstartserver profilemode="true"/>
- <nbdeploy clientUrlPart="${client.urlPart}" forceRedeploy="true" profilemode="true"/>
- <antcall target="-profile-start-loadgen"/>
- </target>
- <target depends="-profile-check,-profile-pre72" description="Profile a J2EE project in the IDE." if="profiler.configured" name="profile">
- <antcall target="-do-profile"/>
- </target>
- <target if="profiler.loadgen.path" name="-profile-start-loadgen">
- <loadgenstart path="${profiler.loadgen.path}"/>
- </target>
- <!--
- CLEANUP SECTION
- -->
- <target depends="init" name="deps-clean" unless="no.deps">
- <condition property="build.deploy.on.save" value="false">
- <not>
- <isset property="build.deploy.on.save"/>
- </not>
- </condition>
- <ant antfile="${project.PizzaService-ejb}/build.xml" inheritall="false" target="clean-ear">
- <property location="${build.dir}" name="dist.ear.dir"/>
- <property name="deploy.on.save" value="${build.deploy.on.save}"/>
- </ant>
- <ant antfile="${project.jshop-ejb}/build.xml" inheritall="false" target="clean-ear">
- <property location="${build.dir}" name="dist.ear.dir"/>
- <property name="deploy.on.save" value="${build.deploy.on.save}"/>
- </ant>
- </target>
- <target depends="init" name="do-clean">
- <delete dir="${build.dir}"/>
- <delete dir="${dist.dir}"/>
- <delete dir="${build.dir}"/>
- </target>
- <target depends="init" if="netbeans.home" name="undeploy-clean">
- <nbundeploy failOnError="false" startServer="false"/>
- </target>
- <target name="post-clean">
- <!-- Empty placeholder for easier customization. -->
- <!-- You can override this target in the ../build.xml file. -->
- </target>
- <target depends="init,undeploy-clean,deps-clean,do-clean,post-clean" description="Clean build products." name="clean"/>
+Either open the project in the IDE and make sure CopyLibs library
+exists or setup the property manually. For example like this:
+ ant -Dlibs.CopyLibs.classpath=a/path/to/org-netbeans-modules-java-j2seproject-copylibstask.jar
+ </fail>
+ <taskdef classpath="${libs.CopyLibs.classpath}" resource="org/netbeans/modules/java/j2seproject/copylibstask/antlib.xml"/>
+ </target>
+ <target name="-init-ap-cmdline-properties">
+ <property name="annotation.processing.enabled" value="true"/>
+ <property name="annotation.processing.processors.list" value=""/>
+ <property name="annotation.processing.run.all.processors" value="true"/>
+ <property name="javac.processorpath" value="${javac.classpath}"/>
+ <property name="javac.test.processorpath" value="${javac.test.classpath}"/>
+ <condition property="ap.supported.internal" value="true">
+ <not>
+ <matches pattern="1\.[0-5](\..*)?" string="${javac.source}"/>
+ </not>
+ </condition>
+ </target>
+ <target depends="-init-ap-cmdline-properties" if="ap.supported.internal" name="-init-ap-cmdline-supported">
+ <condition else="" property="ap.processors.internal" value="-processor ${annotation.processing.processors.list}">
+ <isfalse value="${annotation.processing.run.all.processors}"/>
+ </condition>
+ <condition else="" property="ap.proc.none.internal" value="-proc:none">
+ <isfalse value="${annotation.processing.enabled}"/>
+ </condition>
+ </target>
+ <target depends="-init-ap-cmdline-properties,-init-ap-cmdline-supported" name="-init-ap-cmdline">
+ <property name="ap.cmd.line.internal" value=""/>
+ </target>
+ <!--
+ pre NB7.2 profiling section; consider it deprecated
+ -->
+ <target depends="-profile-pre-init, init, -profile-post-init, -profile-init-check" if="profiler.info.jvmargs.agent" name="profile-init"/>
+ <target if="profiler.info.jvmargs.agent" name="-profile-pre-init">
+ <!-- Empty placeholder for easier customization. -->
+ <!-- You can override this target in the ../build.xml file. -->
+ </target>
+ <target if="profiler.info.jvmargs.agent" name="-profile-post-init">
+ <!-- Empty placeholder for easier customization. -->
+ <!-- You can override this target in the ../build.xml file. -->
+ </target>
+ <target depends="-profile-pre-init, init, -profile-post-init" if="profiler.info.jvmargs.agent" name="-profile-init-check">
+ <fail unless="profiler.info.jvm">Must set JVM to use for profiling in profiler.info.jvm</fail>
+ <fail unless="profiler.info.jvmargs.agent">Must set profiler agent JVM arguments in profiler.info.jvmargs.agent</fail>
+ </target>
+ <!--
+ end of pre NB7.2 profiling section
+ -->
+ <target depends="-pre-init,-init-private,-init-userdir,-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-debug,-init-taskdefs,-init-ap-cmdline" name="init"/>
+ <!--
+ COMPILATION SECTION
+ -->
+ <target depends="init" if="no.dist.ear.dir" name="-deps-module-jar" unless="no.deps">
+ <ant antfile="${project.PizzaService-lib}/build.xml" inheritall="false" target="jar">
+ <property name="deploy.on.save" value="false"/>
+ </ant>
+ </target>
+ <target depends="init" if="dist.ear.dir" name="-deps-ear-jar" unless="no.deps">
+ <ant antfile="${project.PizzaService-lib}/build.xml" inheritall="false" target="jar">
+ <property name="deploy.on.save" value="false"/>
+ </ant>
+ </target>
+ <target depends="init, -deps-module-jar, -deps-ear-jar" name="deps-jar"/>
+ <target depends="init,deps-jar" name="-pre-pre-compile">
+ <mkdir dir="${build.classes.dir}"/>
+ <mkdir dir="${build.ear.classes.dir}"/>
+ </target>
+ <target name="-pre-compile">
+ <!-- Empty placeholder for easier customization. -->
+ <!-- You can override this target in the ../build.xml file. -->
+ </target>
+ <target depends="compile,-library-inclusion-in-archive-weblogic,-library-inclusion-in-archive-by-user" name="library-inclusion-in-archive"/>
+ <target if="is.jars.in.ejbjar" name="-library-inclusion-in-archive-by-user">
+ <copyfiles files="${file.reference.jcore.jar}" todir="${build.classes.dir}"/>
+ <copyfiles files="${file.reference.jcoreee.jar}" todir="${build.classes.dir}"/>
+ <copyfiles files="${file.reference.jcountry-core.jar}" todir="${build.classes.dir}"/>
+ <copyfiles files="${file.reference.jcountry-lib.jar}" todir="${build.classes.dir}"/>
+ <copyfiles files="${file.reference.jcore-logger-lib.jar}" todir="${build.classes.dir}"/>
+ <copyfiles files="${reference.PizzaService-lib.jar}" todir="${build.classes.dir}"/>
+ <copyfiles files="${file.reference.jcontacts-core.jar}" todir="${build.classes.dir}"/>
+ <copyfiles files="${file.reference.juser-core.jar}" todir="${build.classes.dir}"/>
+ <copyfiles files="${file.reference.juser-lib.jar}" todir="${build.classes.dir}"/>
+ <copyfiles files="${file.reference.jphone-core.jar}" todir="${build.classes.dir}"/>
+ <copyfiles files="${file.reference.jphone-lib.jar}" todir="${build.classes.dir}"/>
+ <copyfiles files="${file.reference.jshop-core.jar}" todir="${build.classes.dir}"/>
+ <copyfiles files="${file.reference.jshop-ee-lib.jar}" todir="${build.classes.dir}"/>
+ <copyfiles files="${file.reference.cdi-api.jar}" todir="${build.classes.dir}"/>
+ </target>
+ <target if="is.server.weblogic" name="-library-inclusion-in-archive-weblogic">
+ <basename file="${file.reference.jcore.jar}" property="manifest.file.reference.jcore.jar"/>
+ <basename file="${file.reference.jcoreee.jar}" property="manifest.file.reference.jcoreee.jar"/>
+ <basename file="${file.reference.jcountry-core.jar}" property="manifest.file.reference.jcountry-core.jar"/>
+ <basename file="${file.reference.jcountry-lib.jar}" property="manifest.file.reference.jcountry-lib.jar"/>
+ <basename file="${file.reference.jcore-logger-lib.jar}" property="manifest.file.reference.jcore-logger-lib.jar"/>
+ <basename file="${reference.PizzaService-lib.jar}" property="manifest.reference.PizzaService-lib.jar"/>
+ <basename file="${file.reference.jcontacts-core.jar}" property="manifest.file.reference.jcontacts-core.jar"/>
+ <basename file="${file.reference.juser-core.jar}" property="manifest.file.reference.juser-core.jar"/>
+ <basename file="${file.reference.juser-lib.jar}" property="manifest.file.reference.juser-lib.jar"/>
+ <basename file="${file.reference.jphone-core.jar}" property="manifest.file.reference.jphone-core.jar"/>
+ <basename file="${file.reference.jphone-lib.jar}" property="manifest.file.reference.jphone-lib.jar"/>
+ <basename file="${file.reference.jshop-core.jar}" property="manifest.file.reference.jshop-core.jar"/>
+ <basename file="${file.reference.jshop-ee-lib.jar}" property="manifest.file.reference.jshop-ee-lib.jar"/>
+ <basename file="${file.reference.cdi-api.jar}" property="manifest.file.reference.cdi-api.jar"/>
+ <manifest file="${build.ear.classes.dir}/META-INF/MANIFEST.MF" mode="update">
+ <attribute name="Extension-List" value="jar-1 jar-2 jar-3 jar-4 jar-5 jar-6 jar-7 jar-8 jar-9 jar-10 jar-11 jar-12 jar-13 jar-14 "/>
+ <attribute name="jar-1-Extension-Name" value="${manifest.file.reference.jcore.jar}"/>
+ <attribute name="jar-2-Extension-Name" value="${manifest.file.reference.jcoreee.jar}"/>
+ <attribute name="jar-3-Extension-Name" value="${manifest.file.reference.jcountry-core.jar}"/>
+ <attribute name="jar-4-Extension-Name" value="${manifest.file.reference.jcountry-lib.jar}"/>
+ <attribute name="jar-5-Extension-Name" value="${manifest.file.reference.jcore-logger-lib.jar}"/>
+ <attribute name="jar-6-Extension-Name" value="${manifest.reference.PizzaService-lib.jar}"/>
+ <attribute name="jar-7-Extension-Name" value="${manifest.file.reference.jcontacts-core.jar}"/>
+ <attribute name="jar-8-Extension-Name" value="${manifest.file.reference.juser-core.jar}"/>
+ <attribute name="jar-9-Extension-Name" value="${manifest.file.reference.juser-lib.jar}"/>
+ <attribute name="jar-10-Extension-Name" value="${manifest.file.reference.jphone-core.jar}"/>
+ <attribute name="jar-11-Extension-Name" value="${manifest.file.reference.jphone-lib.jar}"/>
+ <attribute name="jar-12-Extension-Name" value="${manifest.file.reference.jshop-core.jar}"/>
+ <attribute name="jar-13-Extension-Name" value="${manifest.file.reference.jshop-ee-lib.jar}"/>
+ <attribute name="jar-14-Extension-Name" value="${manifest.file.reference.cdi-api.jar}"/>
+ </manifest>
+ </target>
+ <target depends="compile" name="library-inclusion-in-manifest">
+ <copyfiles files="${file.reference.jcore.jar}" todir="${dist.ear.dir}/lib"/>
+ <copyfiles files="${file.reference.jcoreee.jar}" todir="${dist.ear.dir}/lib"/>
+ <copyfiles files="${file.reference.jcountry-core.jar}" todir="${dist.ear.dir}/lib"/>
+ <copyfiles files="${file.reference.jcountry-lib.jar}" todir="${dist.ear.dir}/lib"/>
+ <copyfiles files="${file.reference.jcore-logger-lib.jar}" todir="${dist.ear.dir}/lib"/>
+ <copyfiles files="${reference.PizzaService-lib.jar}" todir="${dist.ear.dir}/lib"/>
+ <copyfiles files="${file.reference.jcontacts-core.jar}" todir="${dist.ear.dir}/lib"/>
+ <copyfiles files="${file.reference.juser-core.jar}" todir="${dist.ear.dir}/lib"/>
+ <copyfiles files="${file.reference.juser-lib.jar}" todir="${dist.ear.dir}/lib"/>
+ <copyfiles files="${file.reference.jphone-core.jar}" todir="${dist.ear.dir}/lib"/>
+ <copyfiles files="${file.reference.jphone-lib.jar}" todir="${dist.ear.dir}/lib"/>
+ <copyfiles files="${file.reference.jshop-core.jar}" todir="${dist.ear.dir}/lib"/>
+ <copyfiles files="${file.reference.jshop-ee-lib.jar}" todir="${dist.ear.dir}/lib"/>
+ <copyfiles files="${file.reference.cdi-api.jar}" todir="${dist.ear.dir}/lib"/>
+ <manifest file="${build.ear.classes.dir}/META-INF/MANIFEST.MF" mode="update"/>
+ </target>
+ <target name="-copy-meta-inf">
+ <copy todir="${classes.dir}">
+ <fileset dir="${meta.inf}" includes="**/*.dbschema"/>
+ </copy>
+ <copy todir="${classes.dir}/META-INF">
+ <fileset dir="${meta.inf}" excludes="**/*.dbschema **/xml-resources/** ${meta.inf.excludes}"/>
+ </copy>
+ </target>
+ <target depends="init,deps-jar,-pre-pre-compile,-pre-compile,-copy-meta-inf" if="have.sources" name="-do-compile">
+ <ejbjarproject2:javac destdir="${classes.dir}" gensrcdir="${build.generated.sources.dir}"/>
+ <copy todir="${classes.dir}">
+ <fileset dir="${src.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
+ </copy>
+ </target>
+ <target name="-post-compile">
+ <!-- Empty placeholder for easier customization. -->
+ <!-- You can override this target in the ../build.xml file. -->
+ </target>
+ <target depends="init,deps-jar,-pre-pre-compile,-pre-compile,-do-compile,-post-compile" description="Compile project." name="compile"/>
+ <target name="-pre-compile-single">
+ <!-- Empty placeholder for easier customization. -->
+ <!-- You can override this target in the ../build.xml file. -->
+ </target>
+ <target depends="init,deps-jar,-pre-pre-compile" name="-do-compile-single">
+ <fail unless="javac.includes">Must select some files in the IDE or set javac.includes</fail>
+ <ejbjarproject2:javac excludes="" gensrcdir="${build.generated.sources.dir}" includes="${javac.includes}"/>
+ </target>
+ <target name="-post-compile-single">
+ <!-- Empty placeholder for easier customization. -->
+ <!-- You can override this target in the ../build.xml file. -->
+ </target>
+ <target depends="init,deps-jar,-pre-pre-compile,-pre-compile-single,-do-compile-single,-post-compile-single" name="compile-single"/>
+ <!--
+ DIST BUILDING SECTION
+ -->
+ <target name="-pre-dist">
+ <!-- Empty placeholder for easier customization. -->
+ <!-- You can override this target in the ../build.xml file. -->
+ </target>
+ <target depends="init,compile,-pre-dist,library-inclusion-in-archive" if="has.custom.manifest" name="-do-dist-with-manifest">
+ <dirname file="${dist.jar}" property="dist.jar.dir"/>
+ <mkdir dir="${dist.jar.dir}"/>
+ <jar compress="${jar.compress}" jarfile="${dist.jar}" manifest="${build.classes.dir}/META-INF/MANIFEST.MF">
+ <fileset dir="${build.classes.dir}"/>
+ </jar>
+ </target>
+ <target depends="init,compile,-pre-dist,library-inclusion-in-archive" name="-do-dist-without-manifest" unless="has.custom.manifest">
+ <dirname file="${dist.jar}" property="dist.jar.dir"/>
+ <mkdir dir="${dist.jar.dir}"/>
+ <jar compress="${jar.compress}" jarfile="${dist.jar}">
+ <fileset dir="${build.classes.dir}"/>
+ </jar>
+ </target>
+ <!--
+ TARGETS NEEDED TO SUPPORT DIRECTORY DEPLOYMENT
+ -->
+ <target depends="init,compile,-pre-dist,library-inclusion-in-archive" if="do.package.with.custom.manifest.not.directory.deploy" name="-do-tmp-dist-with-manifest">
+ <dirname file="${dist.jar}" property="dist.jar.dir"/>
+ <mkdir dir="${dist.jar.dir}"/>
+ <jar compress="${jar.compress}" jarfile="${dist.jar}" manifest="${build.classes.dir}/META-INF/MANIFEST.MF">
+ <fileset dir="${build.classes.dir}"/>
+ </jar>
+ </target>
+ <target depends="init,compile,-pre-dist,library-inclusion-in-archive" if="do.package.without.custom.manifest.not.directory.deploy" name="-do-tmp-dist-without-manifest">
+ <dirname file="${dist.jar}" property="dist.jar.dir"/>
+ <mkdir dir="${dist.jar.dir}"/>
+ <jar compress="${jar.compress}" jarfile="${dist.jar}">
+ <fileset dir="${build.classes.dir}"/>
+ </jar>
+ </target>
+ <target depends="init,compile,-pre-dist,library-inclusion-in-archive, -do-tmp-dist-without-manifest, -do-tmp-dist-with-manifest" name="-do-dist-directory-deploy"/>
+ <target depends="init,compile,-pre-dist,-do-dist-directory-deploy,-post-dist" description="Build distribution (JAR) - if directory deployment is not supported." name="dist-directory-deploy"/>
+ <!--
+ END TARGETS NEEDED TO SUPPORT DIRECTORY DEPLOYMENT
+ -->
+ <target depends="init,compile,-pre-dist,library-inclusion-in-archive, -do-dist-without-manifest, -do-dist-with-manifest" name="-do-dist"/>
+ <target depends="init,compile,-pre-dist,library-inclusion-in-manifest" name="-do-ear-dist">
+ <dirname file="${dist.ear.jar}" property="dist.jar.dir"/>
+ <mkdir dir="${dist.jar.dir}"/>
+ <jar compress="${jar.compress}" jarfile="${dist.ear.jar}" manifest="${build.ear.classes.dir}/META-INF/MANIFEST.MF">
+ <fileset dir="${build.ear.classes.dir}"/>
+ </jar>
+ </target>
+ <target name="-post-dist">
+ <!-- Empty placeholder for easier customization. -->
+ <!-- You can override this target in the ../build.xml file. -->
+ </target>
+ <target depends="init,compile,-pre-dist,-do-dist,-post-dist" description="Build distribution (JAR)." name="dist"/>
+ <target depends="init,-init-cos,compile,-pre-dist,-do-ear-dist,-post-dist" description="Build distribution (JAR) to be packaged into an EAR." name="dist-ear"/>
+ <!--
+ EXECUTION SECTION
+ -->
+ <target depends="run-deploy" description="Deploy to server." name="run"/>
+ <target name="-init-deploy">
+ <property name="include.jar.manifest" value=""/>
+ </target>
+ <target name="pre-run-deploy">
+ <!-- Empty placeholder for easier customization. -->
+ <!-- You can override this target in the ../build.xml file. -->
+ </target>
+ <target name="post-run-deploy">
+ <!-- Empty placeholder for easier customization. -->
+ <!-- You can override this target in the ../build.xml file. -->
+ </target>
+ <target name="-pre-nbmodule-run-deploy">
+ <!-- Empty placeholder for easier customization. -->
+ <!-- This target can be overriden by NetBeans modules. Don't override it directly, use -pre-run-deploy task instead. -->
+ </target>
+ <target name="-post-nbmodule-run-deploy">
+ <!-- Empty placeholder for easier customization. -->
+ <!-- This target can be overriden by NetBeans modules. Don't override it directly, use -post-run-deploy task instead. -->
+ </target>
+ <target name="-run-deploy-am">
+ <!-- Task to deploy to the Access Manager runtime. -->
+ </target>
+ <target depends="init,-init-cos,-init-deploy,compile,library-inclusion-in-archive,dist-directory-deploy,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"/>
+ <target if="netbeans.home" name="-run-deploy-nb">
+ <nbdeploy debugmode="false" forceRedeploy="${forceRedeploy}"/>
+ </target>
+ <target name="-init-deploy-ant" unless="netbeans.home">
+ <property name="deploy.ant.archive" value="${dist.jar}"/>
+ <property name="deploy.ant.resource.dir" value="${resource.dir}"/>
+ <property name="deploy.ant.enabled" value="true"/>
+ </target>
+ <target depends="dist,-run-undeploy-nb,-init-deploy-ant,-undeploy-ant" name="run-undeploy"/>
+ <target if="netbeans.home" name="-run-undeploy-nb">
+ <fail message="Undeploy is not supported from within the IDE"/>
+ </target>
+ <target depends="dist" name="verify">
+ <nbverify file="${dist.jar}"/>
+ </target>
+ <target depends="init,compile-single" name="run-main">
+ <fail unless="run.class">Must select one file in the IDE or set run.class</fail>
+ <ejbjarproject3:java classname="${run.class}"/>
+ </target>
+ <target depends="init" if="netbeans.home" name="-do-update-breakpoints">
+ <ejbjarproject1:nbjpdaappreloaded/>
+ </target>
+ <!--
+ DEBUGGING SECTION
+ -->
+ <target depends="init,compile,dist-directory-deploy" description="Debug project in IDE." if="netbeans.home" name="debug">
+ <nbdeploy debugmode="true"/>
+ <antcall target="connect-debugger"/>
+ </target>
+ <target name="connect-debugger" unless="is.debugged">
+ <condition property="listeningcp" value="sourcepath">
+ <istrue value="${j2ee.compile.on.save}"/>
+ </condition>
+ <nbjpdaconnect address="${jpda.address}" host="${jpda.host}" listeningcp="${listeningcp}" name="${name}" transport="${jpda.transport}">
+ <classpath>
+ <path path="${debug.classpath}"/>
+ </classpath>
+ <sourcepath>
+ <path path="${web.docbase.dir}"/>
+ </sourcepath>
+ </nbjpdaconnect>
+ </target>
+ <target depends="init" if="netbeans.home" name="-debug-start-debugger">
+ <ejbjarproject1:nbjpdastart/>
+ </target>
+ <target depends="init,compile-single" if="netbeans.home" name="-debug-start-debuggee-single">
+ <fail unless="main.class">Must select one file in the IDE or set main.class</fail>
+ <ejbjarproject1:debug/>
+ </target>
+ <target depends="init,compile-single,-debug-start-debugger,-debug-start-debuggee-single" if="netbeans.home" name="debug-single-main"/>
+ <target depends="init" name="-pre-debug-fix">
+ <fail unless="fix.includes">Must set fix.includes</fail>
+ <property name="javac.includes" value="${fix.includes}.java"/>
+ </target>
+ <target depends="init,-pre-debug-fix,compile-single" if="netbeans.home" name="-do-debug-fix">
+ <ejbjarproject1:nbjpdareload/>
+ </target>
+ <target depends="init,-pre-debug-fix,-do-debug-fix" if="netbeans.home" name="debug-fix"/>
+ <!--
+ =================
+ PROFILING SECTION
+ =================
+ -->
+ <!--
+ pre NB7.2 profiling section; consider it deprecated
+ -->
+ <target description="Profile a J2EE project in the IDE." if="profiler.info.jvmargs.agent" name="-profile-pre72">
+ <fail unless="netbeans.home">This target only works when run from inside the NetBeans IDE.</fail>
+ <condition else="start-profiled-server" property="profiler.startserver.target" value="start-profiled-server-extraargs">
+ <isset property="profiler.info.jvmargs.extra"/>
+ </condition>
+ <antcall target="${profiler.startserver.target}"/>
+ <antcall target="run"/>
+ <antcall target="-profile-start-loadgen"/>
+ </target>
+ <target depends="profile-init,compile-test-single" if="profiler.info.jvmargs.agent" name="-profile-test-single-pre72">
+ <fail unless="netbeans.home">This target only works when run from inside the NetBeans IDE.</fail>
+ <nbprofiledirect>
+ <classpath>
+ <path path="${run.test.classpath}"/>
+ <path path="${j2ee.platform.classpath}"/>
+ </classpath>
+ </nbprofiledirect>
+ <junit dir="${profiler.info.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" jvm="${profiler.info.jvm}" showoutput="true">
+ <env key="${profiler.info.pathvar}" path="${profiler.info.agentpath}:${profiler.current.path}"/>
+ <jvmarg value="${profiler.info.jvmargs.agent}"/>
+ <jvmarg line="${profiler.info.jvmargs}"/>
+ <test name="${profile.class}"/>
+ <classpath>
+ <path path="${run.test.classpath}"/>
+ <path path="${j2ee.platform.classpath}"/>
+ </classpath>
+ <syspropertyset>
+ <propertyref prefix="test-sys-prop."/>
+ <mapper from="test-sys-prop.*" to="*" type="glob"/>
+ </syspropertyset>
+ <formatter type="brief" usefile="false"/>
+ <formatter type="xml"/>
+ </junit>
+ </target>
+ <target name="start-profiled-server">
+ <nbstartprofiledserver forceRestart="${profiler.j2ee.serverForceRestart}" javaPlatform="${profiler.info.javaPlatform}" startupTimeout="${profiler.j2ee.serverStartupTimeout}">
+ <jvmarg value="${profiler.info.jvmargs.agent}"/>
+ <jvmarg value="${profiler.j2ee.agentID}"/>
+ </nbstartprofiledserver>
+ </target>
+ <target name="start-profiled-server-extraargs">
+ <nbstartprofiledserver forceRestart="${profiler.j2ee.serverForceRestart}" javaPlatform="${profiler.info.javaPlatform}" startupTimeout="${profiler.j2ee.serverStartupTimeout}">
+ <jvmarg value="${profiler.info.jvmargs.extra}"/>
+ <jvmarg value="${profiler.info.jvmargs.agent}"/>
+ <jvmarg value="${profiler.j2ee.agentID}"/>
+ </nbstartprofiledserver>
+ </target>
+ <!--
+ end of pre NB7.2 profiling section
+ -->
+ <target if="netbeans.home" name="-profile-check">
+ <condition property="profiler.configured">
+ <or>
+ <contains casesensitive="true" string="${run.jvmargs.ide}" substring="-agentpath:"/>
+ <contains casesensitive="true" string="${run.jvmargs.ide}" substring="-javaagent:"/>
+ </or>
+ </condition>
+ </target>
+ <target depends="init,compile,dist-directory-deploy" name="-do-profile">
+ <startprofiler/>
+ <nbstartserver profilemode="true"/>
+ <nbdeploy clientUrlPart="$" forceRedeploy="true" profilemode="true"/>
+ <antcall target="-profile-start-loadgen"/>
+ </target>
+ <target depends="-profile-check,-profile-pre72" description="Profile a J2EE project in the IDE." if="profiler.configured" name="profile" unless="profiler.info.jvmargs.agent">
+ <antcall target="-do-profile"/>
+ </target>
+ <target depends="-profile-test-single-pre72" name="profile-test-single"/>
+ <target depends="-profile-check" if="profiler.configured" name="profile-test" unless="profiler.info.jvmargs.agent">
+ <startprofiler/>
+ <antcall target="test-single"/>
+ </target>
+ <target if="profiler.loadgen.path" name="-profile-start-loadgen">
+ <loadgenstart path="${profiler.loadgen.path}"/>
+ </target>
+ <!--
+ JAVADOC SECTION
+ -->
+ <target depends="init" if="have.sources" name="javadoc-build">
+ <mkdir dir="${dist.javadoc.dir}"/>
+ <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}">
+ <classpath>
+ <path path="${javac.classpath}:${j2ee.platform.classpath}"/>
+ </classpath>
+ <fileset dir="${src.dir}" excludes="${excludes}" includes="${includes}">
+ <filename name="**/*.java"/>
+ </fileset>
+ <fileset dir="${build.generated.sources.dir}" erroronmissingdir="false">
+ <include name="**/*.java"/>
+ </fileset>
+ </javadoc>
+ <copy todir="${dist.javadoc.dir}">
+ <fileset dir="${src.dir}" excludes="${excludes}" includes="${includes}">
+ <filename name="**/doc-files/**"/>
+ </fileset>
+ <fileset dir="${build.generated.sources.dir}" erroronmissingdir="false">
+ <include name="**/doc-files/**"/>
+ </fileset>
+ </copy>
+ </target>
+ <target depends="init,javadoc-build" if="netbeans.home" name="javadoc-browse" unless="no.javadoc.preview">
+ <nbbrowse file="${dist.javadoc.dir}/index.html"/>
+ </target>
+ <target depends="init,javadoc-build,javadoc-browse" description="Build Javadoc." name="javadoc"/>
+ <!--
+ TEST COMPILATION SECTION
+ -->
+ <target depends="init,compile" if="have.tests" name="-pre-pre-compile-test">
+ <mkdir dir="${build.test.classes.dir}"/>
+ <property name="j2ee.platform.embeddableejb.classpath" value=""/>
+ </target>
+ <target name="-pre-compile-test">
+ <!-- Empty placeholder for easier customization. -->
+ <!-- You can override this target in the ../build.xml file. -->
+ </target>
+ <target depends="init,compile,-pre-pre-compile-test,-pre-compile-test" if="have.tests" name="-do-compile-test">
+ <ejbjarproject2:javac classpath="${javac.test.classpath}:${j2ee.platform.classpath}:${j2ee.platform.embeddableejb.classpath}" debug="true" destdir="${build.test.classes.dir}" srcdir="${test.src.dir}"/>
+ <copy todir="${build.test.classes.dir}">
+ <fileset dir="${test.src.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
+ </copy>
+ </target>
+ <target name="-post-compile-test">
+ <!-- Empty placeholder for easier customization. -->
+ <!-- You can override this target in the ../build.xml file. -->
+ </target>
+ <target depends="init,compile,-pre-pre-compile-test,-pre-compile-test,-do-compile-test,-post-compile-test" name="compile-test"/>
+ <target name="-pre-compile-test-single">
+ <!-- Empty placeholder for easier customization. -->
+ <!-- You can override this target in the ../build.xml file. -->
+ </target>
+ <target depends="init,compile,-pre-pre-compile-test,-pre-compile-test-single" if="have.tests" name="-do-compile-test-single">
+ <fail unless="javac.includes">Must select some files in the IDE or set javac.includes</fail>
+ <ejbjarproject2: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}"/>
+ </target>
+ <target name="-post-compile-test-single">
+ <!-- Empty placeholder for easier customization. -->
+ <!-- You can override this target in the ../build.xml file. -->
+ </target>
+ <target depends="init,compile,-pre-pre-compile-test,-pre-compile-test-single,-do-compile-test-single,-post-compile-test-single" name="compile-test-single"/>
+ <!--
+ TEST EXECUTION SECTION
+ -->
+ <target depends="init" if="have.tests" name="-pre-test-run">
+ <mkdir dir="${build.test.results.dir}"/>
+ </target>
+ <target depends="init,compile-test,-pre-test-run" if="have.tests" name="-do-test-run">
+ <ejbjarproject2:test includes="${includes}" testincludes="**/*Test.java"/>
+ </target>
+ <target depends="init,compile-test,-pre-test-run,-do-test-run" if="have.tests" name="-post-test-run">
+ <fail if="tests.failed" unless="ignore.failing.tests">Some tests failed; see details above.</fail>
+ </target>
+ <target depends="init" if="have.tests" name="test-report"/>
+ <target depends="init" if="netbeans.home+have.tests" name="-test-browse"/>
+ <target depends="init,compile-test,-pre-test-run,-do-test-run,test-report,-post-test-run,-test-browse" description="Run unit tests." name="test"/>
+ <target depends="init" if="have.tests" name="-pre-test-run-single">
+ <mkdir dir="${build.test.results.dir}"/>
+ </target>
+ <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-do-test-run-single">
+ <fail unless="test.includes">Must select some files in the IDE or set test.includes</fail>
+ <ejbjarproject2:test excludes="" includes="${test.includes}" testincludes="${test.includes}"/>
+ </target>
+ <target depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single" if="have.tests" name="-post-test-run-single">
+ <fail if="tests.failed" unless="ignore.failing.tests">Some tests failed; see details above.</fail>
+ </target>
+ <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"/>
+ <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-do-test-run-single-method">
+ <fail unless="test.class">Must select some files in the IDE or set test.class</fail>
+ <fail unless="test.method">Must select some method in the IDE or set test.method</fail>
+ <ejbjarproject2:test excludes="" includes="${javac.includes}" testincludes="${test.class}" testmethods="${test.method}"/>
+ </target>
+ <target depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single-method" if="have.tests" name="-post-test-run-single-method">
+ <fail if="tests.failed" unless="ignore.failing.tests">Some tests failed; see details above.</fail>
+ </target>
+ <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"/>
+ <!--
+ TEST DEBUGGING SECTION
+ -->
+ <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-debug-start-debuggee-test">
+ <fail unless="test.class">Must select one file in the IDE or set test.class</fail>
+ <ejbjarproject2:test-debug excludes="" includes="${javac.includes}" testClass="${test.class}" testincludes="${javac.includes}"/>
+ </target>
+ <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-debug-start-debuggee-test-method">
+ <fail unless="test.class">Must select one file in the IDE or set test.class</fail>
+ <fail unless="test.method">Must select some method in the IDE or set test.method</fail>
+ <ejbjarproject2:test-debug excludes="" includes="${javac.includes}" testClass="${test.class}" testMethod="${test.method}" testincludes="${test.class}" testmethods="${test.method}"/>
+ </target>
+ <target depends="init,compile-test" if="netbeans.home+have.tests" name="-debug-start-debugger-test">
+ <ejbjarproject1:nbjpdastart classpath="${debug.test.classpath}" name="${test.class}"/>
+ </target>
+ <target depends="init,compile-test,-debug-start-debugger-test,-debug-start-debuggee-test" name="debug-test"/>
+ <target depends="init,compile-test-single,-debug-start-debugger-test,-debug-start-debuggee-test-method" name="debug-test-method"/>
+ <target depends="init,-pre-debug-fix,compile-test-single" if="netbeans.home" name="-do-debug-fix-test">
+ <ejbjarproject1:nbjpdareload dir="${build.test.classes.dir}"/>
+ </target>
+ <target depends="init,-pre-debug-fix,-do-debug-fix-test" if="netbeans.home" name="debug-fix-test"/>
+ <!--
+ CLEANUP SECTION
+ -->
+ <target depends="init" name="deps-clean" unless="no.deps">
+ <ant antfile="${project.PizzaService-lib}/build.xml" inheritall="false" target="clean"/>
+ </target>
+ <target depends="init" name="-do-clean">
+ <delete dir="${build.dir}"/>
+ <delete dir="${dist.dir}"/>
+ </target>
+ <target name="-post-clean">
+ <!-- Empty placeholder for easier customization. -->
+ <!-- You can override this target in the ../build.xml file. -->
+ </target>
+ <target depends="init" if="netbeans.home" name="undeploy-clean">
+ <nbundeploy failOnError="false" startServer="false"/>
+ </target>
+ <target depends="init,undeploy-clean,deps-clean,-do-clean,-post-clean" description="Clean build products." name="clean"/>
+ <target depends="clean" name="clean-ear"/>
</project>
-build.xml.data.CRC32=fdc75897
-build.xml.script.CRC32=8e3e9528
-build.xml.stylesheet.CRC32=a5d15b16@1.49.1
+build.xml.data.CRC32=0427eba4
+build.xml.script.CRC32=cabe2e92
+build.xml.stylesheet.CRC32=5910fda3@1.51.1
# This file is used by a NetBeans-based IDE to track changes in generated files such as build-impl.xml.
# Do not edit this file. You may delete it but then the IDE will never regenerate such files for you.
-nbproject/build-impl.xml.data.CRC32=6fa7b0ea
-nbproject/build-impl.xml.script.CRC32=82732cff
-nbproject/build-impl.xml.stylesheet.CRC32=5eea63a6@1.49.1
+nbproject/build-impl.xml.data.CRC32=3b2a403d
+nbproject/build-impl.xml.script.CRC32=eb9d30fc
+nbproject/build-impl.xml.stylesheet.CRC32=6096d939@1.55.1
+annotation.processing.enabled=true
+annotation.processing.enabled.in.editor=true
+annotation.processing.processor.options=-Aeclipselink.canonicalmodel.use_static_factory=false
+annotation.processing.processors.list=
+annotation.processing.run.all.processors=true
+annotation.processing.source.output=${build.generated.sources.dir}/ap-source-output
+build.classes.dir=${build.dir}/classes
build.classes.excludes=**/*.java,**/*.form,**/.nbattrs
build.dir=build
+build.ear.classes.dir=${build.dir}/classes
build.generated.dir=${build.dir}/generated
-client.urlPart=
-debug.classpath=${javac.classpath}::${jar.content.additional}:${run.classpath}
-display.browser=true
+build.generated.sources.dir=${build.dir}/generated-sources
+build.test.classes.dir=${build.dir}/test/classes
+build.test.results.dir=${build.dir}/test/results
+debug.classpath=${javac.classpath}:${build.classes.dir}
+debug.test.classpath=\
+ ${run.test.classpath}
dist.dir=dist
+dist.ear.jar=${dist.dir}/${jar.name}
dist.jar=${dist.dir}/${jar.name}
+dist.javadoc.dir=${dist.dir}/javadoc
endorsed.classpath=
-j2ee.appclient.mainclass.args=${j2ee.appclient.tool.args}
+excludes=
+file.reference.cdi-api.jar=lib/cdi-api.jar
+file.reference.jcontacts-core.jar=lib/jcontacts-core.jar
+file.reference.jcore-logger-lib.jar=lib/jcore-logger-lib.jar
+file.reference.jcore.jar=lib/jcore.jar
+file.reference.jcoreee.jar=lib/jcoreee.jar
+file.reference.jcountry-core.jar=lib/jcountry-core.jar
+file.reference.jcountry-lib.jar=lib/jcountry-lib.jar
+file.reference.jphone-core.jar=lib/jphone-core.jar
+file.reference.jphone-lib.jar=lib/jphone-lib.jar
+file.reference.jshop-core.jar=lib/jshop-core.jar
+file.reference.jshop-ee-lib.jar=lib/jshop-ee-lib.jar
+file.reference.juser-core.jar=lib/juser-core.jar
+file.reference.juser-lib.jar=lib/juser-lib.jar
+includes=**
j2ee.compile.on.save=true
j2ee.deploy.on.save=true
j2ee.platform=1.7
j2ee.platform.wsit.classpath=
j2ee.server.type=gfv3ee6
jar.compress=false
-jar.content.additional=\
- ${reference.jcore-logger-ejb.dist-ear}:\
- ${reference.PizzaService-ejb.dist-ear}:\
- ${reference.jshop-receipt-ejb.dist-ear}:\
- ${reference.jcore-logger-ejb.dist-ear}:\
- ${reference.jshop-ejb.dist-ear}:\
- ${reference.jcountry-ejb.dist-ear}
-jar.name=PizzaService.ear
+jar.name=PizzaService-ejb.jar
+jars.in.ejbjar=true
+javac.classpath=\
+ ${file.reference.jcore.jar}:\
+ ${file.reference.jcoreee.jar}:\
+ ${file.reference.jcountry-core.jar}:\
+ ${file.reference.jcountry-lib.jar}:\
+ ${file.reference.jcore-logger-lib.jar}:\
+ ${reference.PizzaService-lib.jar}:\
+ ${file.reference.jcontacts-core.jar}:\
+ ${file.reference.juser-core.jar}:\
+ ${file.reference.juser-lib.jar}:\
+ ${file.reference.jphone-core.jar}:\
+ ${file.reference.jphone-lib.jar}:\
+ ${file.reference.jshop-core.jar}:\
+ ${file.reference.jshop-ee-lib.jar}:\
+ ${file.reference.cdi-api.jar}
javac.debug=true
-javac.deprecation=false
-javac.source=1.6
-javac.target=1.6
-meta.inf=src/conf
-no.dependencies=false
+javac.deprecation=true
+javac.processorpath=\
+ ${javac.classpath}
+javac.source=1.7
+javac.target=1.7
+javac.test.classpath=\
+ ${javac.classpath}:\
+ ${build.classes.dir}
+javac.test.processorpath=${javac.test.classpath}
+javadoc.additionalparam=
+javadoc.author=true
+javadoc.encoding=${source.encoding}
+javadoc.noindex=false
+javadoc.nonavbar=false
+javadoc.notree=false
+javadoc.preview=true
+javadoc.private=true
+javadoc.splitindex=true
+javadoc.use=true
+javadoc.version=true
+javadoc.windowtitle=Pizza-Service EJBs
+meta.inf=${source.root}/conf
+meta.inf.excludes=sun-cmp-mappings.xml
platform.active=default_platform
-project.jcore-logger-ejb=../jcore-logger-ejb
-project.jcore-logger-ejb=../jcore-logger-ejb
-project.jcountry-ejb=../../NetBeansProjects/jcountry-ejb
-project.jshop-ejb=../jshop-ejb
-project.jshop-receipt-ejb=../jshop-receipt-ejb
-project.PizzaService-ejb=PizzaService-ejb
-reference.jcore-logger-ejb.dist-ear=${project.jcore-logger-ejb}/dist/jcore-logger-ejb.jar
-reference.jcore-logger-ejb.dist-ear=${project.jcore-logger-ejb}/dist/jcore-logger-ejb.jar
-reference.jcountry-ejb.dist-ear=${project.jcountry-ejb}/dist/jcountry-ejb.jar
-reference.jshop-ejb.dist-ear=${project.jshop-ejb}/dist/jshop-ejb.jar
-reference.jshop-receipt-ejb.dist-ear=${project.jshop-receipt-ejb}/dist/jshop-receipt-ejb.jar
-reference.PizzaService-ejb.dist-ear=${project.PizzaService-ejb}/dist/PizzaService-ejb.jar
+project.license=agpl30
+project.pizzaservice-lib=../../pizzaservice-lib
+project.PizzaService-lib=../../../public_html/pizzaservice-lib
+reference.PizzaService-lib.jar=${project.PizzaService-lib}/dist/PizzaService-lib.jar
resource.dir=setup
-run.classpath=
-source.root=.
+run.test.classpath=\
+ ${javac.test.classpath}:\
+ ${build.test.classes.dir}
+# Space-separated list of JVM arguments used when running a class with a main method or a unit test
+# (you may also define separate properties like run-sys-prop.name=value instead of -Dname=value):
+runmain.jvmargs=
+source.encoding=UTF-8
+source.reference.jcontacts-core.jar=../jcontacts-core/src/
+source.reference.jcore-logger-lib.jar=../jcore-logger-lib/src/
+source.reference.jcore.jar=../jcore/src/
+source.reference.jcoreee.jar=../../jcoreee/src/
+source.reference.jcountry-core.jar=../jcountry-core/src/
+source.reference.jcountry-lib.jar=../jcountry-lib/src/
+source.reference.jphone-core.jar=../jphone-core/src/
+source.reference.jphone-lib.jar=../jphone-lib/src/
+source.reference.jshop-core.jar=../../jshop-core/src/
+source.reference.jshop-ee-lib.jar=../../jshop-ee-lib/src/
+source.reference.juser-core.jar=../juser-core/src/
+source.reference.juser-lib.jar=../juser-lib/src/
+source.root=src
+src.dir=${source.root}/java
+test.src.dir=test
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://www.netbeans.org/ns/project/1">
- <type>org.netbeans.modules.j2ee.earproject</type>
+ <type>org.netbeans.modules.j2ee.ejbjarproject</type>
<configuration>
- <data xmlns="http://www.netbeans.org/ns/j2ee-earproject/2">
- <name>PizzaService</name>
+ <data xmlns="http://www.netbeans.org/ns/j2ee-ejbjarproject/3">
+ <name>PizzaService-ejb</name>
<minimum-ant-version>1.6.5</minimum-ant-version>
- <web-module-libraries/>
- <web-module-additional-libraries>
- <library>
- <file>${reference.jcore-logger-ejb.dist-ear}</file>
- <path-in-war>/</path-in-war>
- </library>
- <library>
- <file>${reference.PizzaService-ejb.dist-ear}</file>
- <path-in-war>/</path-in-war>
- </library>
- <library>
- <file>${reference.jshop-receipt-ejb.dist-ear}</file>
- <path-in-war>/</path-in-war>
- </library>
- <library>
- <file>${reference.jcore-logger-ejb.dist-ear}</file>
- <path-in-war>/</path-in-war>
- </library>
- <library>
- <file>${reference.jshop-ejb.dist-ear}</file>
- <path-in-war>/</path-in-war>
- </library>
- <library>
- <file>${reference.jcountry-ejb.dist-ear}</file>
- <path-in-war>/</path-in-war>
- </library>
- </web-module-additional-libraries>
+ <included-library dirs="200">file.reference.jcore.jar</included-library>
+ <included-library dirs="200">file.reference.jcoreee.jar</included-library>
+ <included-library dirs="200">file.reference.jcountry-core.jar</included-library>
+ <included-library dirs="200">file.reference.jcountry-lib.jar</included-library>
+ <included-library dirs="200">file.reference.jcore-logger-lib.jar</included-library>
+ <included-library dirs="200">reference.PizzaService-lib.jar</included-library>
+ <included-library dirs="200">file.reference.jcontacts-core.jar</included-library>
+ <included-library dirs="200">file.reference.juser-core.jar</included-library>
+ <included-library dirs="200">file.reference.juser-lib.jar</included-library>
+ <included-library dirs="200">file.reference.jphone-core.jar</included-library>
+ <included-library dirs="200">file.reference.jphone-lib.jar</included-library>
+ <included-library dirs="200">file.reference.jshop-core.jar</included-library>
+ <included-library dirs="200">file.reference.jshop-ee-lib.jar</included-library>
+ <included-library dirs="200">file.reference.cdi-api.jar</included-library>
+ <source-roots>
+ <root id="src.dir"/>
+ </source-roots>
+ <test-roots>
+ <root id="test.src.dir"/>
+ </test-roots>
</data>
<libraries xmlns="http://www.netbeans.org/ns/ant-project-libraries/1">
- <definitions>.\lib\nblibraries.properties</definitions>
+ <definitions>lib/nblibraries.properties</definitions>
</libraries>
- <references xmlns="http://www.netbeans.org/ns/ant-project-references/1">
+ <references xmlns="http://www.netbeans.org/ns/ant-project-references/2">
<reference>
- <foreign-project>PizzaService-ejb</foreign-project>
- <artifact-type>j2ee_ear_archive</artifact-type>
- <script>build.xml</script>
- <target>dist-ear</target>
- <clean-target>clean-ear</clean-target>
- <id>dist-ear</id>
- </reference>
- <reference>
- <foreign-project>jcore-logger-ejb</foreign-project>
- <artifact-type>j2ee_ear_archive</artifact-type>
- <script>build.xml</script>
- <target>dist-ear</target>
- <clean-target>clean-ear</clean-target>
- <id>dist-ear</id>
- </reference>
- <reference>
- <foreign-project>jcountry-ejb</foreign-project>
- <artifact-type>j2ee_ear_archive</artifact-type>
- <script>build.xml</script>
- <target>dist-ear</target>
- <clean-target>clean-ear</clean-target>
- <id>dist-ear</id>
- </reference>
- <reference>
- <foreign-project>jshop-ejb</foreign-project>
- <artifact-type>j2ee_ear_archive</artifact-type>
- <script>build.xml</script>
- <target>dist-ear</target>
- <clean-target>clean-ear</clean-target>
- <id>dist-ear</id>
- </reference>
- <reference>
- <foreign-project>jshop-receipt-ejb</foreign-project>
- <artifact-type>j2ee_ear_archive</artifact-type>
- <script>build.xml</script>
- <target>dist-ear</target>
- <clean-target>clean-ear</clean-target>
- <id>dist-ear</id>
+ <foreign-project>PizzaService-lib</foreign-project>
+ <artifact-type>jar</artifact-type>
+ <script>${project.PizzaService-lib}/build.xml</script>
+ <target>jar</target>
+ <clean-target>clean</clean-target>
+ <id>jar</id>
</reference>
</references>
</configuration>
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<persistence version="2.1" xmlns="http://xmlns.jcp.org/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd">
+ <persistence-unit name="PizzaService-ejbPU" transaction-type="JTA">
+ <jta-data-source>jdbc/shop</jta-data-source>
+ <class>org.mxchange.jcontacts.contact.UserContact</class>
+ <class>org.mxchange.jcountry.data.CountryData</class>
+ <class>org.mxchange.jphone.phonenumbers.cellphone.CellphoneNumber</class>
+ <class>org.mxchange.jphone.phonenumbers.fax.FaxNumber</class>
+ <class>org.mxchange.jphone.phonenumbers.landline.LandLineNumber</class>
+ <class>org.mxchange.jphone.phonenumbers.smsprovider.CellphoneProvider</class>
+ <class>org.mxchange.jshopcore.model.basket.items.BasketItem</class>
+ <class>org.mxchange.jshopcore.model.category.ProductCategory</class>
+ <class>org.mxchange.jshopcore.model.customer.ShopCustomer</class>
+ <class>org.mxchange.jshopcore.model.order.ShopOrder</class>
+ <class>org.mxchange.jshopcore.model.order.items.OrderItem</class>
+ <class>org.mxchange.jshopcore.model.product.GenericProduct</class>
+ <class>org.mxchange.jusercore.model.email_address.EmailAddressChange</class>
+ <class>org.mxchange.jusercore.model.user.LoginUser</class>
+ <exclude-unlisted-classes>false</exclude-unlisted-classes>
+ <properties>
+ <property name="javax.persistence.schema-generation.database.action" value="create"/>
+ </properties>
+ </persistence-unit>
+</persistence>
Copyright (C) 2016 Roland Haeder
This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 3 of the License, or
-(at your option) any later version.
+it under the terms of the GNU Affero General Public License as
+published by the Free Software Foundation, either version 3 of the
+License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
+GNU Affero General Public License for more details.
-You should have received a copy of the GNU General Public License
+You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
-->
<Configuration status="INFO">
<Appenders>
- <Console name="console" target="SYSTEM_OUT">
+ <Console name="STDOUT" target="SYSTEM_OUT">
<PatternLayout pattern="%d %-5p [%t] %C{2} (%F:%L) - %m%n"/>
</Console>
</Appenders>
-
<Loggers>
- <Root level="TRACE">
- <AppenderRef ref="console" />
+ <Root level="trace">
+ <AppenderRef ref="STDOUT" level="TRACE"/>
</Root>
-
- <Logger name="org.mxchange.jcore.BaseFrameworkSystem" level="INFO">
- <AppenderRef ref="console" />
- </Logger>
</Loggers>
</Configuration>
--- /dev/null
+/*
+ * Copyright (C) 2016 Roland Haeder
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+package org.mxchange.jcountry.data;
+
+import java.util.List;
+import javax.ejb.Singleton;
+import javax.ejb.Startup;
+import javax.persistence.Query;
+import org.mxchange.jcoreee.database.BaseDatabaseBean;
+
+/**
+ * A singleton bean for country informations
+ * <p>
+ * @author Roland Haeder<roland@mxchange.org>
+ */
+@Startup
+@Singleton (name = "country", mappedName = "ejb/pizzaservice-singleton-country", description = "A singleton session bean for country informations")
+public class PizzaCountrySingletonBean extends BaseDatabaseBean implements CountrySingletonBeanRemote {
+
+ /**
+ * Serial number
+ */
+ private static final long serialVersionUID = 15_846_983_298_691_207L;
+
+ @Override
+ @SuppressWarnings ("unchecked")
+ public List<Country> allCountries () {
+ // Init query
+ Query query = this.getEntityManager().createNamedQuery("AllCountries", List.class); //NOI18N
+
+ // Return it
+ return query.getResultList();
+ }
+
+}
--- /dev/null
+/*
+ * Copyright (C) 2016 Roland Haeder
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+package org.mxchange.jphone.phonenumbers.smsprovider;
+
+import java.util.List;
+import javax.ejb.Singleton;
+import javax.ejb.Startup;
+import javax.persistence.Query;
+import org.mxchange.jcoreee.database.BaseDatabaseBean;
+
+/**
+ * A singleton bean for SMS provider informations
+ * <p>
+ * @author Roland Haeder<roland@mxchange.org>
+ */
+@Startup
+@Singleton (name = "smsprovider", mappedName = "ejb/pizzaservice-singleton-smsprovider", description = "A singleton session bean for SMS provider informations")
+public class PizzaSmsProviderSingletonBean extends BaseDatabaseBean implements SmsProviderSingletonBeanRemote {
+
+ /**
+ * Serial number
+ */
+ private static final long serialVersionUID = 15_846_983_298_691_207L;
+
+ @Override
+ @SuppressWarnings ("unchecked")
+ public List<SmsProvider> allSmsProvider () {
+ // Init query
+ Query query = this.getEntityManager().createNamedQuery("AllSmsProvider", List.class); //NOI18N
+
+ // Return it
+ return query.getResultList();
+ }
+
+}
--- /dev/null
+/*
+ * Copyright (C) 2016 Roland Haeder
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+package org.mxchange.jusercore.model.login;
+
+import java.text.MessageFormat;
+import javax.ejb.EJB;
+import javax.ejb.Stateless;
+import org.mxchange.jcoreee.database.BaseDatabaseBean;
+import org.mxchange.jusercore.container.login.LoginContainer;
+import org.mxchange.jusercore.exceptions.UserNotFoundException;
+import org.mxchange.jusercore.exceptions.UserPasswordMismatchException;
+import org.mxchange.jusercore.exceptions.UserStatusLockedException;
+import org.mxchange.jusercore.exceptions.UserStatusUnconfirmedException;
+import org.mxchange.jusercore.model.register.UserRegistrationSessionBeanRemote;
+import org.mxchange.jusercore.model.user.User;
+import org.mxchange.jusercore.model.user.UserSessionBeanRemote;
+import org.mxchange.jusercore.model.user.UserUtils;
+import org.mxchange.jusercore.model.user.status.UserAccountStatus;
+
+/**
+ * A session bean for user logins
+ * <p>
+ * @author Roland Haeder<roland@mxchange.org>
+ */
+@Stateless (name = "login", mappedName = "ejb/stateless-pizza-login", description = "A bean handling the user login")
+public class PizzaUserLoginSessionBean extends BaseDatabaseBean implements UserLoginSessionBeanRemote {
+
+ /**
+ * Serial number
+ */
+ private static final long serialVersionUID = 21_785_978_127_581_965L;
+
+ /**
+ * Registration bean
+ */
+ @EJB
+ private UserRegistrationSessionBeanRemote registerBean;
+
+ /**
+ * User bean
+ */
+ @EJB
+ private UserSessionBeanRemote userBean;
+
+ @Override
+ public User validateUserAccountStatus (final LoginContainer container) throws UserNotFoundException, UserStatusLockedException, UserStatusUnconfirmedException, UserPasswordMismatchException {
+ // Trace message
+ this.getLoggerBeanLocal().logTrace(MessageFormat.format("loginUser: container={0} - CALLED!", container)); //NOI18N
+
+ // Check some beans
+ assert(this.userBean instanceof UserSessionBeanRemote) : "this.userBean is not set"; //NOI18N
+ assert(this.registerBean instanceof UserRegistrationSessionBeanRemote) : "this.registerBean is not set"; //NOI18N
+
+ // user should not be null
+ if (null == container) {
+ // Abort here
+ throw new NullPointerException("container is null"); //NOI18N
+ } else if (container.getUser() == null) {
+ // NPE again
+ throw new NullPointerException("container.user is null"); //NOI18N
+ } else if (container.getUserPassword() == null) {
+ // And yet again NPE
+ throw new NullPointerException("container.userPassword is null"); //NOI18N
+ } else if (container.getUserPassword().isEmpty()) {
+ // Empty password is not allowed, hardcoded.
+ throw new IllegalArgumentException("container.userPassword is empty"); //NOI18N
+ }
+
+ // Is the account there?
+ if (!this.registerBean.isUserNameRegistered(container.getUser())) {
+ // Not registered
+ throw new UserNotFoundException(container.getUser());
+ }
+
+ // Get user instance from persistance
+ User updatedUser = this.userBean.fillUserData(container.getUser());
+
+ // Debug message
+ this.getLoggerBeanLocal().logDebug(MessageFormat.format("loginUser: updatedUser={0}", updatedUser)); //NOI18N
+
+ // Is the user account unconfirmed?
+ if (updatedUser.getUserAccountStatus().equals(UserAccountStatus.UNCONFIRMED)) {
+ // Is unconfirmed
+ throw new UserStatusUnconfirmedException(container.getUser());
+ } else if (updatedUser.getUserAccountStatus().equals(UserAccountStatus.LOCKED)) {
+ // Is locked
+ throw new UserStatusLockedException(container.getUser());
+ } else if (!this.isPasswordMatching(container, updatedUser)) {
+ // Not matcing passwords
+ throw new UserPasswordMismatchException(container.getUser());
+ }
+
+ // Trace message
+ this.getLoggerBeanLocal().logTrace(MessageFormat.format("loginUser: updatedUser={0} - EXIT!", updatedUser)); //NOI18N
+
+ // Return it
+ return updatedUser;
+ }
+
+ /**
+ * Checks if password matches of both instances. Both user instances must
+ * not match, the first one is the one from the calling bean/controller, the
+ * second is the from database.
+ * <p>
+ * @param container Container instance holding the user instance and
+ * unencrypted password
+ * @param updatedUser User instance found for given user name
+ * <p>
+ * @return Whether the password matches
+ */
+ private boolean isPasswordMatching (final LoginContainer container, final User updatedUser) {
+ // First math both instances
+ if (null == container) {
+ // Throw NPE
+ throw new NullPointerException("container is null"); //NOI18N
+ } else if (null == updatedUser) {
+ // Throw NPE
+ throw new NullPointerException("updatedUser is null"); //NOI18N
+ } else if (container.getUser().equals(updatedUser)) {
+ // Both same instance!
+ throw new IllegalArgumentException(MessageFormat.format("container.user matches updatedUser: {0}", container.getUser())); //NOI18N
+ }
+
+ // Is it the same same password?
+ return UserUtils.ifPasswordMatches(container, updatedUser);
+ }
+
+}
--- /dev/null
+/*
+ * Copyright (C) 2016 Roland Haeder
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+package org.mxchange.jusercore.model.register;
+
+import java.text.MessageFormat;
+import javax.ejb.EJB;
+import javax.ejb.Stateless;
+import org.mxchange.jcoreee.database.BaseDatabaseBean;
+import org.mxchange.jusercore.exceptions.EmailAddressAlreadyRegisteredException;
+import org.mxchange.jusercore.exceptions.UserNameAlreadyRegisteredException;
+import org.mxchange.jusercore.model.user.User;
+import org.mxchange.jusercore.model.user.UserSessionBeanRemote;
+
+/**
+ * A session bean for user registration
+ * <p>
+ * @author Roland Haeder<roland@mxchange.org>
+ */
+@Stateless (name = "register", mappedName = "ejb/stateless-pizza-register", description = "A bean handling the user registration")
+public class PizzaUserRegistrationSessionBean extends BaseDatabaseBean implements UserRegistrationSessionBeanRemote {
+
+ /**
+ * Serial number
+ */
+ private static final long serialVersionUID = 12_348_958_986_818_627L;
+
+ /**
+ * User bean
+ */
+ @EJB
+ private UserSessionBeanRemote userBean;
+
+ @Override
+ public boolean isEmailAddressRegistered (final User user) {
+ // Trace message
+ this.getLoggerBeanLocal().logTrace(MessageFormat.format("isEmailAddressRegistered: user={0} - CALLED!", user)); //NOI18N
+
+ // Check bean
+ assert(this.userBean instanceof UserSessionBeanRemote) : "this.userBean is not set"; //NOI18N
+
+ // user should not be null
+ if (null == user) {
+ // Abort here
+ throw new NullPointerException("user is null"); //NOI18N
+ }
+
+ // Call other bean
+ return this.userBean.isEmailAddressReqistered(user);
+ }
+
+ @Override
+ public boolean isUserNameRegistered (final User user) {
+ // Trace message
+ this.getLoggerBeanLocal().logTrace(MessageFormat.format("isUserNameRegistered: user={0} - CALLED!", user)); //NOI18N
+
+ // Check bean
+ assert(this.userBean instanceof UserSessionBeanRemote) : "this.userBean is not set"; //NOI18N
+
+ // user should not be null
+ if (null == user) {
+ // Abort here
+ throw new NullPointerException("user is null"); //NOI18N
+ }
+
+ // Call other bean
+ return this.userBean.isUserNameReqistered(user);
+ }
+
+ @Override
+ public User registerUser (final User user) throws UserNameAlreadyRegisteredException, EmailAddressAlreadyRegisteredException {
+ // Trace message
+ this.getLoggerBeanLocal().logTrace(MessageFormat.format("registerUser: user={0} - CALLED!", user)); //NOI18N
+
+ // user should not be null
+ if (null == user) {
+ // Abort here
+ throw new NullPointerException("user is null"); //NOI18N
+ }
+
+ // Check if user is registered
+ if (this.isUserNameRegistered(user)) {
+ // Abort here
+ throw new UserNameAlreadyRegisteredException(user);
+ } else if (this.isEmailAddressRegistered(user)) {
+ // Abort here
+ throw new EmailAddressAlreadyRegisteredException(user);
+ }
+
+ // Persist it
+ this.getEntityManager().persist(user);
+
+ // Flush to get id back
+ this.getEntityManager().flush();
+
+ // Trace message
+ this.getLoggerBeanLocal().logTrace(MessageFormat.format("registerUser: user={0},user.id={1} - EXIT!", user, user.getUserId())); //NOI18N
+
+ // Return it
+ return user;
+ }
+
+}
--- /dev/null
+/*
+ * Copyright (C) 2016 Roland Haeder
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+package org.mxchange.jusercore.model.user;
+
+import java.text.MessageFormat;
+import java.util.GregorianCalendar;
+import java.util.List;
+import javax.ejb.EJBException;
+import javax.ejb.Stateless;
+import javax.persistence.NoResultException;
+import javax.persistence.PersistenceException;
+import javax.persistence.Query;
+import org.mxchange.jcontacts.contact.Contact;
+import org.mxchange.jcoreee.database.BaseDatabaseBean;
+import org.mxchange.jphone.phonenumbers.cellphone.DialableCellphoneNumber;
+import org.mxchange.jphone.phonenumbers.fax.DialableFaxNumber;
+import org.mxchange.jphone.phonenumbers.landline.DialableLandLineNumber;
+import org.mxchange.jusercore.model.user.profilemodes.ProfileMode;
+import org.mxchange.jusercore.model.user.status.UserAccountStatus;
+
+/**
+ * A user bean
+ * <p>
+ * @author Roland Haeder<roland@mxchange.org>
+ */
+@Stateless (name = "user", mappedName = "ejb/stateless-pizza-user", description = "A bean handling the user data")
+public class PizzaUserSessionBean extends BaseDatabaseBean implements UserSessionBeanRemote {
+
+ /**
+ * Serial number
+ */
+ private static final long serialVersionUID = 542_145_347_916L;
+
+ /**
+ * Default constructor
+ */
+ public PizzaUserSessionBean () {
+ }
+
+ @Override
+ @SuppressWarnings ("unchecked")
+ public List<User> allMemberPublicVisibleUsers () {
+ // Trace message
+ this.getLoggerBeanLocal().logTrace("allMemberPublicVisibleUsers: CALLED!"); //NOI18N
+
+ // Get named query
+ Query query = this.getEntityManager().createNamedQuery("AllMemberPublicUsers", List.class); //NOI18N
+
+ // Set parameters
+ query.setParameter("status", UserAccountStatus.CONFIRMED); //NOI18N
+ query.setParameter("members", ProfileMode.MEMBERS); //NOI18N
+ query.setParameter("public", ProfileMode.PUBLIC); //NOI18N
+
+ // Get result
+ List<User> users = query.getResultList();
+
+ // Trace message
+ this.getLoggerBeanLocal().logTrace(MessageFormat.format("allMemberPublicVisibleUsers: users.size()={0} - EXIT!", users.size())); //NOI18N
+
+ // Return full list
+ return users;
+ }
+
+ @Override
+ @SuppressWarnings ("unchecked")
+ public List<User> allPublicUsers () {
+ // Trace message
+ this.getLoggerBeanLocal().logTrace("allPublicUsers: CALLED!"); //NOI18N
+
+ // Get named query
+ Query query = this.getEntityManager().createNamedQuery("AllPublicUsers", List.class); //NOI18N
+
+ // Set parameters
+ query.setParameter("status", UserAccountStatus.CONFIRMED); //NOI18N
+ query.setParameter("mode", ProfileMode.PUBLIC); //NOI18N
+
+ // Get result
+ List<User> users = query.getResultList();
+
+ // Trace message
+ this.getLoggerBeanLocal().logTrace(MessageFormat.format("allPublicUsers: users.size()={0} - EXIT!", users.size())); //NOI18N
+
+ // Return full list
+ return users;
+ }
+
+ @Override
+ public User fillUserData (final User user) {
+ // Trace message
+ this.getLoggerBeanLocal().logTrace(MessageFormat.format("fillUserData: user={0} - CALLED!", user)); //NOI18N
+
+ // user should not be null
+ if (null == user) {
+ // Abort here
+ throw new NullPointerException("user is null"); //NOI18N
+ }
+
+ // Try to locate it
+ Query query = this.getEntityManager().createNamedQuery("SearchUserName", LoginUser.class); //NOI18N
+
+ // Set parameter
+ query.setParameter("param", user.getUserName()); //NOI18N
+
+ // Initialize variable
+ User foundUser = null;
+
+ // Try it
+ try {
+ // Try to get single result
+ foundUser = (User) query.getSingleResult();
+ } catch (final NoResultException ex) {
+ // Log it
+ this.getLoggerBeanLocal().logException(ex);
+ }
+
+ // Trace message
+ this.getLoggerBeanLocal().logTrace(MessageFormat.format("fillUserData: foundUser={0} - EXIT!", foundUser)); //NOI18N
+
+ // Return prepared instance
+ return foundUser;
+ }
+
+ @Override
+ @SuppressWarnings ("unchecked")
+ public List<String> getEmailAddressList () {
+ // Get query
+ Query query = this.getEntityManager().createNamedQuery("AllEmailAddresses", String.class); //NOI18N
+
+ // Get result list
+ List<String> emailAddressList = query.getResultList();
+
+ // Return it
+ return emailAddressList;
+ }
+
+ @Override
+ @SuppressWarnings ("unchecked")
+ public List<String> getUserNameList () {
+ // Get query
+ Query query = this.getEntityManager().createNamedQuery("AllUserNames", String.class); //NOI18N
+
+ // Get result list
+ List<String> userNameList = query.getResultList();
+
+ // Return it
+ return userNameList;
+ }
+
+ @Override
+ public boolean ifUserExists (final User user) {
+ // Trace message
+ this.getLoggerBeanLocal().logTrace(MessageFormat.format("ifUserExists: user={0} - CALLED!", user)); //NOI18N
+
+ // userId should not be null
+ if (null == user) {
+ // Abort here
+ throw new NullPointerException("user is null"); //NOI18N
+ } else if (user.getUserId() == null) {
+ // Abort here
+ throw new NullPointerException("user.userId is null"); //NOI18N
+ } else if (user.getUserId() < 1) {
+ // Invalid number
+ throw new IllegalArgumentException(MessageFormat.format("userId is not valid: {0}", user.getUserId())); //NOI18N
+ }
+
+ // Generate query
+ Query query = this.getEntityManager().createNamedQuery("SearchUserId", LoginUser.class); //NOI18N
+
+ // Set parameter
+ query.setParameter("id", user.getUserId()); //NOI18N
+
+ // Try this
+ try {
+ User dummy = (User) query.getSingleResult();
+
+ // Debug message
+ this.getLoggerBeanLocal().logDebug(MessageFormat.format("ifUserExists: dummy.id={0} found.", dummy.getUserId())); //NOI18N
+ } catch (final NoResultException ex) {
+ // Log it
+ this.getLoggerBeanLocal().logDebug(MessageFormat.format("ifUserExists: getSingleResult() returned no result: {0}", ex)); //NOI18N
+
+ // User name does not exist
+ return false;
+ } catch (final PersistenceException ex) {
+ // Something bad happened
+ this.getLoggerBeanLocal().logWarning(MessageFormat.format("More than one user {0} found.", user, ex)); //NOI18N
+
+ // Throw again
+ throw ex;
+ }
+
+ // Trace message
+ this.getLoggerBeanLocal().logTrace(MessageFormat.format("ifUserExists: Found user {0} - EXIT!", user)); //NOI18N
+
+ // Found it
+ return true;
+ }
+
+ @Override
+ public boolean ifUserIdExists (final Long userId) {
+ // Trace message
+ this.getLoggerBeanLocal().logTrace(MessageFormat.format("ifUserIdExists: userId={0} - CALLED!", userId)); //NOI18N
+
+ // userId should not be null
+ if (null == userId) {
+ // Abort here
+ throw new NullPointerException("userId is null"); //NOI18N
+ } else if (userId < 1) {
+ // Invalid number
+ throw new IllegalArgumentException(MessageFormat.format("userId is not valid: {0}", userId)); //NOI18N
+ }
+
+ // Generate query
+ Query query = this.getEntityManager().createNamedQuery("SearchUserId", LoginUser.class); //NOI18N
+
+ // Set parameter
+ query.setParameter("id", userId); //NOI18N
+
+ // Try this
+ try {
+ User dummy = (User) query.getSingleResult();
+
+ // Debug message
+ this.getLoggerBeanLocal().logDebug(MessageFormat.format("ifUserIdExists: dummy.id={0} found.", dummy.getUserId())); //NOI18N
+ } catch (final NoResultException ex) {
+ // Log it
+ this.getLoggerBeanLocal().logDebug(MessageFormat.format("ifUserIdExists: getSingleResult() returned no result: {0}", ex)); //NOI18N
+
+ // User name does not exist
+ return false;
+ } catch (final PersistenceException ex) {
+ // Something bad happened
+ this.getLoggerBeanLocal().logWarning(MessageFormat.format("More than one user id {0} found.", userId, ex)); //NOI18N
+
+ // Throw again
+ throw ex;
+ }
+
+ // Trace message
+ this.getLoggerBeanLocal().logTrace(MessageFormat.format("ifUserIdExists: Found user id {0} - EXIT!", userId)); //NOI18N
+
+ // Found it
+ return true;
+ }
+
+ @Override
+ public boolean isEmailAddressReqistered (final User user) {
+ // Trace message
+ this.getLoggerBeanLocal().logTrace(MessageFormat.format("isEmailAddressReqistered: user={0} - CALLED!", user)); //NOI18N
+
+ // user should not be null
+ if (null == user) {
+ // Abort here
+ throw new NullPointerException("user is null"); //NOI18N
+ }
+
+ // Generate query
+ Query query = this.getEntityManager().createNamedQuery("SearchEmailAddress", LoginUser.class); //NOI18N
+
+ // Set parameter
+ query.setParameter("param", user.getUserContact().getContactEmailAddress()); //NOI18N
+
+ // Search for it
+ try {
+ User dummy = (User) query.getSingleResult();
+
+ // Debug message
+ this.getLoggerBeanLocal().logDebug(MessageFormat.format("isEmailAddressReqistered: dummy.id={0} found.", dummy.getUserId())); //NOI18N
+ } catch (final NoResultException ex) {
+ // Log it
+ this.getLoggerBeanLocal().logDebug(MessageFormat.format("isEmailAddressReqistered: getSingleResult() returned no result: {0}", ex)); //NOI18N
+
+ // Email address does not exist
+ return false;
+ } catch (final PersistenceException ex) {
+ // Something bad happened
+ this.getLoggerBeanLocal().logWarning(MessageFormat.format("More than one email address {0} found.", user.getUserContact().getContactEmailAddress()), ex); //NOI18N
+
+ // Throw again
+ throw ex;
+ }
+
+ // Found it
+ return true;
+ }
+
+ @Override
+ public boolean isUserNameReqistered (final User user) {
+ // Trace message
+ this.getLoggerBeanLocal().logTrace(MessageFormat.format("isUserNameReqistered: user={0} - CALLED!", user)); //NOI18N
+
+ // user should not be null
+ if (null == user) {
+ // Abort here
+ throw new NullPointerException("user is null"); //NOI18N
+ }
+
+ // Generate query
+ Query query = this.getEntityManager().createNamedQuery("SearchUserName", LoginUser.class); //NOI18N
+
+ // Set parameter
+ query.setParameter("param", user.getUserName()); //NOI18N
+
+ // Try this
+ try {
+ User dummy = (User) query.getSingleResult();
+
+ // Debug message
+ this.getLoggerBeanLocal().logDebug(MessageFormat.format("isUserNameReqistered: dummy.id={0} found.", dummy.getUserId())); //NOI18N
+ } catch (final NoResultException ex) {
+ // Log it
+ this.getLoggerBeanLocal().logDebug(MessageFormat.format("isUserNameReqistered: getSingleResult() returned no result: {0}", ex)); //NOI18N
+
+ // User name does not exist
+ return false;
+ } catch (final PersistenceException ex) {
+ // Something bad happened
+ this.getLoggerBeanLocal().logWarning(MessageFormat.format("More than one email address {0} found.", user.getUserContact().getContactEmailAddress()), ex); //NOI18N
+
+ // Throw again
+ throw ex;
+ }
+
+ // Found it
+ return true;
+ }
+
+ @Override
+ public void updateUserPersonalData (final User user) {
+ // Trace message
+ this.getLoggerBeanLocal().logTrace(MessageFormat.format("updateUserPersonalData: user={0} - CALLED!", user));
+
+ // user should not be null
+ if (null == user) {
+ // Abort here
+ throw new NullPointerException("user is null"); //NOI18N
+ } else if (user.getUserId() == null) {
+ // Throw NPE again
+ throw new NullPointerException("user.userId is null"); //NOI18N
+ } else if (user.getUserId() < 1) {
+ // Not valid
+ throw new IllegalArgumentException(MessageFormat.format("user.userId={0} is not valid.", user.getUserId())); //NOI18N
+ } else if (user.getUserAccountStatus() == null) {
+ // Throw NPE again
+ throw new NullPointerException("user.userAccountStatus is null"); //NOI18N
+ } else if (!this.ifUserExists(user)) {
+ // User does not exist
+ throw new EJBException(MessageFormat.format("User with id {0} does not exist.", user.getUserId())); //NOI18N
+ }
+
+ // Find the instance
+ User foundUser = this.getEntityManager().find(user.getClass(), user.getUserId());
+
+ // Should be found!
+ assert (foundUser instanceof User) : MessageFormat.format("User with id {0} not found, but should be.", user.getUserId()); //NOI18N
+
+ // Merge user
+ User detachedUser = this.getEntityManager().merge(foundUser);
+
+ // Should be found!
+ assert (detachedUser instanceof User) : MessageFormat.format("User with id {0} not merged, but should be.", user.getUserId()); //NOI18N
+
+ // Copy all data
+ detachedUser.copyAll(user);
+
+ // Set as updated
+ detachedUser.setUserUpdated(new GregorianCalendar());
+ detachedUser.getUserContact().setContactUpdated(new GregorianCalendar());
+
+ // Get contact from it and find it
+ Contact foundContact = this.getEntityManager().find(user.getUserContact().getClass(), user.getUserContact().getContactId());
+
+ // Should be found
+ assert (foundContact instanceof Contact) : MessageFormat.format("Contact with id {0} not found, but should be.", user.getUserContact().getContactId()); //NOI18N
+
+ // Debug message
+ this.getLoggerBeanLocal().logDebug(MessageFormat.format("updateUserPersonalData: contact.contactId={0}", foundContact.getContactId()));
+
+ // Merge contact instance
+ Contact detachedContact = this.getEntityManager().merge(foundContact);
+
+ // Copy all
+ detachedContact.copyAll(user.getUserContact());
+
+ // Set it back in user
+ user.setUserContact(detachedContact);
+
+ // Should be found!
+ assert (detachedContact instanceof Contact) : MessageFormat.format("Contact with id {0} not merged, but should be.", user.getUserContact().getContactId()); //NOI18N
+
+ // Get cellphone instance
+ DialableCellphoneNumber cellphone = detachedContact.getContactCellphoneNumber();
+
+ // Is there a cellphone instance set?
+ if (cellphone instanceof DialableCellphoneNumber) {
+ // Debug message
+ this.getLoggerBeanLocal().logDebug(MessageFormat.format("updateUserPersonalData: cellphone.phoneId={0} is being updated ...", cellphone.getPhoneId()));
+
+ // Then find it, too
+ DialableCellphoneNumber foundCellphone = this.getEntityManager().find(cellphone.getClass(), cellphone.getPhoneId());
+
+ // Should be there
+ assert (foundCellphone instanceof DialableCellphoneNumber) : MessageFormat.format("Cellphone number with id {0} not found but should be.", foundCellphone.getPhoneId());
+
+ // Then merge it, too
+ DialableCellphoneNumber detachedCellphone = this.getEntityManager().merge(foundCellphone);
+
+ // Should be there
+ assert (detachedCellphone instanceof DialableCellphoneNumber) : MessageFormat.format("Cellphone number with id {0} not found but should be.", detachedCellphone.getPhoneId());
+
+ // Copy all
+ detachedCellphone.copyAll(user.getUserContact().getContactCellphoneNumber());
+
+ // Set it back
+ detachedContact.setContactCellphoneNumber(detachedCellphone);
+ }
+
+ // Get cellphone instance
+ DialableFaxNumber fax = detachedContact.getContactFaxNumber();
+
+ // Is there a fax instance set?
+ if (fax instanceof DialableFaxNumber) {
+ // Debug message
+ this.getLoggerBeanLocal().logDebug(MessageFormat.format("updateUserPersonalData: fax.phoneId={0} is being updated ...", fax.getPhoneId()));
+
+ // Then find it, too
+ DialableFaxNumber foundFax = this.getEntityManager().find(fax.getClass(), fax.getPhoneId());
+
+ // Should be there
+ assert (foundFax instanceof DialableFaxNumber) : MessageFormat.format("Fax number with id {0} not found but should be.", foundFax.getPhoneId());
+
+ // Then merge it, too
+ DialableFaxNumber detachedFax = this.getEntityManager().merge(foundFax);
+
+ // Should be there
+ assert (detachedFax instanceof DialableFaxNumber) : MessageFormat.format("Fax number with id {0} not found but should be.", detachedFax.getPhoneId());
+
+ // Copy all
+ detachedFax.copyAll(user.getUserContact().getContactFaxNumber());
+
+ // Set it back
+ detachedContact.setContactFaxNumber(detachedFax);
+ }
+
+ // Get cellphone instance
+ DialableLandLineNumber landLine = detachedContact.getContactLandLineNumber();
+
+ // Is there a fax instance set?
+ if (landLine instanceof DialableLandLineNumber) {
+ // Debug message
+ this.getLoggerBeanLocal().logDebug(MessageFormat.format("updateUserPersonalData: landLine.phoneId={0} is being updated ...", landLine.getPhoneId()));
+
+ // Then find it, too
+ DialableLandLineNumber foundLandLine = this.getEntityManager().find(landLine.getClass(), landLine.getPhoneId());
+
+ // Should be there
+ assert (foundLandLine instanceof DialableLandLineNumber) : MessageFormat.format("Land line number with id {0} not found but should be.", foundLandLine.getPhoneId());
+
+ // Then merge it, too
+ DialableLandLineNumber detachedLandLine = this.getEntityManager().merge(foundLandLine);
+
+ // Should be there
+ assert (detachedLandLine instanceof DialableLandLineNumber) : MessageFormat.format("Land line number with id {0} not found but should be.", detachedLandLine.getPhoneId());
+
+ // Copy all
+ detachedLandLine.copyAll(user.getUserContact().getContactLandLineNumber());
+
+ // Set it back
+ detachedContact.setContactLandLineNumber(detachedLandLine);
+ }
+ }
+
+}