| <?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:./../../annotations/jaxwstools.xml"> |
| <!ENTITY jbicommon SYSTEM "file:./../jbi_commons.xml"> |
| <!ENTITY jbiproperties SYSTEM "file:./../jbi_commons.properties"> |
| <!ENTITY testproperties SYSTEM "file:./build.properties"> |
| ]> |
| |
| <project name="web-client" default="all" basedir="."> |
| |
| &commonSetup; |
| &commonBuild; |
| &testproperties; |
| &jaxwsTools; |
| &jbicommon; |
| &jbiproperties; |
| |
| <target name="all" depends="clean, setup-server, setup-client, deploy-provider-su, deploy-consumer-su, runtest, cleanup-client, cleanup-server"/> |
| |
| <target name="clean" depends="init-common"> |
| <antcall target="clean-common"/> |
| </target> |
| |
| <target name="setup-server" depends="assemble-web, deploy-app, start-consumer-jms-binding"/> |
| |
| <target name="setup-client" depends="assemble-client,deploy-client, start-provider-jms-binding"/> |
| |
| <target name="cleanup-server" depends="undeploy-app, undeploy-consumer-su,stop-consumer-jms-binding"/> |
| <target name="cleanup-client" depends="undeploy-client, undeploy-provider-su,stop-provider-jms-binding"/> |
| |
| |
| <target name="assemble-web" depends="init-common, compile"> |
| <echo message="Assembling web service module"/> |
| <antcall target="pkg-war"> |
| <param name="war.classes" value="${build.classes.dir}"/> |
| <param name="war.file" value="${assemble.dir}/${appname}-web.war"/> |
| </antcall> |
| </target> |
| |
| <target name="compile" depends="init-common"> |
| <antcall target="compile-common"> |
| <param name="src" value="provider/endpoint"/> |
| </antcall> |
| </target> |
| |
| <target name="deploy-app"> |
| <echo message="Deploying the web service"/> |
| <antcall target="deploy-war-common"> |
| <param name="contextroot" value="${appname}"/> |
| </antcall> |
| </target> |
| |
| <target name="deploy-consumer-su" depends="init-common"> |
| <echo message="Creating QueueConnectionFactory for JMS Binding acting as a web service consumer"/> |
| <antcall target="create-jms-connection-factory"> |
| <param name="jms.cf.name" value="MyQueueConnectionFactory"/> |
| </antcall> |
| <antcall target="create-jms-resource"> |
| <param name="domain.admin.port" value="${admin.port}"/> |
| <param name="jms.res.type" value="${QueueConnectionFactory}"/> |
| <param name="jms.res.name" value="MyQueueConnectionFactory"/> |
| </antcall> |
| <echo message="deploying JMS Binding's consumer deployment "/> |
| <antcall target="deploy-jbi-component-su"> |
| <param name="jbi-component-su-assembly" value="${jms-consumer-assembly}"/> |
| <param name="jbi-component-su" value="${jms-consumer-su}"/> |
| <param name="jbi-component-su-dir" value="${jms-consumer-su-dir}"/> |
| </antcall> |
| </target> |
| |
| <target name="assemble-client" depends="init-common"> |
| <echo message="Assembling web client"/> |
| <mkdir dir="${build.classes.dir}/webclient/WEB-INF/classes"/> |
| <mkdir dir="${assemble.dir}"/> |
| <echo message="wsimport -keep -d ${build.classes.dir}/webclient/WEB-INF/classes http://localhost:8080/jsr208-integration-web-client/CalculatorServicei?WSDL" /> |
| <antcall target="wsimport"> |
| <param name="wsimport.args" |
| value="-keep -d ${build.classes.dir}/webclient/WEB-INF/classes http://localhost:8080/jsr208-integration-web-client/CalculatorService?WSDL"/> |
| </antcall> |
| <javac srcdir="consumer" destdir="${build.classes.dir}/webclient/WEB-INF/classes" |
| classpath="${env.APS_HOME}/lib/reporter.jar:${env.S1AS_HOME}/lib/j2ee.jar:${env.S1AS_HOME}/lib/webservices-rt.jar:${env.S1AS_HOME}/lib/webservices-tools.jar" |
| includes="webclient/**"/> |
| <copy file="./consumer/client-web.xml" tofile="${build.classes.dir}/webclient/WEB-INF/web.xml"/> |
| <copy file="./consumer/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="assemble-client"> |
| <echo message="Deploying the client application"/> |
| <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="--port ${domain2.admin.port}"/> |
| <arg line="${client.war}"/> |
| </exec> |
| </target> |
| |
| <target name="deploy-provider-su" depends="init-common"> |
| <echo message="Creating physical destinations - queues : - provideroutgoingqueue and temporary_queue"/> |
| <antcall target="create-physical-queue"> |
| <param name="queue.name" value="provideroutgoingqueue"/> |
| </antcall> |
| <antcall target="create-physical-queue"> |
| <param name="queue.name" value="temporary_queue"/> |
| </antcall> |
| <echo message="Create QueueConnectionFactory for JMS Binding which is acting as a provider"/> |
| <antcall target="create-jms-connection-factory"> |
| <param name="jms.cf.name" value="MyQueueConnectionFactory"/> |
| </antcall> |
| <antcall target="create-jms-resource"> |
| <param name="domain.admin.port" value="${domain2.admin.port}"/> |
| <param name="jms.res.type" value="${QueueConnectionFactory}"/> |
| <param name="jms.res.name" value="MyQueueConnectionFactory"/> |
| </antcall> |
| <echo message="Create JMS resource for provideroutgoingqueue and temporary_queue"/> |
| <antcall target="create-jms-queue"> |
| <param name="jms.queue.name" value="provideroutgoingqueue"/> |
| <param name="queue.name" value="provideroutgoingqueue"/> |
| </antcall> |
| <antcall target="create-jms-queue"> |
| <param name="jms.queue.name" value="temporary_queue"/> |
| <param name="queue.name" value="temporary_queue"/> |
| </antcall> |
| <echo message="Deploy JMS Binding provider deployment"/> |
| <antcall target="deploy-jbi-component-su"> |
| <param name="jbi-component-su-assembly" value="${jms-provider-assembly}"/> |
| <param name="jbi-component-su" value="${jms-provider-su}"/> |
| <param name="jbi-component-su-dir" value="${jms-provider-su-dir}"/> |
| <param name="jmx.port" value="${domain2.jmx.port}"/> |
| </antcall> |
| </target> |
| |
| <target name="undeploy-client" depends="init-common"> |
| <echo message="Undeploying client application"/> |
| <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 ${domain2.admin.port}"/> |
| <arg line="wsclient"/> |
| </exec> |
| </target> |
| |
| <target name="undeploy-app" depends="init-common"> |
| <echo message="Undeploying web service"/> |
| <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="${appname}-web"/> |
| </exec> |
| </target> |
| |
| <target name="runtest" depends="init-common"> |
| <echo message="Running the test client"/> |
| <mkdir dir="${build.classes.dir}/client"/> |
| <javac srcdir="." destdir="${build.classes.dir}/client" |
| classpath="${env.APS_HOME}/lib/reporter.jar" |
| includes="consumer/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}:${domain2.instance.port}/wsclient/webclient/RequestProcessor"/> |
| </java> |
| </target> |
| |
| |
| <target name="undeploy-consumer-su" depends="init-common"> |
| <echo message="Undeploying JMS resource : MyQueueConnectionFactory"/> |
| <antcall target="delete-appserver-jms-resource"> |
| <param name="domain.admin.port" value="${admin.port}"/> |
| <param name="jms.res.name" value="MyQueueConnectionFactory"/> |
| </antcall> |
| <!--<antcall target="delete-jms-resource"> |
| <param name="jms.resource.name" value="MyQueueConnectionFactory"/> |
| </antcall>--> |
| <echo message="Undeploying JMS Binding consumer deployment"/> |
| <antcall target="undeploy-jbi-component-su"> |
| <param name="jbi-component-su-assembly" value="${jms-consumer-assembly}"/> |
| </antcall> |
| </target> |
| |
| <target name="undeploy-provider-su" depends="init-common"> |
| <echo message="Undeploying JMS Resource :- provideroutgoingqueue and temporary_queue"/> |
| <antcall target="delete-jms-resource"> |
| <param name="jms.resource.name" value="provideroutgoingqueue"/> |
| </antcall> |
| <antcall target="delete-jms-resource"> |
| <param name="jms.resource.name" value="temporary_queue"/> |
| </antcall> |
| <echo message="Undeploying JMS resource : MyQueueConnectionFactory"/> |
| <antcall target="delete-appserver-jms-resource"> |
| <param name="domain.admin.port" value="${domain2.admin.port}"/> |
| <param name="jms.res.name" value="MyQueueConnectionFactory"/> |
| </antcall> |
| <antcall target="delete-jms-resource"> |
| <param name="jms.resource.name" value="MyQueueConnectionFactory"/> |
| </antcall> |
| <echo message="Deleting physical queues : provideroutgoingqueue , temporary_queue"/> |
| <antcall target="delete-physical-queue"> |
| <param name="queue.name" value="provideroutgoingqueue"/> |
| </antcall> |
| <antcall target="delete-physical-queue"> |
| <param name="queue.name" value="temporary_queue"/> |
| </antcall> |
| <echo message="Undeploying JMS Binding's provider deployment"/> |
| <antcall target="undeploy-jbi-component-su"> |
| <param name="jbi-component-su-assembly" value="${jms-provider-assembly}"/> |
| <param name="jmx.port" value="${domain2.jmx.port}"/> |
| </antcall> |
| </target> |
| |
| <target name="create-domain2" depends="init-common"> |
| <property name="admin.command" value="create-domain"/> |
| <property name="operand.props" value="--adminport ${domain2.admin.port} --adminuser admin --passwordfile ${admin.password.file} --instanceport ${domain2.instance.port} --savemasterpassword=true --domainproperties domain.jmxPort=${domain2.jmx.port}:jms.port=${domain2.jms.port}:orb.listner.port=${domain2.orb.listner.port}:http.ssl.port=${domain2.http.ssl.port}:orb.mutualauth.port=${domain2.orb.mutualauth.port} ${domain.name}"/> |
| <exec executable="${ASADMIN}" failonerror="true"> |
| <arg line="${admin.command} ${operand.props}" /> |
| </exec> |
| </target> |
| |
| <target name="start-domain2" depends="init-common"> |
| <exec executable="${ASADMIN}" failonerror="true"> |
| <arg line="start-domain --user ${admin.user} ${domain.name}"/> |
| </exec> |
| </target> |
| |
| <target name="create-physical-queue" depends="init-common"> |
| <exec executable="${env.S1AS_HOME}/imq/bin/imqcmd" failonerror="false"> |
| <arg line="create dst -n ${queue.name} -t q -u admin -passfile ${broker.password.file} -b localhost:${imq.broker.port}"/> |
| </exec> |
| </target> |
| |
| <target name="create-jms-resource" depends="init-common"> |
| <exec executable="${env.S1AS_HOME}/bin/asadmin" failonerror="false"> |
| <arg line="create-jms-resource --user ${admin.user} --passwordfile ${admin.password.file} --port ${domain.admin.port} --restype ${jms.res.type} ${jms.res.name}"/> |
| </exec> |
| </target> |
| <target name="create-jms-queue" depends="init-common"> |
| <exec executable="${env.S1AS_HOME}/imq/bin/imqobjmgr" failonerror="false"> |
| <arg line="add -l "${jms.queue.name}" -t q -o "imqDestinationName=${queue.name}" -j "java.naming.factory.initial=com.sun.jndi.fscontext.RefFSContextFactory" -j "java.naming.provider.url=file:/tmp/imqobjects""/> |
| </exec> |
| </target> |
| |
| <target name="create-jms-connection-factory" depends="init-common"> |
| <exec executable="${env.S1AS_HOME}/imq/bin/imqobjmgr" failonerror="true"> |
| <arg line="add -f -l "${jms.cf.name}" -t qf -o "imqAddressList=mq://localhost:${imq.broker.port}/jms" -j "java.naming.factory.initial=com.sun.jndi.fscontext.RefFSContextFactory" -j "java.naming.provider.url=file:/tmp/imqobjects""/> |
| </exec> |
| </target> |
| |
| <target name="delete-physical-queue" depends="init-common" > |
| <exec executable="${env.S1AS_HOME}/imq/bin/imqcmd" failonerror="false"> |
| <arg line="destroy dst -f -n ${queue.name} -t q -passfile ${broker.password.file} -u admin -b localhost:${imq.broker.port}" /> |
| </exec> |
| </target> |
| |
| <target name="delete-jms-resource" depends="init-common"> |
| <exec executable="${env.S1AS_HOME}/imq/bin/imqobjmgr" failonerror="false"> |
| <arg line="delete -f -l "${jms.resource.name}" -j "java.naming.factory.initial=com.sun.jndi.fscontext.RefFSContextFactory" -j "java.naming.provider.url=file:/tmp/imqobjects""/> |
| </exec> |
| </target> |
| <target name="delete-appserver-jms-resource" depends="init-common"> |
| <exec executable="${env.S1AS_HOME}/bin/asadmin" failonerror="false"> |
| <arg line="delete-jms-resource --user ${admin.user} --passwordfile ${admin.password.file} --port ${domain.admin.port} ${jms.res.name}"/> |
| </exec> |
| </target> |
| |
| <target name="delete-domain2" depends="init-common"> |
| <exec executable="${ASADMIN}" failonerror="true"> |
| <arg line="delete-domain domain2 " /> |
| </exec> |
| </target> |
| <target name="stop-provider-jms-binding" depends="init-common"> |
| <antcall target="stop-binding"> |
| <param name="jmx.port" value="${domain2.jmx.port}"/> |
| <param name="jbi.component.name" value="SunJMSBinding"/> |
| </antcall> |
| </target> |
| <target name="start-provider-jms-binding" depends="init-common"> |
| <antcall target="start-binding"> |
| <param name="jmx.port" value="${domain2.jmx.port}"/> |
| <param name="jbi.component.name" value="SunJMSBinding"/> |
| </antcall> |
| </target> |
| <target name="stop-consumer-jms-binding" depends="init-common"> |
| <antcall target="stop-binding"> |
| <param name="jbi.component.name" value="SunJMSBinding"/> |
| </antcall> |
| </target> |
| <target name="start-consumer-jms-binding" depends="init-common"> |
| <antcall target="start-binding"> |
| <param name="jbi.component.name" value="SunJMSBinding"/> |
| </antcall> |
| </target> |
| </project> |
| |