This commit is contained in:
Andrea Manzi 2008-03-18 18:33:14 +00:00
parent c56fa15843
commit 6d8170b2a4
1 changed files with 103 additions and 29 deletions

132
build.xml
View File

@ -29,7 +29,6 @@ OPTIONAL INPUT PROPERTIES (DEFAULT AVAILABLE)
base.dir: Root directory of the service. Defaults to ".").
schema.dir.name: Name of the $base.dir subdirectory which contains the wsdl/s. Defaults to "schema".
Defaults to $name.
impl.dir.name: Name of the $package.dir subdirectory which contains the code. Defaults to "impl".
etc.dir.name: Name of the $package.dir subdirectory which contains the configuration (other than WSSD and JNDI). Defaults to "etc".
stubs.dir.name: Name of the $package.dir subdirectory which contains auxiliary files and resources for stubs. Defaults to "stubs".
garname: Unique name of the GAR file to be generated. Defaults to $name.
@ -57,12 +56,11 @@ garname: Unique name of the GAR file to be generated. Defaults to $name.
<property name="service.dir" location="." />
<property name="schema.dir.name" value="schema" />
<property name="etc.dir.name" value="etc" />
<property name="impl.dir.name" value="impl" />
<property name="stubs.dir.name" value="stubs" />
<property name="schema.dir" location="${service.dir}/${schema.dir.name}"/>
<property name="impl.dir" value="${service.dir}/${package.dir}/${impl.dir.name}" />
<property name="etc.dir" value="${service.dir}/${package.dir}/${etc.dir.name}" />
<property name="etc.dir" value="${service.dir}/${etc.dir.name}" />
<available file="${etc.dir}" property="etc.dir.present"/>
<mkdir dir="${etc.dir}" /><!-- no effect if already exists -->
@ -89,10 +87,10 @@ garname: Unique name of the GAR file to be generated. Defaults to $name.
<!-- file defaults -->
<property name="garname" value="${package}"/>
<property name="garfile" value="${garname}.gar"/>
<property name="jarfile" value="${garname}.jar" />
<property name="jarfile.stubs" value="${garname}.stubs.jar" />
<property name="garname" value="${name}"/>
<property name="garfile" value="${package}.gar"/>
<property name="jarfile" value="${package}.jar" />
<property name="jarfile.stubs" value="${package}.stubs.jar" />
<!-- output summary -->
@ -150,11 +148,6 @@ garname: Unique name of the GAR file to be generated. Defaults to $name.
<mkdir dir="${build.dir}" />
<mkdir dir="${build.class.dir}" />
<copy toDir="${build.class.dir}/${package.dir}/${impl.dir.name}">
<fileset dir="${impl.dir}">
<include name="**/*.resource"/>
</fileset>
</copy>
<delete dir="${build.lib.dir}" />
<mkdir dir="${build.lib.dir}" />
<mkdir dir="${build.schema.service.dir}" />
@ -175,9 +168,11 @@ garname: Unique name of the GAR file to be generated. Defaults to $name.
<fileset dir="${schema.dir}"/>
</copy>
<copy toDir="${build.lib.dir}">
<fileset dir="${lib.location}" includes="*.jar"/>
<fileset dir="${lib.location}">
<exclude name="${jarfile.stubs}" />
</fileset>
</copy>
</target>
</target>
<!-- wsdl specific tasks. Clone for each additional wsdl, if required -->
<target name="processWSDL.1" depends="init" if="wsdl.1" description="Flattens wsdl and generate bindings">
@ -230,7 +225,58 @@ garname: Unique name of the GAR file to be generated. Defaults to $name.
<property name="binding.root" value="${wsdl.3}" />
</ant>
</target>
<target name="processWSDL.4" depends="init" if="wsdl.4" description="Flattens wsdl and generate bindings">
<echo message="PROCESSING ${wsdl.4}'s WSDL:" level="debug"/>
<ant antfile="${build.stubs}" target="flatten">
<property name="source.flatten.dir" location="${build.schema.service.dir}" />
<property name="target.flatten.dir" location="${build.schema.service.dir}" />
<property name="wsdl.source" value="${wsdl.4}.wsdl" />
<property name="wsdl.target" value="${wsdl.4}_flattened.wsdl" />
<property name="wsdl.porttype" value="${wsdl.4}PortType" />
</ant>
<ant antfile="${build.stubs}" target="generateBinding">
<property name="source.binding.dir" value="${build.schema.service.dir}" />
<property name="target.binding.dir" value="${build.schema.service.dir}" />
<property name="porttype.wsdl" value="${wsdl.4}_flattened.wsdl" />
<property name="binding.root" value="${wsdl.4}" />
</ant>
</target>
<target name="processWSDL.5" depends="init" if="wsdl.5" description="Flattens wsdl and generate bindings">
<echo message="PROCESSING ${wsdl.5}'s WSDL:" level="debug"/>
<ant antfile="${build.stubs}" target="flatten">
<property name="source.flatten.dir" location="${build.schema.service.dir}" />
<property name="target.flatten.dir" location="${build.schema.service.dir}" />
<property name="wsdl.source" value="${wsdl.5}.wsdl" />
<property name="wsdl.target" value="${wsdl.5}_flattened.wsdl" />
<property name="wsdl.porttype" value="${wsdl.5}PortType" />
</ant>
<ant antfile="${build.stubs}" target="generateBinding">
<property name="source.binding.dir" value="${build.schema.service.dir}" />
<property name="target.binding.dir" value="${build.schema.service.dir}" />
<property name="porttype.wsdl" value="${wsdl.5}_flattened.wsdl" />
<property name="binding.root" value="${wsdl.5}" />
</ant>
</target>
<target name="processWSDL.6" depends="init" if="wsdl.6" description="Flattens wsdl and generate bindings">
<echo message="PROCESSING ${wsdl.6}'s WSDL:" level="debug"/>
<ant antfile="${build.stubs}" target="flatten">
<property name="source.flatten.dir" location="${build.schema.service.dir}" />
<property name="target.flatten.dir" location="${build.schema.service.dir}" />
<property name="wsdl.source" value="${wsdl.6}.wsdl" />
<property name="wsdl.target" value="${wsdl.6}_flattened.wsdl" />
<property name="wsdl.porttype" value="${wsdl.6}PortType" />
</ant>
<ant antfile="${build.stubs}" target="generateBinding">
<property name="source.binding.dir" value="${build.schema.service.dir}" />
<property name="target.binding.dir" value="${build.schema.service.dir}" />
<property name="porttype.wsdl" value="${wsdl.6}_flattened.wsdl" />
<property name="binding.root" value="${wsdl.6}" />
</ant>
</target>
<target name="generateStubs.1" depends="mergePackageMapping" if="wsdl.1" description="Generate wsdl stub classes">
<echo message="GENERATING ${wsdl.1}'s STUBS:" level="debug"/>
<ant antfile="${build.stubs}" target="generateStubs">
@ -261,20 +307,49 @@ garname: Unique name of the GAR file to be generated. Defaults to $name.
</ant>
</target>
<target name="generateStubs.4" depends="mergePackageMapping" if="wsdl.4" description="Generate wsdl stub classes">
<echo message="GENERATING ${wsdl.4}'s STUBS:" level="debug"/>
<ant antfile="${build.stubs}" target="generateStubs">
<property name="mapping.file" location="${build.dir}/namespace2package.mappings" />
<property name="source.stubs.dir" location="${build.schema.service.dir}" />
<property name="target.stubs.dir" location="${build.stubs.src.dir}" />
<property name="wsdl.file" value="${wsdl.4}_service.wsdl" />
</ant>
</target>
<target name="generateStubs.5" depends="mergePackageMapping" if="wsdl.5" description="Generate wsdl stub classes">
<echo message="GENERATING ${wsdl.5}'s STUBS:" level="debug"/>
<ant antfile="${build.stubs}" target="generateStubs">
<property name="mapping.file" location="${build.dir}/namespace2package.mappings" />
<property name="source.stubs.dir" location="${build.schema.service.dir}" />
<property name="target.stubs.dir" location="${build.stubs.src.dir}" />
<property name="wsdl.file" value="${wsdl.5}_service.wsdl" />
</ant>
</target>
<target name="generateStubs.6" depends="mergePackageMapping" if="wsdl.6" description="Generate wsdl stub classes">
<echo message="GENERATING ${wsdl.6}'s STUBS:" level="debug"/>
<ant antfile="${build.stubs}" target="generateStubs">
<property name="mapping.file" location="${build.dir}/namespace2package.mappings" />
<property name="source.stubs.dir" location="${build.schema.service.dir}" />
<property name="target.stubs.dir" location="${build.stubs.src.dir}" />
<property name="wsdl.file" value="${wsdl.6}_service.wsdl" />
</ant>
</target>
<!-- Cross-wsdl tasks. Adds dependencies for each additional wsdl, if required -->
<target name="processWSDLs" depends="processWSDL.1,processWSDL.2,processWSDL.3" description="generate bindings for all porttypes" />
<target name="generateStubs" depends="generateStubs.1,generateStubs.2,generateStubs.3" description="generate stub classes for all porttypes" />
<target name="processWSDLs" depends="processWSDL.1,processWSDL.2,processWSDL.3,processWSDL.4,processWSDL.5,processWSDL.6" description="generate bindings for all porttypes" />
<target name="generateStubs" depends="generateStubs.1,generateStubs.2,generateStubs.3,generateStubs.4,generateStubs.5,generateStubs.6" description="generate stub classes for all porttypes" />
<!-- Service Build tasks -->
<target name="buildService" depends="processWSDLs" description="compiles service implementation">
<javac srcdir="${impl.dir}" destdir="${build.class.dir}" debug="${java.debug}" deprecation="${java.deprecation}">
<javac srcdir="${package.dir}" destdir="${build.class.dir}" debug="${java.debug}" deprecation="${java.deprecation}">
<classpath>
<fileset dir="${lib.location}">
<include name="**/*.jar" />
<exclude name="**/${jarfile}" />
</fileset>
<fileset dir="${container.dir}/lib">
<fileset dir="${container.dir}/lib">
<include name="*.jar" />
<exclude name="${jarfile}" />
</fileset>
@ -284,18 +359,18 @@ garname: Unique name of the GAR file to be generated. Defaults to $name.
<target name="jarService" depends="buildService" description="jars service implementation">
<jar jarfile="${build.lib.dir}/${jarfile}" basedir="${build.class.dir}">
<include name="${package.dir}/${impl.dir.name}/**" />
<include name="${package.dir}/**" />
</jar>
</target>
<target name="garService" depends="jarService" description="creates service gar">
<ant antfile="${build.packages}" target="makeGar">
<property name="garserverdeployment.file" value="${package.dir}/deploy-server.wsdd" />
<property name="garserverdeployment_NOSEC.file" value="${package.dir}/deploy-server.wsdd_NOSEC" />
<property name="garclientdeployment.file" value="${package.dir}/deploy-client.wsdd" />
<property name="garclientserverdeployment.file" value="${package.dir}/deploy-client-server.wsdd" />
<property name="garjndiconfigdeployment.file" value="${package.dir}/deploy-jndi-config.xml" />
<property name="gar.id" value="${garname}" />
<property name="garserverdeployment.file" value="${etc.dir}/deploy-server.wsdd" />
<property name="garserverdeployment_NOSEC.file" value="${etc.dir}/deploy-server.wsdd_NOSEC" />
<property name="garclientdeployment.file" value="${etc.dir}/deploy-client.wsdd" />
<property name="garclientserverdeployment.file" value="${etc.dir}/deploy-client-server.wsdd" />
<property name="garjndiconfigdeployment.file" value="${etc.dir}/deploy-jndi-config.xml" />
<property name="gar.id" value="${package}" />
<reference refid="${garjars.id}" />
<reference refid="${garschema.id}" />
<reference refid="${garetc.id}" />
@ -364,7 +439,7 @@ garname: Unique name of the GAR file to be generated. Defaults to $name.
<!-- javadoc tasks -->
<target name="doc">
<javadoc access="public" author="true" sourcepath="${service.dir}" packagenames="${package}.${impl.dir.name}.*"
<javadoc access="public" author="true" sourcepath="${service.dir}" packagenames="${package}.*"
destdir="doc/api" nodeprecated="false" nodeprecatedlist="false"
noindex="false" nonavbar="false" notree="false"
source="1.5"
@ -405,7 +480,6 @@ garname: Unique name of the GAR file to be generated. Defaults to $name.
<!-- cleanup tasks -->
<target name="cleanService" depends="clean">
<delete dir="${service.dir}/tmp" />
<delete dir="${build.dir}" />
<delete file="${garfile}" />
</target>