blob: a7ac2d93e2af16eb7f75a6e247be12fed4ede679 [file] [log] [blame]
<!-- ===================================================================
This is basically the <ant /> task, except that it forks
and the verbosity setting is not propagated down
=================================================================== -->
<target name="my-forking-ant">
<echo message="Forking a JVM for target ${target} in file ${file}"/>
<java classname="org.apache.tools.ant.Main" fork="yes" failonerror="true" dir="${dir}">
<!-- See if this helps with Gump test failures -->
<sysproperty key="build.clonevm" value="true"/>
<!-- Pass the parser settings -->
<jvmarg value="-Djavax.xml.parsers.DocumentBuilderFactory=${javax.xml.parsers.DocumentBuilderFactory}"/>
<jvmarg value="-Djavax.xml.parsers.SAXParserFactory=${javax.xml.parsers.SAXParserFactory}"/>
<jvmarg value="-Xbootclasspath:${sun.boot.class.path}"/>
<jvmarg value="-Djikes.class.path=${jikes.class.path}"/>
<!-- Pass through the proxy parameters -->
<jvmarg value="-Dhttp.proxyHost=${http.proxyHost}"/>
<jvmarg value="-Dhttp.proxyPort=${http.proxyPort}"/>
<jvmarg value="-Dhttp.nonProxyHosts=${http.nonProxyHosts}"/>
<jvmarg value="-Dhttp.proxyUser=${http.proxyUser}"/>
<jvmarg value="-Dhttp.proxyPassword=${http.proxyPassword}"/>
<classpath refid="classpath"/>
<arg line="-buildfile ${file} ${target}"/>
</java>
</target>
<!-- ===================================================================
This is an accessory function to echo out fileNames
=================================================================== -->
<target name="echo-file">
<basename property="fileName" file="${file}"/>
<dirname property="dirName" file="${file}"/>
<echo message="Dir: ${dirName} File: ${fileName}"/>
</target>
<!-- ===================================================================
This is an accessory function to compile some given component
=================================================================== -->
<target name="component-compile">
<echo message="${file}"/>
<basename property="fileName" file="${file}"/>
<dirname property="dirName" file="${file}"/>
<ant inheritAll="false" dir="${dirName}" antfile="${fileName}" target="compile"/>
</target>
<!-- ===================================================================
This is an accessory function to exec JUST the testcase of a
component.
=================================================================== -->
<target name="batch-component-test">
<antcall target="echo-file"/>
<basename property="fileName" file="${file}"/>
<dirname property="dirName" file="${file}"/>
<ant inheritAll="false" dir="${dirName}" antfile="${fileName}" target="component-junit-functional"/>
</target>
<!-- ===================================================================
This is an accessory function to execs the full component test
=================================================================== -->
<target name="batch-component-run">
<antcall target="echo-file"/>
<basename property="fileName" file="${file}"/>
<dirname property="dirName" file="${file}"/>
<ant inheritAll="false" dir="${dirName}" antfile="${fileName}" target="run"/>
</target>
<!-- =================================================================== -->
<!-- Determine what dependencies are present -->
<!-- =================================================================== -->
<target name="setenv" unless="setenv.already.executed" depends="axis-clover-setup, axis-xmlbeans-setup">
<property name="setenv.already.executed" value="true"/>
<condition property="ant.good">
<and>
<contains string="${ant.version}" substring="Apache Ant version"/>
</and>
</condition>
<mkdir dir="${build.dir}"/>
<mkdir dir="${build.dest}"/>
<mkdir dir="${build.lib}"/>
<mkdir dir="${build.dir}/work"/>
<available property="servlet.present"
classname="javax.servlet.Servlet"
classpathref="classpath"/>
<available property="regexp.present"
classname="org.apache.oro.text.regex.Pattern"
classpathref="classpath"/>
<available property="junit.present"
classname="junit.framework.TestCase"
classpathref="classpath"/>
<available property="wsdl4j.present"
classname="javax.wsdl.Definition"
classpathref="classpath"/>
<available property="commons-logging.present"
classname="org.apache.commons.logging.Log"
classpathref="classpath"/>
<available property="commons-discovery.present"
classname="org.apache.commons.discovery.tools.DiscoverSingleton"
classpathref="classpath"/>
<available property="commons-httpclient.present"
classname="org.apache.commons.httpclient.HttpConnection"
classpathref="classpath"/>
<available property="commons-net.present"
classname="org.apache.commons.net.smtp.SMTPClient"
classpathref="classpath"/>
<available property="log4j.present"
classname="org.apache.log4j.Category"
classpathref="classpath"/>
<available property="activation.present"
classname="javax.activation.DataHandler"
classpathref="classpath"/>
<available property="security.present"
classname="org.apache.xml.security.Init"
classpathref="classpath"/>
<available property="mailapi.present"
classname="javax.mail.internet.MimeMessage"
classpathref="classpath"/>
<available property="httpunit.present"
classname="com.meterware.httpunit.GetMethodWebRequest"
classpathref="classpath"/>
<available property="jsse.present"
classname="javax.net.ssl.SSLSocketFactory"
classpathref="classpath"/>
<condition property="jetty.present" >
<and>
<available classname="javax.servlet.Servlet" classpathref="classpath" />
<available classname="org.mortbay.http.HttpServer" classpathref="classpath" />
</and>
</condition>
<condition property="jdk14.jsse.present" >
<and>
<available classname="javax.net.ssl.X509TrustManager" classpathref="classpath" />
<available classname="javax.net.SocketFactory" classpathref="classpath" />
<available classname="javax.net.ssl.SSLContext" classpathref="classpath" />
<available classname="javax.net.ssl.SSLSocketFactory" classpathref="classpath" />
</and>
</condition>
<condition property="sun.jsse.present" >
<and>
<available classname="com.sun.net.ssl.X509TrustManager" classpathref="classpath" />
<available classname="javax.net.SocketFactory" classpathref="classpath" />
<available classname="com.sun.net.ssl.SSLContext" classpathref="classpath" />
<available classname="javax.net.ssl.SSLSocketFactory" classpathref="classpath" />
</and>
</condition>
<condition property="ibm.jsse.present" >
<and>
<available classname="com.ibm.net.ssl.X509TrustManager" classpathref="classpath" />
<available classname="javax.net.SocketFactory" classpathref="classpath" />
<available classname="com.ibm.net.ssl.SSLContext" classpathref="classpath" />
<available classname="javax.net.ssl.SSLSocketFactory" classpathref="classpath" />
<available classname="com.ibm.crypto.provider.IBMJCE" classpathref="classpath" />
</and>
</condition>
<condition property="attachments.present" >
<and>
<available classname="javax.activation.DataHandler" classpathref="classpath" />
<available classname="javax.mail.internet.MimeMessage" classpathref="classpath" />
</and>
</condition>
<condition property="sun.codec.present" >
<available classname="sun.awt.image.codec.JPEGImageEncoderImpl" classpathref="classpath" />
</condition>
<condition property="jimi.present" >
<available classname="com.sun.jimi.core.Jimi" classpathref="classpath" />
</condition>
<condition property="merlinio.present" >
<available classname="javax.imageio.ImageIO" classpathref="classpath" />
</condition>
<condition property="axis-ant.present" >
<available classname="org.apache.axis.tools.ant.foreach.ForeachTask">
<classpath>
<pathelement location="${build.lib}/axis-ant.jar"/>
</classpath>
</available>
</condition>
<condition property="jimiAndAttachments.present">
<and>
<available classname="javax.activation.DataHandler" classpathref="classpath" />
<available classname="javax.mail.internet.MimeMessage" classpathref="classpath" />
<available classname="com.sun.jimi.core.Jimi" classpathref="classpath" />
</and>
</condition>
<condition property="jms.present" >
<available classname="javax.jms.Message" classpathref="classpath" />
</condition>
<condition property="jmsAndSonicMQ.present" >
<and>
<available classname="javax.jms.Message" classpathref="classpath" />
<available classname="progress.message.jclient.Message" classpathref="classpath" />
</and>
</condition>
<available property="post-compile.present" file="post-compile.xml" />
<property environment="env"/>
<condition property="debug" value="on">
<and>
<equals arg1="on" arg2="${env.debug}"/>
</and>
</condition>
<condition property="castor.present" >
<available classname="org.exolab.castor.xml.MarshalException" classpathref="classpath" />
</condition>
<condition property="xmlbeans.present" >
<and>
<available classname="org.apache.xmlbeans.XmlObject" classpathref="classpath" />
<available classname="javax.xml.stream.XMLStreamReader" classpathref="classpath" />
</and>
</condition>
<condition property="bsf.present" >
<available classname="org.apache.bsf.BSFManager" classpathref="classpath" />
</condition>
<condition property="combridge.present" >
<available classname="org.apache.axis.components.bridge.COMBridge" classpathref="classpath" />
</condition>
<!-- look for WSDL support on the platform -->
<condition property="wsdl.found">
<or>
<available file="wsdl" filepath="${env.PATH}"/>
<available file="wsdl.exe" filepath="${env.PATH}"/>
<available file="wsdl.exe" filepath="${env.Path}"/>
</or>
</condition>
<echo level="verbose">wsdl.found=${wsdl.found}</echo>
<condition property="csc.found">
<or>
<available file="csc" filepath="${env.PATH}"/>
<available file="csc.exe" filepath="${env.PATH}"/>
<available file="csc.exe" filepath="${env.Path}"/>
</or>
</condition>
<echo level="verbose">csc.found=${csc.found}</echo>
<condition property="dotnetapps.found">
<and>
<isset property="csc.found"/>
<isset property="wsdl.found"/>
</and>
</condition>
<echo level="verbose">dotnetapps.found=${dotnetapps.found}</echo>
<!-- look for IIS -->
<condition property="iis.found">
<and>
<os family="windows" />
<available file="${iis.base}" type="dir" />
</and>
</condition>
<echo level="verbose">iis.found=${iis.found}</echo>
<echo level="verbose">iis.base=${iis.base}</echo>
<!-- look for xalan -->
<available property="xalan2.present"
classname="org.apache.xalan.transformer.TransformerImpl" />
<!-- apply the current proxy settings to the current JVM.
This gives in-VM code network access through any firewall
-->
<echo level="verbose" message="-- Applying Network Settings ---"/>
<!-- we cannot set proxyuser and proxypassword as these are only ant1.6 -->
<!-- <setproxy
proxyhost="${http.proxyHost}"
proxyport="${http.proxyPort}"
socksProxyHost="${socks.proxyHost}"
socksProxyPort="${socks.proxyPort}"
/>
-->
<!-- these are conditions used for patternset
configuration of which sets of tests to run.
Ignore them until the functional tests use patternsets -->
<!-- set the flag for testing jsp pages -->
<condition property="test.functional.httpunit.jsp">
<isset property="testserver.is.appserver"/>
</condition>
<!-- set the flag for testing the admin servlet -->
<condition property="test.functional.httpunit.adminservlet">
<isset property="testserver.is.appserver"/>
</condition>
<!-- set the online flag to true if offline is not set -->
<condition property="test.functional.online">
<not><isset property="offline"/></not>
</condition>
</target>
<!-- print out the current enviroment.
Also, probe for javadocs being out of date and set javadoc.notrequired
to true if they are not needed -->
<target name="printEnv" depends="setenv,check-javadoc-needed" >
<echo message="-----------------------------------------------------------------"/>
<echo message=" Build environment for ${Name} ${axis.version} [${year}] "/>
<echo message="-----------------------------------------------------------------"/>
<echo message="Building with ${ant.version}"/>
<echo message="using build file ${ant.file}"/>
<echo message="Java ${java.version} located at ${java.home} "/>
<echo message="-----------------------------------------------------------------"/>
<echo message="--- Flags (Note: If the {property name} is displayed, "/>
<echo message=" then the component is not present)" />
<echo message=""/>
<echo message="basedir = ${basedir}"/>
<echo message="axis.home = ${axis.home}"/>
<echo message="build.dir = ${build.dir}"/>
<echo message="build.dest = ${build.dest}"/>
<echo message="lib.dir = ${lib.dir}"/>
<echo message=""/>
<echo message="=== Required Libraries (for building code) ===" />
<echo message="activation.present=${activation.present}" />
<echo message="commons-discovery.present=${commons-discovery.present}" />
<echo message="commons-logging.present=${commons-logging.present}" />
<echo message="wsdl4j.present=${wsdl4j.present}" />
<echo message=""/>
<echo message="--- Optional Libraries (for building code) ---" />
<echo message="attachments.present=${attachments.present}" />
<echo message="bsf.present=${bsf.present}" />
<echo message="castor.present=${castor.present}" />
<echo message="commons-httpclient.present=${commons-httpclient.present}" />
<echo message="commons-net.present=${commons-net.present}" />
<echo message="ibm.jsse.present=${ibm.jsse.present}" />
<echo message="jimi.present=${jimi.present}" />
<echo message="jms.present=${jms.present}" />
<echo message="jetty.present=${jetty.present}" />
<echo message="jdk14.jsse.present=${jdk14.jsse.present}" />
<echo message="mailapi.present=${mailapi.present}" />
<echo message="regexp.present=${regexp.present}" />
<echo message="security.present=${security.present}" />
<echo message="servlet.present=${servlet.present}" />
<echo message="sun.jsse.present=${sun.jsse.present}" />
<echo message="xmlbeans.present=${xmlbeans.present}" />
<echo message=""/>
<echo message="--- Miscellaneous (for running tests) ---" />
<echo message="axis-ant.present=${axis-ant.present}" />
<echo message="clover.present=${clover.present}" />
<echo message="httpunit.present=${httpunit.present}" />
<echo message="junit.present=${junit.present}" />
<echo message="log4j.present=${log4j.present}" />
<echo message=""/>
<echo message="--- Property values ---" />
<echo message="debug=${debug}" />
<echo message="nowarn=${nowarn}" />
<echo message="source=${source}" />
<echo message="target=${target}" />
<echo message="deprecation=${deprecation}" />
<echo message="build.compiler=${build.compiler}" />
<echo message="javac.fork=${javac.fork}" />
<!-- Set environment variable axis_nojavadocs=true to never generate javadocs. Case sensative! -->
<echo message="axis_nojavadocs=${env.axis_nojavadocs}"/>
<echo message="javax.xml.parsers.DocumentBuilderFactory=${javax.xml.parsers.DocumentBuilderFactory}"/>
<echo message="javax.xml.parsers.SAXParserFactory=${javax.xml.parsers.SAXParserFactory}"/>
<echo message="sun.boot.class.path=${sun.boot.class.path}"/>
<echo message="jikes.class.path=${jikes.class.path}"/>
<echo message="" />
<echo message="-- Network Settings ---"/>
<echo message="" />
<echo message="http.proxyHost = ${http.proxyHost}" />
<echo message="http.proxyPort = ${http.proxyPort}" />
<echo message="http.nonProxyHosts = ${http.nonProxyHosts}" />
<echo message="http.proxyUser = ${http.proxyUser}" />
<echo message="http.proxyPassword = ${http.proxyPassword}" />
<echo message="" />
<echo message="-- Test Environment for AXIS ---"/>
<echo message="" />
<echo message="test.functional.remote = ${test.functional.remote}" />
<echo message="test.functional.local = ${test.functional.local}" />
<echo message="test.functional.both = ${test.functional.both}" />
<echo message="test.functional.reportdir = ${test.functional.reportdir}" />
<echo message="test.functional.SimpleAxisPort = ${test.functional.SimpleAxisPort}" />
<echo message="test.functional.TCPListenerPort = ${test.functional.TCPListenerPort}" />
<echo message="test.functional.fail = ${test.functional.fail}" />
<echo message="" />
<pathconvert targetos="windows" property="classpath.as.string" refid="classpath"/>
<echo message="classpath: ${classpath.as.string}"/>
<echo message="" />
</target>
<!-- see if javadocs are needed by looking for the env.axis_nojavadocs flag -->
<target name="check-javadoc-needed" depends="setenv" >
<uptodate property="javadoc.notoutofdate"
targetfile="${build.javadocs}/index.html">
<srcfiles dir="${src.dir}" includes="**/*.java" />
</uptodate>
<!-- for ant1.5+, we can use <isset> here -->
<condition property="axis_nojavadocs" value="true">
<equals arg1="true" arg2="${env.axis_nojavadocs}"/>
</condition>
<condition property="axis_nojavadocs" value="false">
<equals arg1="${axis_nojavadocs}" arg2="$${axis_nojavadocs}"/>
</condition>
<condition property="javadoc.notrequired" value="true">
<or>
<equals arg1="${javadoc.notoutofdate}" arg2="true"/>
<equals arg1="true" arg2="${axis_nojavadocs}"/>
</or>
</condition>
</target>
<!-- =================================================================== -->
<!-- Launches the functional test TCP server -->
<!-- =================================================================== -->
<target name="start-functional-test-tcp-server" if="junit.present">
<echo message="Starting test tcp server."/>
<java classname="samples.transport.tcp.TCPListener" fork="yes" dir="${axis.home}/build">
<arg line="-p ${test.functional.TCPListenerPort}" /> <!-- arbitrary port -->
<classpath refid="classpath" />
</java>
</target>
<!-- =================================================================== -->
<!-- Launches the functional test HTTP server -->
<!-- =================================================================== -->
<target name="start-functional-test-http-server" if="junit.present">
<echo message="Starting test http server."/>
<java classname="org.apache.axis.transport.http.SimpleAxisServer" fork="yes" dir="${axis.home}/build">
<!-- Uncomment this to use Jikes instead of Javac for compiling JWS Files
<jvmarg value="-Daxis.Compiler=org.apache.axis.components.compiler.Jikes"/>
-->
<jvmarg value="-Daxis.wsdlgen.intfnamespace=http://localhost:${test.functional.ServicePort}"/>
<jvmarg value="-Daxis.wsdlgen.serv.loc.url=http://localhost:${test.functional.ServicePort}"/>
<arg line="-p ${test.functional.SimpleAxisPort}" /> <!-- arbitrary port -->
<classpath refid="classpath" />
</java>
</target>
<!-- =================================================================== -->
<!-- Launches the functional test HTTP server when testing digital signature -->
<!-- =================================================================== -->
<target name="start-functional-test-http-server-secure" if="junit.present" depends="start-signature-signing-and-verification">
<echo message="Starting test http server."/>
<java classname="org.apache.axis.transport.http.SimpleAxisServer" fork="yes" dir="${axis.home}/build">
<!-- Uncomment this to use Jikes instead of Javac for compiling JWS Files
<jvmarg value="-Daxis.Compiler=org.apache.axis.components.compiler.Jikes"/>
-->
<jvmarg value="-Daxis.wsdlgen.intfnamespace=http://localhost:${test.functional.ServicePort}"/>
<jvmarg value="-Daxis.wsdlgen.serv.loc.url=http://localhost:${test.functional.ServicePort}"/>
<arg line="-p ${test.functional.SimpleAxisPort}" /> <!-- arbitrary port -->
<classpath refid="classpath" />
</java>
</target>
<!-- =================================================================== -->
<!-- Stops the functional test HTTP server -->
<!-- =================================================================== -->
<target name="stop-functional-test-http-server" if="junit.present">
<echo message="Stopping test http server."/>
<java classname="org.apache.axis.client.AdminClient" fork="yes">
<classpath refid="classpath" />
<arg line="quit"/>
</java>
</target>
<!-- =================================================================== -->
<!-- Stops the functional test HTTP server when testing digital signature -->
<!-- =================================================================== -->
<target name="stop-functional-test-http-server-secure" if="junit.present" depends="stop-signature-signing-and-verification">
<echo message="Stopping test http server."/>
<java classname="org.apache.axis.client.AdminClient" fork="yes">
<classpath refid="classpath" />
<arg line="quit"/>
</java>
</target>
<!-- =================================================================== -->
<!-- Start Signature Signing and Verification -->
<!-- =================================================================== -->
<target name="start-signature-signing-and-verification" if="security.present">
<!-- Enable transparent Signing of SOAP Messages sent
from the client and Server-side Signature Verification.
-->
<java classname="org.apache.axis.client.AdminClient" fork="yes">
<classpath refid="classpath" />
<arg line="${axis.home}/samples/security/serversecuritydeploy.wsdd"/>
</java>
<java classname="org.apache.axis.utils.Admin" fork="yes">
<classpath refid="classpath" />
<arg value="client"/>
<arg value="${axis.home}/samples/security/clientsecuritydeploy.wsdd"/>
</java>
</target>
<!-- =================================================================== -->
<!-- Stop Signature Signing and Verification -->
<!-- =================================================================== -->
<target name="stop-signature-signing-and-verification" if="security.present">
<!-- Disable transparent Signing of SOAP Messages sent
from the client and Server-side Signature Verification.
-->
<java classname="org.apache.axis.client.AdminClient" fork="yes">
<classpath refid="classpath" />
<arg line="samples/security/serversecurityundeploy.wsdd"/>
</java>
<java classname="org.apache.axis.utils.Admin" fork="yes">
<classpath refid="classpath" />
<arg value="client"/>
<arg value="samples/security/clientsecurityundeploy.wsdd"/>
</java>
</target>
<!-- =================================================================== -->
<!-- Prepares the JUnit functional test -->
<!-- =================================================================== -->
<target name="component-junit-functional-prepare" if="junit.present">
<!-- first, put the JWS where the functional test can see it -->
<mkdir dir="${axis.home}/build/jws" />
<copy file="${axis.home}/samples/stock/StockQuoteService.jws" todir="${axis.home}/build/jws" />
<copy file="${axis.home}/test/functional/AltStockQuoteService.jws" todir="${axis.home}/build/jws" />
<copy file="${axis.home}/test/functional/GlobalTypeTest.jws" todir="${axis.home}/build/jws"/>
<copy file="${axis.home}/webapps/axis/EchoHeaders.jws" todir="${axis.home}/build/jws" />
<path id="deploy.xml.files">
<fileset dir="${build.dir}">
<include name="work/${componentName}/**/deploy.wsdd"/>
<include name="${extraServices}/deploy.wsdd" />
</fileset>
</path>
<path id="undeploy.xml.files">
<fileset dir="${build.dir}">
<include name="work/${componentName}/**/undeploy.wsdd"/>
<include name="${extraServices}/undeploy.wsdd" />
</fileset>
</path>
<property name="deploy.xml.property" refid="deploy.xml.files"/>
<property name="undeploy.xml.property" refid="undeploy.xml.files"/>
</target>
<target name="component-test-run" if="junit.present" depends="start-signature-signing-and-verification">
<echo message="Execing ${componentName} Test"/>
<antcall target="component-junit-functional"/>
</target>
<!-- Runs the AdminClient to deploy/undeploy. Set up the admin.file.exists property such that it is set -->
<!-- if there is a deploy.xml file, and the admin.file property to contain the actual file reference. -->
<target name="adminClient" if="admin.file.exists">
<java classname="org.apache.axis.client.AdminClient" fork="yes">
<classpath refid="classpath" />
<arg line="${admin.file}"/>
</java>
</target>
<target name="component-junit-functional" if="junit.present" depends="component-junit-functional-prepare">
<!-- Don't bother running AdminClient unless there's something to do -->
<condition property="admin.file.exists">
<not><equals arg1="${deploy.xml.property}" arg2=""/></not>
</condition>
<antcall target="adminClient">
<param name="admin.file" value="${deploy.xml.property}"/>
</antcall>
<available file="${axis.home}/junit-exclude-tests.txt" property="junit-exclude-tests.present"/>
<junit dir="${axis.home}" printsummary="yes" haltonfailure="${test.functional.fail}" fork="yes">
<classpath refid="classpath" />
<formatter type="xml" usefile="${test.functional.usefile}"/>
<batchtest todir="${test.functional.reportdir}">
<fileset dir="${build.dest}">
<include name="${extraTestCases}/*TestCase.class" />
<include name="${extraTestCases}/**/*TestCase.class" />
<include name="${componentName}/*TestCase.class" />
<include name="${componentName}/**/*TestCase.class" />
<include name="${componentName}/**/PackageTests.class" />
<!-- <include name="${componentName}/**/test/*TestSuite.class"/> -->
<excludesfile name="${axis.home}/junit-exclude-tests.txt" if="junit-exclude-tests.present"/>
</fileset>
</batchtest>
</junit>
<!-- Don't bother running AdminClient unless there's something to do -->
<condition property="admin.file.exists">
<not><equals arg1="${undeploy.xml.property}" arg2=""/></not>
</condition>
<antcall target="adminClient">
<param name="admin.file" value="${undeploy.xml.property}"/>
</antcall>
</target>
<target name="execute-Component" depends="setenv" >
<mkdir dir="${test.functional.reportdir}" />
<runaxisfunctionaltests
url="http://localhost:${test.functional.TCPListenerPort}"
httpServerTarget="start-functional-test-http-server"
testTarget="component-test-run"
httpStopTarget="stop-functional-test-http-server" />
</target>
<target name="execute-Component-noServer" depends="setenv">
<mkdir dir="${test.functional.reportdir}" />
<runaxisfunctionaltests testTarget="component-test-run"/>
</target>
<target name="execute-Component-with-tcp" depends="transport-layer" >
<mkdir dir="${test.functional.reportdir}" />
<runaxisfunctionaltests
url="http://localhost:${test.functional.TCPListenerPort}"
tcpServerTarget="start-functional-test-tcp-server"
httpServerTarget="start-functional-test-http-server"
testTarget="component-test-run"
httpStopTarget="stop-functional-test-http-server" />
</target>
<target name="transport-layer" depends="setenv" >
<ant inheritAll="true" dir="${axis.home}/samples/transport"
antfile="build.xml" target="compile" />
</target>
<target name="clover-report" depends="setenv">
<clover-report>
<current outfile="${axis.home}/build/clover-report" title="Axis Clover Report" span="60m">
<format type="html"/>
</current>
</clover-report>
</target>
<target name="axis-clover-setup" depends="axis-clover-setenv" if="clover.present">
<echo message="Registering clover tasks" />
<taskdef resource="clovertasks"/>
<clover-setup initString="${axis.home}/build/clover/axis_coverage.db"
tmpdir="${axis.home}/build/clover"
flushpolicy="interval"
flushinterval="1000">
<files>
<include name="**/org/apache/axis/**/*.java"/>
</files>
</clover-setup>
</target>
<target name="axis-clover-setenv">
<condition property="clover.present" >
<available classname="com.cortexeb.tools.clover.tasks.CloverTask" classpathref="classpath" />
</condition>
</target>
<target name="axis-xmlbeans-setup" depends="axis-xmlbeans-setenv" if="generate.schema.jar">
<mkdir dir="${build.lib}"/>
<echo message="Registering xmlbeans tasks"/>
<taskdef name="xmlbeanbuild"
classname="org.apache.xmlbeans.impl.tool.XMLBean"
classpathref="classpath"/>
<xmlbeanbuild
schema="${axis.home}/xsd"
classgendir="${build.dir}/schema/"
failonerror="true"
classpathref="classpath"/>
<jar jarfile="${build.lib}/axis-schema.jar" basedir="${build.dir}/schema/"/>
</target>
<target name="axis-xmlbeans-setenv">
<condition property="generate.schema.jar">
<and>
<available classname="org.apache.xmlbeans.impl.tool.XMLBean" classpathref="classpath" />
<not>
<available file="${build.lib}/axis-schema.jar"/>
</not>
</and>
</condition>
</target>