| <?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="client-handler-1" 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} SubtractNumbers.wsdl"/> | |
| </antcall> | |
| <antcall target="compile"/> | |
| <antcall target="pkg-war"> | |
| <param name="wsdlfile.location" value="${env.APS_HOME}/devtests/webservice/annotations/client-handler-1"/> | |
| <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"/> | |
| <mkdir dir="${build.classes.dir}/webclient/WEB-INF/wsdl"/> | |
| <antcall target="wsimport"> | |
| <param name="wsimport.args" | |
| value="-b custom-client.xml -keep -d ${build.classes.dir}/webclient/WEB-INF/classes 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"/> | |
| <copy file="./SubtractNumbers.wsdl" todir="${build.classes.dir}/webclient/WEB-INF/wsdl"/> | |
| <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> | |