Weblogic 8 Application Server Module

Public Targets

TargetDescription
deploydeploys archive to weblogic
undeployremoves archive from weblogic deploy folder
fdeploycopy deployment folder to weblogic
fundeployremoves deployment folder from weblogic
jspcgenerate/compile JSP support files for weblogic
appcgenerate/compile JSP/EJB support files for weblogic
startstart weblogic server
stopstop weblogic server
wlcpweblogic.classpath
wl.jspccompile and delete JSPs
connectconnect to weblogic
shutdownforceshutdown weblogic

Source: appserver-weblogic8.xml

				<?xml version="1.0" encoding="UTF-8"?>
<project name="appserver">
	<description>
  + ==\_/============J=A=V=A=G=E=N===A=N=T===M=O=D=U=L=E=S================= +
  +  \(_)/                                                                  +
  +  -(_)-           Weblogic 8 Application Server Module                   +
  +  /(_)\                                                                  +
  + ======================================================================= +
  +    Copyright (c) 2002-2005 Outsource Cafe, Inc.  All rights reserved.   +
  + ======================================================================= +
  +
  + WORK IN PROGRESS...
  +
  + NOTES:
  +  using commEnv:
  +    Issue:  pulls in bundled Ant 1.5 and breaks build, apperently bea has not heard of ANT_HOME @$#%!
  +  not using commEnv:
  +    Issue: most WL Ant tasks crash when using taskdef
  +    example:  [wlserver] java.lang.NoClassDefFoundError: weblogic.Server
  +    no 'classpath' setting on WL Ant tasks?
  +    need newer service packs?
  + Tried just setting classpath in env 
set CLASSPATH=%CLASSPATH%;C:\bea\weblogic81\server\lib\ojdbc14.jar;C:\bea\weblogic81\server\lib\weblogic.jar;C:\bea\weblogic81\common\eval\pointbase\lib\pbclient44.jar;C:\bea\weblogic81\common\eval\pointbase\lib\pbserver44.jar
  + resulting in more crap (probably pulling in old version of Ant again):
