| <?xml version="1.0" encoding="ISO-8859-1"?> |
| <!DOCTYPE project [ |
| <!-- |
| |
| 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 |
| |
| --> |
| |
| <!ENTITY commonBuild SYSTEM "./../../config/common.xml"> |
| ]> |
| |
| <project name="servletonlyApp" default="usage" basedir="."> |
| |
| &commonBuild; |
| |
| <property name="contextRoot" value="war"/> |
| <property name="altContextRoot" value="altwar"/> |
| <property name="testName" value="servletonly"/> |
| <property name="initial.changeable.value" value="first"/> |
| <property name="second.changeable.value" value="second"/> |
| |
| <target name="prepare" depends="init"> |
| <property name="portable.war" value="${build}/${testName}-portable.war"/> |
| <property name="all.war" value="${build}/${testName}.war"/> |
| <property name="deployplan.jar" value="${build}/${testName}-deployplan.jar"/> |
| <mkdir dir="${build}"/> |
| </target> |
| |
| <target name="compile" depends="prepare"> |
| <javac srcdir="." |
| destdir="${build}" |
| debug="on" |
| failonerror="true"> |
| <classpath refid="gfv3.classpath" /> |
| </javac> |
| </target> |
| |
| <target name="generate-changeable-class" depends="prepare"> |
| <echo file="${basedir}/ChangeableClass.java"> |
| package servletonly; |
| public class ChangeableClass { |
| public static String changeableValue() { |
| return "${expectedChangeableValue}"; |
| } |
| } |
| </echo> |
| </target> |
| |
| <target name="assemble" depends="compile"> |
| <war destfile="${portable.war}" webxml="web.xml"> |
| <classes dir="${build}"/> |
| </war> |
| <jar destfile="${deployplan.jar}"> |
| <fileset dir="${basedir}" includes="glassfish-web.xml,sun-web.xml"/> |
| </jar> |
| |
| <!-- |
| The manifest in the next task specifies a Main-Class. It is not used except |
| to make sure the app client sniffer does not claim the web |
| module simply because it has a Main-Class setting. |
| --> |
| <war destfile="${all.war}" webxml="web.xml" manifest="META-INF/MANIFEST.MF"> |
| <webinf dir="." includes="glassfish-web.xml, sun-web.xml"/> |
| <classes dir="${build}" excludes="**-portable.war, **-deployplan.jar"/> |
| </war> |
| <copy file="alt-glassfish-web.xml" tofile="${build}/archive/alt-glassfish-web.xml"/> |
| </target> |
| |
| <target name="deploy.asadmin" depends="prepare"> |
| <antcall target="common.deploy.asadmin"> |
| <param name="arg.list" value="${all.war}"/> |
| <param name="testName" value="${testName}"/> |
| </antcall> |
| </target> |
| |
| <target name="deploy.asadmin.altdd" depends="prepare"> |
| <antcall target="common.deploy.asadmin"> |
| <param name="arg.list" value="--runtimealtdd ${build}/archive/alt-glassfish-web.xml ${all.war}"/> |
| <param name="testName" value="${testName}"/> |
| </antcall> |
| </target> |
| |
| <target name="redeploy.asadmin" depends="prepare"> |
| <antcall target="common.redeploy.asadmin"> |
| <param name="arg.list" value="${all.war}"/> |
| <param name="testName" value="${testName}"/> |
| </antcall> |
| </target> |
| |
| <target name="v3.redeploy.asadmin" depends="prepare"> |
| <antcall target="common.v3.redeploy.asadmin"> |
| <param name="arg.list" |
| value="--name ${testName} ${all.war}"/> |
| </antcall> |
| </target> |
| |
| <target name="undeploy.asadmin"> |
| <antcall target="common.undeploy.asadmin"> |
| <param name="arg.list" value="${testName}"/> |
| <param name="testName" value="${testName}"/> |
| </antcall> |
| </target> |
| |
| <target name="enable.asadmin"> |
| <antcall target="common.enable.asadmin"> |
| <param name="arg.list" |
| value="${testName}"/> |
| </antcall> |
| </target> |
| |
| <target name="disable.asadmin"> |
| <antcall target="common.disable.asadmin"> |
| <param name="arg.list" |
| value="${testName}"/> |
| </antcall> |
| </target> |
| |
| <target name="deploy.jsr88" depends="prepare"> |
| <antcall target="common.deploy.jsr88"> |
| <param name="arg.list" value="${portable.war} ${deployplan.jar}"/> |
| </antcall> |
| </target> |
| |
| <target name="redeploy.jsr88" depends="prepare"> |
| <antcall target="common.run.jsr88"> |
| <param name="command" value="redeploy"/> |
| <param name="arg.list" value="servletonly-portable ${portable.war} ${deployplan.jar}"/> |
| </antcall> |
| </target> |
| |
| <target name="undeploy.jsr88"> |
| <antcall target="common.undeploy.jsr88"> |
| <param name="arg.list" value="servletonly-portable"/> |
| </antcall> |
| </target> |
| |
| <target name="start.jsr88"> |
| <antcall target="common.run.jsr88"> |
| <param name="command" value="start"/> |
| <param name="arg.list" value="servletonly-portable"/> |
| </antcall> |
| </target> |
| |
| <target name="stop.jsr88"> |
| <antcall target="common.run.jsr88"> |
| <param name="command" value="stop"/> |
| <param name="arg.list" value="servletonly-portable"/> |
| </antcall> |
| </target> |
| |
| <target name="run" depends="run.positive"/> |
| |
| <target name="run.positive" depends="setHttpPort"> |
| <property name="extra.args" value=""/> |
| <antcall target="common.run.positive"> |
| <param name="link" value="${contextRoot}/${testName}"/> |
| <param name="log.id" value="${log.id}"/> |
| <param name="extra.args" value="${extra.args}"/> |
| </antcall> |
| </target> |
| |
| <target name="run.positive.altdd" depends="setHttpPort"> |
| <property name="extra.args" value=""/> |
| <antcall target="common.run.positive"> |
| <param name="link" value="${altContextRoot}/${testName}"/> |
| <param name="log.id" value="${log.id}"/> |
| <param name="extra.args" value="${extra.args}"/> |
| </antcall> |
| </target> |
| |
| <target name="run.negative" depends="setHttpPort"> |
| <property name="extra.args" value=""/> |
| <antcall target="common.run.negative"> |
| <param name="link" value="${contextRoot}/${testName}"/> |
| <param name="log.id" value="${log.id}"/> |
| <param name="extra.args" value="${extra.args}"/> |
| </antcall> |
| </target> |
| |
| |
| <target name="runclient" depends="init"> |
| <property name="extra.args" value=""/> |
| <echo message="TestClient ${arg.list}"/> |
| <javaWithResult |
| fork="true" |
| failonerror="false" |
| jvm="${JAVA}" |
| classname="servletonly.client.TestClient" |
| output="${build}/${log.id}.output.log" |
| resultproperty="result"> |
| <jvmarg value="-Dorg.omg.CORBA.ORBInitialHost=${http.host}"/> |
| <jvmarg value="-Dorg.omg.CORBA.ORBInitialPort=${orb.port}"/> |
| |
| <classpath> |
| <path location="${inst}/lib/j2ee.jar"/> |
| <path location="${build}"/> |
| </classpath> |
| |
| <arg line="${arg.list}"/> |
| </javaWithResult> |
| |
| <antcall target="processResult"> |
| <param name="result" value="${result}"/> |
| <param name="log" value="${build}/${log.id}.output.log"/> |
| </antcall> |
| </target> |
| |
| <target name="private-all"> |
| <antcall target="generate-changeable-class"> |
| <param name="expectedChangeableValue" value="${initial.changeable.value}"/> |
| </antcall> |
| <antcall target="assemble"/> |
| <antcall target="deploy.asadmin"/> |
| <antcall target="run.positive"> |
| <param name="log.id" value="1.1"/> |
| <param name="desc" value="war/servletonly Test asadmin deploy"/> |
| <param name="extra.args" value="${initial.changeable.value}"/> |
| </antcall> |
| |
| <antcall target="test-reload"/> |
| |
| <antcall target="redeploy.asadmin"/> |
| <antcall target="run.positive"> |
| <param name="log.id" value="2"/> |
| <param name="desc" value="war/servletonly Test asadmin redeploy"/> |
| </antcall> |
| |
| <antcall target="v3.redeploy.asadmin"/> |
| <antcall target="run.positive"> |
| <param name="log.id" value="3"/> |
| <param name="desc" value="war/servletonly Test v3 asadmin redeploy"/> |
| </antcall> |
| |
| <antcall target="disable.asadmin"/> |
| <antcall target="run.negative"> |
| <param name="log.id" value="4"/> |
| <param name="desc" value="war/servletonly Test asadmin disable"/> |
| </antcall> |
| |
| <antcall target="enable.asadmin"/> |
| <antcall target="run.positive"> |
| <param name="log.id" value="5"/> |
| <param name="desc" value="war/servletonly Test asadmin enable"/> |
| </antcall> |
| |
| <antcall target="common.dotted.disable.ref.asadmin"> |
| <param name="testName" value="${testName}"/> |
| </antcall> |
| <antcall target="run.negative"> |
| <param name="log.id" value="6"/> |
| <param name="desc" value="war/servletonly Test asadmin dotted disable ref"/> |
| </antcall> |
| <antcall target="common.dotted.enable.ref.asadmin"> |
| <param name="testName" value="${testName}"/> |
| </antcall> |
| <antcall target="run.positive"> |
| <param name="log.id" value="7"/> |
| <param name="desc" value="war/servletonly Test asadmin dotted enableref "/> |
| </antcall> |
| <antcall target="common.dotted.disable.application.asadmin"> |
| <param name="testName" value="${testName}"/> |
| </antcall> |
| <antcall target="run.negative"> |
| <param name="log.id" value="8"/> |
| <param name="desc" value="war/servletonly Test asadmin dotted disable application"/> |
| </antcall> |
| <antcall target="common.dotted.enable.application.asadmin"> |
| <param name="testName" value="${testName}"/> |
| </antcall> |
| <antcall target="run.positive"> |
| <param name="log.id" value="9"/> |
| <param name="desc" value="war/servletonly Test asadmin dotted enable application"/> |
| </antcall> |
| <antcall target="common.dotted.disable.application.asadmin"> |
| <param name="testName" value="${testName}"/> |
| </antcall> |
| <antcall target="common.dotted.disable.ref.asadmin"> |
| <param name="testName" value="${testName}"/> |
| </antcall> |
| <antcall target="run.negative"> |
| <param name="log.id" value="10"/> |
| <param name="desc" value="war/servletonly Test asadmin dotted disable ref and application"/> |
| </antcall> |
| <antcall target="common.dotted.enable.application.asadmin"> |
| <param name="testName" value="${testName}"/> |
| </antcall> |
| <antcall target="run.negative"> |
| <param name="log.id" value="11"/> |
| <param name="desc" value="war/servletonly Test asadmin dotted disable ref and enable application"/> |
| </antcall> |
| <antcall target="common.dotted.disable.application.asadmin"> |
| <param name="testName" value="${testName}"/> |
| </antcall> |
| <antcall target="common.dotted.enable.ref.asadmin"> |
| <param name="testName" value="${testName}"/> |
| </antcall> |
| <antcall target="run.negative"> |
| <param name="log.id" value="12"/> |
| <param name="desc" value="war/servletonly Test asadmin dotted disable application and enable ref"/> |
| </antcall> |
| <antcall target="common.dotted.enable.application.asadmin"> |
| <param name="testName" value="${testName}"/> |
| </antcall> |
| <antcall target="run.positive"> |
| <param name="log.id" value="13"/> |
| <param name="desc" value="war/servletonly Test asadmin dotted enable application and enable ref"/> |
| </antcall> |
| <antcall target="undeploy.asadmin"/> |
| |
| <antcall target="deploy.asadmin.altdd"/> |
| <antcall target="run.positive.altdd"> |
| <param name="log.id" value="14"/> |
| <param name="desc" value="war/servletonly Test asadmin deploy with runtime altdd"/> |
| </antcall> |
| <antcall target="undeploy.asadmin"/> |
| |
| <antcall target="deploy.jsr88"/> |
| <antcall target="run.positive"> |
| <param name="log.id" value="15"/> |
| <param name="desc" value="war/servletonly Test jsr88 deploy"/> |
| </antcall> |
| |
| <antcall target="stop.jsr88"/> |
| <antcall target="run.negative"> |
| <param name="log.id" value="16"/> |
| <param name="desc" value="war/servletonly Test jsr88 stopped state"/> |
| </antcall> |
| <antcall target="start.jsr88"/> |
| <antcall target="run.positive"> |
| <param name="log.id" value="17"/> |
| <param name="desc" value="war/servletonly Test jsr88 started state"/> |
| </antcall> |
| |
| <antcall target="stop.jsr88"/> |
| <antcall target="redeploy.jsr88"/> |
| <antcall target="run.negative"> |
| <param name="log.id" value="18"/> |
| <param name="desc" value="war/servletonly Test jsr88 redeploy stop"/> |
| </antcall> |
| |
| <antcall target="start.jsr88"/> |
| <antcall target="redeploy.jsr88"/> |
| <antcall target="run.positive"> |
| <param name="log.id" value="19"/> |
| <param name="desc" value="war/servletonly Test jsr88 redeploy start"/> |
| </antcall> |
| |
| <antcall target="undeploy.jsr88"/> |
| </target> |
| |
| <target name="test-reload" depends="test-reload-PE"/> |
| |
| <!-- test .reload feature --> |
| |
| <target name="test-reload-PE" if="PE"> |
| <antcall target="generate-changeable-class"> |
| <param name="expectedChangeableValue" value="${second.changeable.value}"/> |
| </antcall> |
| |
| <antcall target="compile"/> |
| |
| <copy file="${build}/servletonly/ChangeableClass.class" |
| overwrite="true" |
| todir="${s1as.home}/domains/domain1/applications/${testName}/WEB-INF/classes/servletonly"/> |
| |
| <!-- Make sure the .reload file will have a later timestamp. --> |
| <sleep seconds="2"/> |
| |
| <touch file="${s1as.home}/domains/domain1/applications/${testName}/.reload"/> |
| |
| <!-- Give the server time to see the .reload file and to redeploy the app. --> |
| <sleep seconds="5"/> |
| |
| <antcall target="run.positive"> |
| <param name="log.id" value="1.2"/> |
| <param name="desc" value="war/servletonly Test .reload"/> |
| <param name="extra.args" value="${second.changeable.value}"/> |
| </antcall> |
| |
| </target> |
| |
| <target name="clobber" depends="clean"> |
| <delete file="${portable.war}"/> |
| <delete file="${all.war}"/> |
| <delete file="${deployplan.war}"/> |
| <delete dir="${build}"/> |
| </target> |
| |
| <target name="usage"> |
| <antcall target="all"/> |
| </target> |
| </project> |