build.xml

         <?xml version="1.0" encoding="UTF-8" ?>
         <project name="AppserverRefresh" default="refreshAppserver" basedir=".">
         
             <property name="spl.tcat.port" value="7300"/>
             <property name="spl.tcat.version" value="tomcatBase-5.5.20"/>
         
             <property name="spl.build.saved.dir" location="U:/V2xx_​CM_​DEMO_​DEV_​WIN_​TC_​ORA/build/saved"/>
             <property name="spl.base.dir" location="C:/splcm/V2xx_​CM_​DEMO_​DEV_​WIN_​TC_​ORA"/>
             <property name="spl.bin.dir" location="${spl.base.dir}/bin"/>
             <property name="spl.splapp.dir" location="${spl.base.dir}/splapp"/>
             <property name="spl.splapp.applications.dir" location="${spl.splapp.dir}/applications/"/>
             <property name="spl.root.dir" location="${spl.splapp.applications.dir}/root"/>
             <property name="spl.runtime.dir" location="${spl.base.dir}/runtime"/>
             <property name="spl.standalone.lib.dir" location="${spl.splapp.dir}/standalone/lib"/>
             <property name="spl.root.web-inf.lib.dir" location="${spl.root.dir}/WEB-INF/lib"/>
             <property name="spl.xai.web-inf.lib.dir" location="${spl.splapp.applications.dir}/XAIApp/WEB-INF/lib"/>
         
             <target name="deployXAI" depends="deploy" >
                 <echo message="Copying CM appserver jar file to ${spl.xai.web-inf.lib.dir}..."/>
                 <copy todir="${spl.xai.web-inf.lib.dir}">
                     <fileset dir="${spl.build.saved.dir}\lib">
                        <include name="cm*.jar" />
                     </fileset>
                 </copy>
             </target>
         
             <target name="starttomcat" depends="deployXAI">
                 <echo message="Starting Tomcat..."/>
                 <property name="host" value="localhost"/>
                 <property name="port" value="${spl.tcat.port}"/>
                 <property name="server.url" value="http://${host}:${port}"/>
                 <exec dir="${spl.bin.dir}" executable="cmd.exe" spawn="true">
             	    <arg line="/c spl.cmd start" />
                 </exec>
                 <waitfor maxwait="180" maxwaitunit="second" timeoutproperty="server.is.unavailable">
          	     <http url="${server.url}"/>
                 </waitfor>        
                 <fail if="server.is.unavailable" message="Ant was unable to start the server..."/>
                 <echo message="Finished App Server Refresh..."/>
             </target>
         
         
             <target name="deploy" depends="CheckSavedDir">
                 <tstamp>
                     <format property="TODAY" pattern="MM/dd/yy HH:mm"/>
                 </tstamp>
                 <echo message="Starting refresh on ${TODAY}"/>
           		<fail unless="saved.dir.exist" message="No saved directory exist. Not refreshing..."/>
           		<fail if="saving.files.in.progress" message="Build server save files in progress. Not refreshing..."/>
                 <echo message="Shutting down MPL..."/>
                 <exec dir="${spl.splapp.dir}/mpl" executable="cmd.exe" spawn="true">
             	    <arg line="/c stopMPL.cmd" />
                 </exec>
                 <echo message="Waiting 30 seconds while MPL shutsdown..."/>
                 <sleep seconds="30"/>
                 <echo message="Shutting down Tomcat..."/>
                 <exec dir="${spl.bin.dir}" executable="cmd.exe" spawn="true">
             	    <arg line="/c spl.cmd stop" />
                 </exec>
                 <echo message="Waiting 120 seconds while Tomcat shutsdown..."/>
                 <sleep seconds="120"/>
         
                 <echo message="Refreshing appserver ..."/>
         
                 <echo message="Deleting CM appserver root directory ${spl.root.dir}\cm"/>
         	  <delete dir="${spl.root.dir}\cm"/>
         
                 <echo message="Deleting CM appserver root directory ${spl.root.dir}\c1\cm"/>
         	  <delete dir="${spl.root.dir}\c1\cm"/>
         
                 <echo message="Deleting CM appserver dlls in ${spl.runtime.dir}"/>
         	  <delete>
              	    	<fileset dir="${spl.runtime.dir}">
                 		<include name="cm*.dll"/>
                 		<include name="CM*.dll"/>
                 	</fileset>
         	  </delete>
         
          	  <echo message="Deleting CM appserver jars in ${spl.standalone.lib.dir}"/>
         	  <delete>
                 	<fileset dir="${spl.standalone.lib.dir}">
                 		<include name="cm*.jar"/>
                 	</fileset>
         	  </delete>
         
          	  <echo message="Deleting CM appserver jars in ${spl.root.web-inf.lib.dir}"/>
         	  <delete>
              	  	<fileset dir="${spl.root.web-inf.lib.dir}">
                 		<include name="cm*.jar"/>
                 	</fileset>
         	  </delete>
         
          	  <echo message="Deleting CM appserver jars in ${spl.xai.web-inf.lib.dir}"/>
         	  <delete>
                 	<fileset dir="${spl.xai.web-inf.lib.dir}">
                 		<include name="cm*.jar"/>
                 	</fileset>
         	  </delete>
         
                 <echo message="Create the build saved directory if it doesn't exist ${spl.build.saved.dir}\root\cm..."/>
         	  <mkdir dir="${spl.build.saved.dir}\root\cm"/>
         
                 <echo message="Copying CM appserver files to ${spl.root.dir}..."/>
                 <copy todir="${spl.root.dir}\cm">
                     <fileset dir="${spl.build.saved.dir}\root\cm" />
                 </copy>
         
                 <echo message="Copying CM appserver dlls to ${spl.runtime.dir}"/>
                 <copy todir="${spl.runtime.dir}">
                     <fileset dir="${spl.build.saved.dir}\runtime">
                        <include name="CM*.dll" />
                        <include name="cm*.dll" />
                     </fileset>
                 </copy>
                 <echo message="Copying CM appserver jar file to ${spl.standalone.lib.dir}..."/>
                 <copy todir="${spl.standalone.lib.dir}">
                     <fileset dir="${spl.build.saved.dir}\lib">
                        <include name="cm*.jar" />
                     </fileset>
                 </copy>
                 <echo message="Copying CM appserver jar file to ${spl.root.web-inf.lib.dir}..."/>
                 <copy todir="${spl.root.web-inf.lib.dir}">
                     <fileset dir="${spl.build.saved.dir}\lib">
                        <include name="cm*.jar" />
                     </fileset>
                 </copy>
         
            </target>
         
         
           <target name="refreshAppserver" depends="starttomcat"/>
         
           <target name="CheckSavedDir">
         		<echo message="Checking if saved directory exist..."/>
           		<condition property="saved.dir.exist">
         		   <available file="${spl.build.saved.dir}" type="dir"/>
           		</condition>
         		<echo message="Checking if build server is in the process of saving files..."/>
           		<condition property="saving.files.in.progress">
         		   <available file="${spl.build.root.dir}\~saving_​files" type="file"/>
           		</condition>
            </target>
         
         </project>