blob: 6569c97d69172740cc831012a022f23ad081f6c2 [file] [log] [blame]
<?xml version="1.0"?>
<!--
Copyright (c) 2017, 2018 Oracle and/or its affiliates. All rights reserved.
This program and the accompanying materials are made available under the
terms of the Eclipse Public License v. 2.0, which is available at
http://www.eclipse.org/legal/epl-2.0.
This Source Code may also be made available under the following Secondary
Licenses when the conditions for such availability set forth in the
Eclipse Public License v. 2.0 are satisfied: GNU General Public License,
version 2 with the GNU Classpath Exception, which is available at
https://www.gnu.org/software/classpath/license.html.
SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
-->
<!DOCTYPE project [
<!ENTITY commonSetup SYSTEM "file:./../../../../config/properties.xml">
<!ENTITY commonBuild SYSTEM "file:./../../../../config/common.xml">
<!ENTITY jaxwsTools SYSTEM "file:./../jaxwstools.xml">
<!ENTITY testproperties SYSTEM "file:./build.properties">
]>
<project name="svchandler-3" default="all" basedir=".">
&commonSetup;
&commonBuild;
&testproperties;
&jaxwsTools;
<target name="all" depends="clean, setup, runtest, undeploy"/>
<path id="class.path">
<fileset dir="${env.S1AS_HOME}/modules">
<include name="**/*.jar"/>
</fileset>
<fileset dir="${env.APS_HOME}/lib">
<include name="**/*.jar"/>
</fileset>
</path>
<target name="clean" depends="init-common">
<antcall target="clean-common"/>
</target>
<target name="setup" depends="assemble-web, assemble-client, deploy-app, deploy-client"/>
<target name="compile" depends="init-common">
<antcall target="compile-common">
<param name="src" value="endpoint"/>
</antcall>
</target>
<target name="assemble-web" depends="init-common">
<mkdir dir="${build.classes.dir}"/>
<antcall target="wsimport">
<param name="wsimport.args"
value="-wsdllocation WEB-INF/wsdl/SubtractNumbers.wsdl -b custom-server.xml -keep -d ${build.classes.dir} ${env.APS_HOME}/devtests/webservice/annotations/svchandler-3/SubtractNumbers.wsdl"/>
</antcall>
<antcall target="compile"/>
<copy file="endpoint/myhandler.xml" todir="${build.classes.dir}/endpoint"/>
<antcall target="pkg-war">
<param name="handler.name" value="myhandler.xml"/>
<param name="wsdlfile.location" value="${env.APS_HOME}/devtests/webservice/annotations/svchandler-3"/>
<param name="wsdlfile.name" value="SubtractNumbers.wsdl"/>
<param name="war.classes" value="${build.classes.dir}"/>
<param name="war.file" value="${assemble.dir}/${appname}-web.war"/>
</antcall>
</target>
<target name="assemble-client" depends="init-common">
<mkdir dir="${build.classes.dir}/webclient/WEB-INF/classes"/>
<antcall target="wsimport">
<param name="wsimport.args"
value="-b custom-client.xml -keep -d ${build.classes.dir}/webclient/WEB-INF/classes ${env.APS_HOME}/devtests/webservice/annotations/svchandler-3/SubtractNumbers.wsdl"/>
</antcall>
<replace file="webclient/Client.java" value="${http.host}" token="HTTP_HOST"/>
<replace file="webclient/Client.java" value="${http.port}" token="HTTP_PORT"/>
<javac srcdir="." destdir="${build.classes.dir}/webclient/WEB-INF/classes"
classpathref="class.path"
includes="webclient/**"/>
<copy file="./client-web.xml" tofile="${build.classes.dir}/webclient/WEB-INF/web.xml"/>
<copy file="./client-sun-web.xml" tofile="${build.classes.dir}/webclient/WEB-INF/sun-web.xml"/>
<jar destfile="${assemble.dir}/wsclient.war" basedir="${build.classes.dir}/webclient" includes="**"/>
</target>
<target name="deploy-client" depends="init-common">
<property name="client.war" value="${assemble.dir}/wsclient.war"/>
<echo message="Deploying ${wsdl.war} from ${basedir}." level="verbose"/>
<exec executable="${ASADMIN}">
<arg line="deploy"/>
<arg line="--user ${admin.user}"/>
<arg line="--passwordfile ${admin.password.file}"/>
<arg line="--host ${admin.host}"/>
<arg line="--port ${admin.port}"/>
<arg line="${client.war}"/>
</exec>
</target>
<target name="undeploy-client" depends="init-common">
<exec executable="${ASADMIN}">
<arg line="undeploy"/>
<arg line="--user ${admin.user}"/>
<arg line="--passwordfile ${admin.password.file}"/>
<arg line="--host ${admin.host}"/>
<arg line="--port ${admin.port}"/>
<arg line="wsclient"/>
</exec>
</target>
<target name="deploy-app">
<antcall target="deploy-war-common">
<param name="contextroot" value="${appname}"/>
</antcall>
</target>
<target name="undeploy" depends="init-common">
<antcall target="undeploy-war-common"/>
<antcall target="undeploy-client"/>
</target>
<target name="runtest" depends="init-common">
<mkdir dir="${build.classes.dir}/client"/>
<javac srcdir="." destdir="${build.classes.dir}/client"
classpath="${env.APS_HOME}/lib/reporter.jar"
includes="client/**"/>
<unjar src="${env.APS_HOME}/lib/reporter.jar" dest="${build.classes.dir}/client"/>
<java classname="client.TestClient">
<classpath>
<pathelement path="${build.classes.dir}/client"/>
</classpath>
<arg value="http://${http.host}:${http.port}/wsclient/RequestProcessor"/>
</java>
<!--restore the tokens back in file-->
<replace file="webclient/Client.java" token="${http.host}" value="HTTP_HOST"/>
<replace file="webclient/Client.java" token="${http.port}" value="HTTP_PORT"/>
</target>
</project>