java.lang.InstantiationException: org.apache.tools.ant.Main
        at java.lang.Class.newInstance0(Class.java:293)
        at java.lang.Class.newInstance(Class.java:261)
        at org.apache.tools.ant.launch.Launcher.run(Launcher.java:195)
        at org.apache.tools.ant.launch.Launcher.main(Launcher.java:55)
  +
  +
  +
  + Public targets: 
  +    deploy         - deploys distribution file to application server
  +    undeploy       - removes distribution file from application server
  +    fdeploy        - folder deploy expands distribution files on server
  +    fundeploy      - folder undeploy removes expaned directory from server
  +    start          - starts application server
  +    stop           - stops application server
  +    jspc           - server-specific JSP compiler
  +
  + Properties:
  +   ${dist.name}    - the distribution file name, should be predefined.
  +   ${dist.dir}     - the loaction of jar/war files, should be predefined.
  +
  + developer: RichardEasterling@OutsourceCafe.com
  + ======================================================================= +
  + Licensed under the Apache License, Version 2.0 (the "License");
  + you may not use this file except in compliance with the License.
  + You may obtain a copy of the License at
  +
  +   http://www.apache.org/licenses/LICENSE-2.0
  +
  + Unless required by applicable law or agreed to in writing, software
  + distributed under the License is distributed on an "AS IS" BASIS,
  + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  + See the License for the specific language governing permissions and
  + limitations under the License.
  + =J=A=M===========================================J=A=V=A=G=E=N=.=C=O=M= +
   </description>
	<property name="APPSERVER.PRESENT" value="true"></property>
	<property name="WEBLOGIC8.PRESENT" value="true"></property>
	<!-- =================================================================== -->
	<!-- public targets: -->
	<!-- =================================================================== -->
	<target name="deploy" depends="wl.deploy" description="deploys archive to weblogic"></target>
	<target name="undeploy" depends="wl.undeploy" description="removes archive from weblogic deploy folder"></target>
	<target name="fdeploy" depends="wl.fdeploy" description="copy deployment folder to weblogic"></target>
	<target name="fundeploy" depends="wl.fundeploy" description="removes deployment folder from weblogic"></target>
	<target name="jspc" depends="wl.jspc" description="generate/compile JSP support files for weblogic"></target>
	<target name="appc" depends="wl.appc" description="generate/compile JSP/EJB support files for weblogic"></target>
	<target name="start" depends="started, wl.start" description="start weblogic server"></target>
	<target name="stop" depends="stopped, wl.stop" description="stop weblogic server"></target>
	<!-- ==================================================================== -->
	<!-- Weblogic-specific properties: -->
	<!-- ==================================================================== -->
	<property name="bea.home" location="${env.BEA_HOME}"></property>
	<available type="dir" file="${bea.home}" property="BEA_HOME.not.set"></available>
	<echo>BEA_HOME::: ${bea.home}</echo>
	<fail unless="BEA_HOME.not.set" message="BEA_HOME not set"></fail>
	<condition property="weblogic.home" value="${env.WL_HOME}">
		<isset property="env.WL_HOME"></isset>
	</condition>
	<property name="weblogic.home" location="${env.BEA_HOME}/weblogic81"></property>
	<property name="weblogic.version" value="8.1"></property>
	<property name="weblogic.lib" location="${weblogic.home}/server/lib"></property>
	<property name="weblogic.username" value=""></property>
	<property name="weblogic.password" value=""></property>
	<property name="weblogic.domain" value="examples"></property>
	<property name="weblogic.domain.dir" location="${bea.home}/user_projects/domains/examples"></property>
	<property name="weblogic.config.dir" location="${weblogic.domain.dir}"></property>
	<property name="weblogic.config.name" value="config.xml"></property>
	<!-- database settings -->
	<!-- valid database settings: DB2, Informix, Oracle, SQLServer, SQLServer2000, Sybase, POINTBASE -->
	<property name="weblogic.database.type" value="POINTBASE"></property>
	<property name="weblogic.datasource.name" value="examples-dataSource-demoPool"></property>
	<condition property="POINTBASE.IN.USE">
		<equals arg1="${weblogic.database.type}" arg2="POINTBASE"></equals>
	</condition>
	<!-- global app server settings -->
	<property name="appserver.name" value="Weblogic"></property>
	<property name="appserver.version" value="${weblogic.version}"></property>
	<property name="appserver.deploy.dir" location="${weblogic.config.dir}/applications"></property>
	<property name="appserver.http.port" value="7001"></property>
	<property name="appserver.host" value="localhost"></property>
	<!-- adjust delays (in seconds) according to deployment speed: -->
	<property name="appserver.start.delay" value="45"></property>
	<property name="appserver.deploy.delay" value="15"></property>
	<property name="appserver.post.stop.delay" value="4"></property>
	<property name="appserver.log.folder" value="log/"></property>
	<!-- ==================================================================== -->
	<!-- Resin client properties: -->
	<!-- ==================================================================== -->
	<!--
	<jndi-factory>com.caucho.ejb.BurlapContextFactory</jndi-factory>
   <init-param java.naming.provider.url="http://localhost:8080/cmp/example"/>
	<property name="appserver.java.naming.provider.url" value="jnp://localhost:1099"/>
	<property name="appserver.java.naming.factory.initial" value="com.caucho.burlap.BurlapContextFactory"/>
	<property name="appserver.java.naming.factory.initial" value="com.caucho.naming.InitialContextFactoryImpl"/>
	<property name="appserver.java.naming.factory.initial" value="weblogic.corba.j2ee.naming.url.iiop.iiopURLContextFactory"/>

		<pathelement path="${build.classes.dir}"/>
	-->
	<property name="appserver.java.naming.factory.initial" value="weblogic.jndi.WLInitialContextFactory"></property>
	<property name="appserver.java.naming.provider.url" value="http://localhost:7001/cmp"></property>
	<property name="appserver.java.naming.factory.url.pkgs" value="weblogic.corba.j2ee.naming.url:weblogic.corba.client.naming"></property>
	<path id="weblogic.classpath">
		<pathelement path="${java.class.path}"></pathelement>
		<path refid="dependencies.classpath"></path>
		<fileset dir="${weblogic.lib}">
			<include name="weblogic_sp.jar"></include>
			<include name="weblogic.jar"></include>
			<include name="ojdbc14.jar"></include>
		</fileset>
		<fileset dir="${weblogic.home}">
			<include name="common/eval/pointbase/lib/pbserver*.jar" if="POINTBASE.IN.USE"></include>
			<include name="common/eval/pointbase/lib/pbclient*.jar" if="POINTBASE.IN.USE"></include>
		</fileset>
	</path>
	<path id="appserver.client.classpath">
		<fileset dir="${weblogic.lib}">
			<include name="wlclient.jar"></include>
			<!--
			<include name="wljmsclient.jar"/> JMS 
			<include name="wsclient81.jar"/> webservices
			-->
		</fileset>
	</path>
	<!--=====================================================================-->
	<!--list build classpath-->
	<!--=====================================================================-->
	<target name="wlcp" description="weblogic.classpath">
		<pathconvert pathsep="${CR}" refid="weblogic.classpath" property="weblogic.classpath.list"></pathconvert>
		<echo message="+ weblogic.classpath======================================== +"></echo>
		<echo message="${weblogic.classpath.list}"></echo>
	</target>
	<!-- ===================================================================== -->
	<!-- taskdefs -->
	<!-- ===================================================================== -->
	<taskdef name="wlserver" classname="weblogic.ant.taskdefs.management.WLServer" classpathref="weblogic.classpath"></taskdef>
	<taskdef name="wlconfig" classname="weblogic.ant.taskdefs.management.WLConfig" classpathref="weblogic.classpath"></taskdef>
	<taskdef name="wldeploy" classname="weblogic.ant.taskdefs.management.WLDeploy" classpathref="weblogic.classpath"></taskdef>
	<taskdef name="wlappc" classname="weblogic.ant.taskdefs.j2ee.Appc" classpathref="weblogic.classpath"></taskdef>
	<!--
	<taskdef resource="weblogic.tasks" classpathref="weblogic.classpath"/>
	-->
	<!-- ==================================================================== -->
	<!-- should be depricated: Weblogicsetup checks: -->
	<!-- ==================================================================== -->
	<target name="check.appserver">
		<echo>  NOT IMPLEMENTED...</echo>
	</target>
	<!-- =================================================================== -->
	<!-- is this already done by appc? verify ejb jar files using weblogic verifier -->
	<!-- =================================================================== -->
	<target name="verify" depends="">
		<echo>  NOT IMPLEMENTED...</echo>
	</target>
	<!-- =================================================================== -->
	<!-- deploy ejb jar to server                                        -->
	<!-- =================================================================== -->
	<target name="wl.appc">
		<echo>appc ${dist.dir}/${test.dist.name}</echo>
		<java classname="weblogic.appc" fork="yes" classpathref="weblogic.classpath" failonerror="true">
			<!-- weblogic.Server sysproperties: http://e-docs.bea.com/wls/docs81/admin_ref/weblogicServer.html 
			<arg value="-classpath ${weblogic.classpath}"/>
			-->
			<arg value="${dist.dir}/${test.dist.name}"></arg>
		</java>
		<!--
		<wlappc debug="${debug}" source="${dist.dir}/${dist.name}"/>
		-->
	</target>
	<target name="wl.deploy">
		<copy todir="${appserver.deploy.dir}">
			<fileset dir="${dist.dir}" includes="${dist.name}"></fileset>
		</copy>
		<!--
		<wldeploy action="deploy" source="${dist.dir}/${dist.name}" name="ejbapp" user="${weblogic.username}" password="${weblogic.password}" verbose="true" adminurl="t3://${appserver.host}:${appserver.http.port}" debug="true" targets="examples"/>
		-->
	</target>
	<!-- =================================================================== -->
	<!-- remove ejb jar from server                                        -->
	<!-- =================================================================== -->
	<target name="wl.undeploy">
		<delete file="${appserver.deploy.dir}/${dist.name}"></delete>
	</target>
	<!-- =================================================================== -->
	<!-- deploy expanded distribution file -->
	<!-- =================================================================== -->
	<target name="wl.fdeploy">
		<echo>  NOT IMPLEMENTED...</echo>
	</target>
	<!-- =================================================================== -->
	<!-- undeploy expanded distribution file -->
	<!-- =================================================================== -->
	<target name="wl.fundeploy">
		<echo>  NOT IMPLEMENTED...</echo>
	</target>
	<!-- =================================================================== -->
	<!-- override - delete jspc java and class files                         -->
	<!-- =================================================================== -->
	<target name="wl.jspc" depends="" description="compile and delete JSPs">
		<echo>  NOT IMPLEMENTED...</echo>
	</target>
	<!-- =================================================================== -->
	<!-- connect to weblogic, not sure what help this is? -->
	<!-- =================================================================== -->
	<target name="connect" description="connect to weblogic">
		<wlserver host="${appserver.host}" port="${appserver.http.port}" username="${weblogic.username}" password="${weblogic.password}" action="connect"></wlserver>
	</target>
	<!-- =================================================================== -->
	<!-- server started check, sets server.started if already running -->
	<!-- =================================================================== -->
	<target name="started">
		<condition property="server.started">
			<and>
				<socket port="${appserver.http.port}" server="${appserver.host}"></socket>
			</and>
		</condition>
		<echo>server.started = ${server.started}</echo>
	</target>
	<!-- =================================================================== -->
	<!-- start weblogic -->
	<!-- =================================================================== -->
	<target name="wl.start" unless="server.started">
		<java classname="weblogic.Server" fork="yes" classpathref="weblogic.classpath" failonerror="true">
			<sysproperty key="weblogic.Domain" value="${weblogic.domain}"></sysproperty>
			<sysproperty key="weblogic.RootDirectory" value="${weblogic.config.dir}"></sysproperty>
			<sysproperty key="weblogic.ConfigFile" value="${weblogic.config.name}"></sysproperty>
			<sysproperty key="weblogic.ListenAddress" value="${appserver.host}"></sysproperty>
			<sysproperty key="weblogic.ListenPort" value="${appserver.http.port}"></sysproperty>
			<arg line="-ms200m -mx200m"></arg>
		</java>
		<echo>sleeping ${appserver.post.stop.delay}s...</echo>
		<sleep seconds="${appserver.post.stop.delay}"></sleep>
		<!-- todo: set rest of weblogic.Server sysproperties: http://e-docs.bea.com/wls/docs81/admin_ref/weblogicServer.html -->
		<!--
		<wlserver beahome="${bea.home}" weblogichome="${weblogic.home}" dir="${bea.home}/user_projects/domains/examples" host="${appserver.host}" port="${appserver.http.port}" username="${weblogic.username}" password="${weblogic.password}" action="start"/>
		-->
	</target>
	<!-- =================================================================== -->
	<!-- server pre-stop check, sets can.end if server is running -->
	<!-- =================================================================== -->
	<target name="stopped">
		<condition property="can.end">
			<and>
				<socket port="${appserver.http.port}" server="${appserver.host}"></socket>
				<not>
					<isset property="server.started"></isset>
				</not>
			</and>
		</condition>
		<echo>can.end = ${can.end}</echo>
	</target>
	<!-- =================================================================== -->
	<!-- stop weblogic -->
	<!-- =================================================================== -->
	<target name="shutdown" depends="started" if="server.started" description="forceshutdown weblogic">
		<wlserver host="${appserver.host}" port="${appserver.http.port}" username="${weblogic.username}" password="${weblogic.password}" action="shutdown"></wlserver>
	</target>
	<target name="wl.stop" if="can.end">
		<!--
		<java classname="org.weblogic.Shutdown" fork="yes">
			<arg line="-s localhost"/>
			<classpath>
				<pathelement location="${weblogic.dist}/bin/shutdown.jar"/>
				<pathelement location="${tools.jar}"/>
			</classpath>
		</java>
		-->
		<echo>sleeping ${appserver.post.stop.delay}s...</echo>
		<sleep seconds="${appserver.post.stop.delay}"></sleep>
	</target>
</project>