<?xml version="1.0" encoding="UTF-8"?>  <!--     Build file for 'componentName'     Creation date : $Date: yyyy-m-d $     Updated date : $Date: yyyy-m-d $     Author:  developerName   Copyright 2002 CompanyName, Inc. All rights reserved.  -->  <project name="componentName" default="core" basedir=".">     <!-- ================================================================== -->     <!-- Initialization of all property settings                            -->     <!-- ================================================================== -->     <target name="init">      <property file="../../build.properties" />      <property name="jboss.lib" value="${jboss.home}/lib" />        <property name="jboss.client" value="${jboss.home}/client" />        <property name="jboss.deploy" value="${jboss.home}/server/${jboss.configuration}/deploy" />        <property name="name"           value="componentName"     />        <property name="src.dir"        value="${basedir}/src"              />        <property name="etc.dir"        value="${basedir}/etc"              />        <property name="lib.dir"        value="${basedir}/lib"              />        <property name="build.dir"      value="${basedir}/build"            />        <property name="jboss.dir"      value="${jboss.home}" />        <property name="src.main.dir" value="${src.dir}/main"/>      <property name="src.ejb.dir" value="${src.main.dir}/ejb"/>        <property name="src.javabean.dir" value="${src.main.dir}/javabean"/>      <property name="src.servlet.dir" value="${src.main.dir}/servlet"/>      <property name="src.web.dir" value="${src.main.dir}/web"/>        <property name="javadoc.dir" value="${lib.dir}/docs/api"          />       <property name="ejb-classes.dest" value="${lib.dir}/ejb"    />        <property name="javabean-classes.dest" value="${lib.dir}/javabean"    />        <property name="web-classes.dest" value="${lib.dir}/web/WEB-INF/classes" />      <property name="web-lib.dest" value="${lib.dir}/web/WEB-INF/lib" />        <property name="pkg-dist.name"     value="${name}-pkg" />        <property name="deploy.ormi"     value=""/>        <property name="deploy.username" value=""/>        <property name="deploy.password" value=""/>      <property name="ProjectName.components.home"      value="../../components" />        <!-- Define componentName Component -->      <property name="ProjectName.componentName.name" value="componentName"/>      <property name="ProjectName.componentName.home" value="${ProjectName.components.home}/componentName"/>      <property name="ProjectName.componentName.classbindir" value="${ProjectName.componentName.home}/lib/ejb"/>      <property name="ProjectName.componentName.ejbjar" value="${ProjectName.componentName.home}/build/componentName-ejb.jar"/>      <property name="ProjectName.componentName.ejbjar.client" value="${ProjectName.componentName.home}/build/componentName-ejb-client.jar"/>      <!-- Define referencesComponentName Component -->      <property name="ProjectName.referencesComponentName.name" value="referencesComponentName"/>      <property name="ProjectName.referencesComponentName.home" value="${ProjectName.components.home}/referencesComponentName"/>      <property name="ProjectName.referencesComponentName.classbindir" value="${ProjectName.referencesComponentName.home}/lib/ejb"/>      <property name="ProjectName.referencesComponentName.ejbjar" value="${ProjectName.referencesComponentName.home}/build/referencesComponentName-ejb.jar"/>      <property name="ProjectName.referencesComponentName.ejbjar.client" value="${ProjectName.referencesComponentName.home}/build/referencesComponentName-ejb-client.jar"/>      <property name="build.classpath" value="${jboss.client}/jboss-j2ee.jar:${jboss.client}/jnp-client.jar:${jboss.client}/jnp-client.jar:${jboss.client}/jbossmq-client.jar:${jboss.client}/jbosssx-client.jar:${jboss.client}/concurrent.jar:${jboss.client}/jaas.jar:${jboss.lib}/jboss-jmx.jar:${jboss.home}/server/${jboss.configuration}/lib/jbosssx.jar:${jboss.home}/server/${jboss.configuration}/lib/mail.jar:${servlet-lib.path}:${ejb-classes.dest}:${web-classes.dest}:${ProjectName.componentName.classbindir}:${ProjectName.componentName.ejbjar.client}:${ProjectName.referencesComponentName.classbindir}:${ProjectName.referencesComponentName.ejbjar.client}" />   </target>       <!-- ================================================================== -->     <!-- Define the classpath for compile the component                     -->   <!-- ================================================================== -->     <path id="base.path">        <pathelement location="${jboss.client}/jboss-j2ee.jar" />        <pathelement location="${jboss.client}/jnp-client.jar" />        <pathelement location="${jboss.client}/jbossmq-client.jar" />        <pathelement location="${jboss.client}/jbosssx-client.jar" />        <pathelement location="${jboss.client}/concurrent.jar" />       <pathelement location="${jboss.client}/jaas.jar" />        <pathelement location="${jboss.lib}/jboss-jmx.jar" />        <pathelement location="${jboss.home}/server/${jboss.configuration}/lib/jbosssx.jar" />        <pathelement location="${jboss.home}/server/${jboss.configuration}/lib/mail.jar" />     </path>     <path id="project.path">        <path refid="base.path"/>      <pathelement location="${ProjectName.componentName.classbindir}"/>      <pathelement location="${ProjectName.componentName.ejbjar.client}"/>      <pathelement location="${ProjectName.referencesComponentName.classbindir}"/>      <pathelement location="${ProjectName.referencesComponentName.ejbjar.client}"/>   </path>     <path id="web.path">         <path refid="project.path"/>         <pathelement location="${servlet-lib.path}"/>         <pathelement location="${ejb-classes.dest}"/>   </path>   <!-- ================================================================== -->     <!-- Removes all created files and directories                          -->     <!-- ================================================================== -->     <target name="clean" depends="init">        <delete dir="${lib.dir}" />        <delete dir="${build.dir}" />     </target>   <!-- ================================================================== -->     <!-- Makes sure the needed directory structure is in place              -->     <!-- ================================================================== -->     <target name="prepare" depends="init,clean">        <mkdir dir="${lib.dir}" />        <mkdir dir="${lib.dir}/ejb" />        <mkdir dir="${lib.dir}/ejb/META-INF" />        <mkdir dir="${lib.dir}/web" />        <mkdir dir="${lib.dir}/web/WEB-INF" />        <mkdir dir="${lib.dir}/web/WEB-INF/classes" />        <mkdir dir="${lib.dir}/web/WEB-INF/lib" />        <mkdir dir="${lib.dir}/j2ee" />        <mkdir dir="${lib.dir}/META-INF" />        <mkdir dir="${lib.dir}/docs/api" />      <mkdir dir="${build.dir}" />     </target>     <!-- ================================================================== -->     <!-- Compilation of the EJB part of the application                     -->     <!-- ================================================================== -->     <target name="ejb-classes" depends="prepare">        <javac srcdir="${src.ejb.dir}"               destdir="${ejb-classes.dest}"               includes="com/**"               classpathref="base.path" />   </target>     <target name="ejb-meta-inf" depends="prepare">        <copy file="${etc.dir}/ejb-jar.xml"              tofile="${lib.dir}/ejb/META-INF/ejb-jar.xml" />        <copy file="${etc.dir}/jaws.xml"              tofile="${lib.dir}/ejb/META-INF/jaws.xml" />        <copy file="${etc.dir}/jboss.xml"              tofile="${lib.dir}/ejb/META-INF/jboss.xml" />        <copy file="${etc.dir}/jbosscmp-jdbc.xml"              tofile="${lib.dir}/ejb/META-INF/jbosscmp-jdbc.xml" />     </target>   <target name="ejb-jar" depends="ejb-classes,ejb-meta-inf">        <jar jarfile="${build.dir}/${name}-ejb.jar"             basedir="${lib.dir}/ejb" />     </target>     <target name="ejbclientjar" depends="ejb-jar,web-classes">      <copy file="${ProjectName.referencesComponentName.home}/build/${ProjectName.referencesComponentName.name}-ejb-client.jar"              tofile="${build.dir}/${ProjectName.referencesComponentName.name}-ejb-client.jar" />        <jar jarfile="${build.dir}/${name}-ejb-client.jar"             basedir="${lib.dir}/ejb"	   excludes="com/ProjectName/componentName/ejb/ComponentNameEJB.class" />     </target>   <!-- ================================================================== -->     <!-- Compilation of the web part of the application                     -->     <!-- ================================================================== -->     <target name="web-classes" depends="prepare,ejb-jar">        <javac srcdir="${src.servlet.dir}"               destdir="${lib.dir}/web/WEB-INF/classes"               includes="com/**"               classpath="${build.classpath}" />     </target>     <target name="web-web-inf" depends="prepare">      <copy file="${etc.dir}/jboss-web.xml"              tofile="${lib.dir}/web/WEB-INF/jboss-web.xml" />        <copy file="${etc.dir}/web.xml"              tofile="${lib.dir}/web/WEB-INF/web.xml" />     </target>   <target name="war" depends="web-classes,web-web-inf">        <copy todir="${lib.dir}/web" >       <fileset dir="${src.web.dir}"/>      </copy>      <copy file="${build.dir}/${ProjectName.referencesComponentName.name}-ejb-client.jar"              tofile="${lib.dir}/web/WEB-INF/lib/${ProjectName.referencesComponentName.name}-ejb-client.jar" />          <jar jarfile="${build.dir}/${name}-web.war"             basedir="${lib.dir}/web" />     </target>   <!-- ================================================================== -->     <!-- Compilation of the complete J2EE application (both web and EJB)    -->     <!-- ================================================================== -->     <target name="j2ee-meta-inf" depends="prepare">        <copy file="${etc.dir}/application.xml"              tofile="${lib.dir}/j2ee/META-INF/application.xml" />     </target>     <target name="ear" depends="ejb-jar,war,j2ee-meta-inf">        <copy file="${build.dir}/${name}-ejb.jar"              tofile="${lib.dir}/j2ee/${name}-ejb.jar" />        <copy file="${build.dir}/${name}-web.war"              tofile="${lib.dir}/j2ee/${name}-web.war" />        <jar jarfile="${build.dir}/${name}.ear"             basedir="${lib.dir}/j2ee" />     </target>     <!-- =================================================================== -->   <!-- Deploy EAR file                                                     -->   <!-- =================================================================== -->   <target name="deploy-server" depends="ear,war">        <copy todir="${jboss.deploy}">           <fileset dir="${build.dir}" includes="*.ear">           </fileset>        </copy>     </target>     <!-- =================================================================== -->   <!-- Create class and package usage pages                                -->   <!-- =================================================================== -->   <target name="docs" depends="init">    <javadoc locale="${javadoc.locale}" packagenames="${package.names}.${name}.*"               destdir="${javadoc.dir}"  	     classpath="${build.classpath}"	     encoding="${javadoc.encoding}"             author="${javadoc.author}" version="${javadoc.version}" use="${javadoc.usage}"               windowtitle="${project.name} ${name} Component API"             doctitle="${project.name} ${name} Component"               bottom="Copyright ${sign.copyright} ${project.date} ${company.signature}. All Rights Reserved.">        <classpath >        <pathelement path="${lib.dir}/ejb"/>        </classpath>      <sourcepath>        <pathelement path="${src.main.dir}/ejb"/>      </sourcepath>    </javadoc>   </target>   <target name="startbanner">      <echo>+---------------------------------------+</echo>      <echo>+    Building ${name} Component         +</echo>      <echo>+---------------------------------------+</echo>   </target>   <target name="endbanner" depends="main" >      <echo>+---------------------------------------+</echo>      <echo>+    Finished ${name} Component         +</echo>      <echo>+---------------------------------------+</echo>   </target>   <target name="main" depends="startbanner, ejb-jar, ejbclientjar" />   <target name="main2" depends="startbanner, ejb-jar, ejbclientjar,war" />   <target name="main3" depends="startbanner, ejb-jar, ejbclientjar,war,ear,deploy-server" />   <target name="core" depends="ejb-war" />   <target name="ejb-war" depends="main2,endbanner" />   <target name="deploy" depends="main3,endbanner" />   <target name="all" depends="core, docs" /></project>  