|
- <!--
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements. See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You 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.
- -->
- <html>
-
- <head>
- <meta http-equiv="Content-Language" content="en-us">
- <link rel="stylesheet" type="text/css" href="../stylesheets/style.css">
- <title>ServerDeploy Task</title>
-
- </head>
-
- <body>
-
- <h1 id="serverdeploy">Apache Ant ServerDeploy User Manual</h1>
- <p>by</p>
- <!-- Names are in alphabetical order, on last name -->
- <ul>
- <li>Christopher A. Longo (<a href="mailto:cal@cloud9.net">cal@cloud9.net</a>)</li>
- <li>Cyrille Morvan (<a href="mailto:cmorvan@ingenosya.com">cmorvan@ingenosya.com</a>)</li>
- </ul>
-
- <hr/>
- <p>At present the tasks support:</p>
-
- <ul>
- <li><a href="http://www.bea.com" target="_top">WebLogic</a> servers</li>
- <li><a href="https://jonas.ow2.org/" target="_top">JOnAS</a> 2.4 Open Source EJB server</li>
- </ul>
- <p>Over time we expect further optional tasks to support additional J2EE Servers.</p>
-
- <hr/>
-
- <table>
- <tr><th scope="col">Task</th><th scope="col" colspan="2">Application Servers</th></tr>
- <tr><td rowspan="4"><a href="#serverdeploy_element">serverdeploy</a></td><th scope="col" colspan="2">Nested Elements</th></tr>
- <tr><td><a href="#serverdeploy_generic">generic</a></td><td>Generic task</td></tr>
- <tr><td><a href="#serverdeploy_jonas">jonas</a></td><td>JOnAS 2.4</td></tr>
- <tr><td><a href="#serverdeploy_weblogic">weblogic</a></td><td>WebLogic</td></tr>
- </table>
-
- <h2 id="serverdeploy_element">ServerDeploy element</h2>
-
- <h3>Description</h3>
-
- <p>The <code>serverdeploy</code> task is used to run a "hot" deployment tool for vendor-specific
- J2EE server. The task requires nested elements which define the attributes of the vendor-specific
- deployment tool being executed. Vendor-specific deployment tools elements may enforce rules for
- which attributes are required, depending on the tool.</p>
-
- <h3>Parameters</h3>
- <table class="attr">
- <tr>
- <th scope="col">Attribute</th>
- <th scope="col">Description</th>
- <th scope="col">Required</th>
- </tr>
- <tr>
- <td>action</td>
- <td>This is the action to be performed. For most cases this will be <q>deploy</q>. Some tools
- support additional actions, such
- as <q>delete</q>, <q>list</q>, <q>undeploy</q>, <q>update</q>, ...</td>
- <td>Yes</td>
- </tr>
- <tr>
- <td>source</td>
- <td>A fully qualified path/filename of the component to be deployed. This may be
- an <samp>.ear</samp>, <samp>.jar</samp>, <samp>.war</samp>, or any other type that is
- supported by the server.</td>
- <td>Tool dependent</td>
- </tr>
- </table>
-
- <h3>Parameters specified as nested elements</h3>
-
- <p>The <code>serverdeploy</code> task supports a nested <code>classpath</code> element to set the
- classpath.</p>
-
- <h3>Vendor-specific nested elements</h3>
-
- <p>Also supported are nested vendor-specific elements.</p>
-
- <h3>Parameters used for all tools</h3>
- <table class="attr">
- <tr>
- <th scope="col">Attribute</th>
- <th scope="col">Description</th>
- <th scope="col">Required</th>
- </tr>
- <tr>
- <td>classpath</td>
- <td>The classpath to be passed to the JVM running the tool. The classpath may also be supplied
- as a nested element.</td>
- <td>Tool dependent</td>
- </tr>
- <tr>
- <td>server</td>
- <td>The address or URL for the server where the component will be deployed.</td>
- <td>Tool dependent</td>
- </tr>
- <tr>
- <td>username</td>
- <td>The user with privileges to deploy applications to the server.</td>
- <td>Tool dependent</td>
- </tr>
- <tr>
- <td>password</td>
- <td>The password of the user with privileges to deploy applications to the server.</td>
- <td>Tool dependent</td>
- </tr>
- </table>
-
- <h3 id="serverdeploy_generic">Generic element</h3>
- <p>This element is provided for generic Java-based deployment tools. The generic task accepts (but
- does not require) nested <code>arg</code> and <code>jvmarg</code> elements. A JVM will be spawned
- with the provided attributes. It is recommended that a vendor-specific element be used over the
- generic one if at all possible.</p>
- <p>The following attributes are supported by the generic element.</p>
- <table class="attr">
- <tr>
- <th scope="col">Attribute</th>
- <th scope="col">Description</th>
- <th scope="col">Required</th>
- </tr>
- <tr>
- <td>classname</td>
- <td>This is the fully qualified classname of the Java based deployment tool to execute.</td>
- <td>Yes</td>
- </tr>
- </table>
-
- <h4>Nested elements</h4>
- <p>The generic element supports nested <code><arg></code> and <code><jvmarg></code>
- elements.</p>
-
- <h3>Example</h3>
-
- <p>This example shows the use of generic deploy element to deploy a component using a Java based
- deploy tool:</p>
-
- <pre>
- <serverdeploy action="deploy" source="${lib.dir}/ejb_myApp.ear">
- <generic classname="com.yamato.j2ee.tools.deploy.DeployTool"
- classpath="${classpath}"
- username="${user.name}"
- password="${user.password}">
- <arg value="-component=WildStar"/>
- <arg value="-force"/>
- <jvmarg value="-ms64m"/>
- <jvmarg value="-mx128m"/>
- </generic>
- </serverdeploy></pre>
-
- <h3 id="serverdeploy_weblogic">WebLogic element</h3>
- <p>The WebLogic element contains additional attributes to run the <code>weblogic.deploy</code>
- deployment tool.</p>
- <p>Valid actions for the tool are <q>deploy</q>, <q>undeploy</q>, <q>list</q>, <q>update</q>,
- and <q>delete</q>.</p>
- <p>If the action is <q>deploy</q> or <q>update</q>, the <var>application</var> and <var>source</var>
- attributes must be set. If the action is <q>undeploy</q> or <q>delete</q>,
- the <var>application</var> attribute must be set. If the <var>username</var> attribute is omitted,
- it defaults to <q>system</q>. The <var>password</var> attribute is required for all actions.</p>
-
- <table class="attr">
- <tr>
- <th scope="col">Attribute</th>
- <th scope="col">Description</th>
- <th scope="col">Required</th>
- </tr>
- <tr>
- <td>application</td>
- <td>This is the name of the application being deployed</td>
- <td>Yes</td>
- </tr>
- <tr>
- <td>component</td>
- <td>This is the component string for deployment targets. It is in the
- form <code><component>:<target1>,<target2>...</code> Where component is the
- archive name (minus the <samp>.jar</samp>, <samp>.ear</samp>, <samp>.war</samp> extension).
- Targets are the servers where the components will be deployed</td>
- <td>No</td>
- </tr>
- <tr>
- <td>debug</td>
- <td>If set to <q>true</q>, additional information will be printed during the deployment
- process.</td>
- <td>No</td>
- </tr>
- </table>
-
- <h3>Examples</h3>
-
- <p>This example shows the use of <code>serverdeploy</code> to deploy a component to a WebLogic
- server:</p>
-
- <pre>
- <serverdeploy action="deploy" source="${lib.dir}/ejb_myApp.ear">
- <weblogic application="myapp"
- server="t3://myserver:7001"
- classpath="${weblogic.home}/lib/weblogic.jar"
- username="${user.name}"
- password="${user.password}"
- component="ejb_foobar:myserver,productionserver"
- debug="true"/>
- </serverdeploy></pre>
-
- <p>This example shows <code>serverdeploy</code> being used to delete a component from a WebLogic
- server:</p>
-
- <pre>
- <serverdeploy action="delete" source="${lib.dir}/ejb_myApp.jar"/>
- <weblogic application="myapp"
- server="t3://myserver:7001"
- classpath="${weblogic.home}/lib/weblogic.jar"
- username="${user.name}"
- password="${user.password}"/>
- </serverdeploy></pre>
-
- <h3 id="serverdeploy_jonas">JOnAS (Java Open Application Server) element</h3>
- <p>The JOnAS element contains additional attributes to run the <code>JonasAdmin</code> deployment
- tool.</p>
- <p>Valid actions for the tool are <q>deploy</q>, <q>undeploy</q>, <q>list</q> and <q>update</q>.</p>
- <p>You can't use <var>user</var> and <var>password</var> property with this task.</p>
- <table class="attr">
- <tr>
- <th scope="col">Attribute</th>
- <th scope="col">Description</th>
- <th scope="col">Required</th>
- </tr>
- <tr>
- <td>jonasroot</td>
- <td>The root directory for JOnAS.</td>
- <td>Yes</td>
- </tr>
- <tr>
- <td>orb</td>
- <td>Choose your ORB: <q>RMI</q>, <q>JEREMIE</q>, <q>DAVID</q>, ... The corresponding JOnAS JAR
- is automatically added to the classpath. If your <var>orb</var> is <q>DAVID</q> (RMI/IIOP) you
- must specify <var>davidhost</var> and <var>davidport</var> properties.</td>
- <td>No; defaults to the ORB present in classpath</td>
- </tr>
- <tr>
- <td>davidhost</td>
- <td>The value for the system property: <code>david.CosNaming.default_host</code>.</td>
- <td>No</td>
- </tr>
- <tr>
- <td>davidport</td>
- <td>The value for the system property: <code>david.CosNaming.default_port</code>.</td>
- <td>No</td>
- </tr>
- <tr>
- <td>classname</td>
- <td>This is the fully qualified classname of the Java based deployment tool to execute.</td>
- <td>No; default is <code>org.objectweb.jonas.adm.JonasAdmin</code></td>
- </tr>
- </table>
-
- <h4>Nested elements</h4>
- <p>The <code>jonas</code> element supports nested <code><arg></code>
- and <code><jvmarg></code> elements.</p>
-
- <h3>Examples</h3>
-
- <p>This example shows the use of <code>serverdeploy</code> to deploy a component to a JOnAS
- server:</p>
-
- <pre>
- <serverdeploy action="deploy" source="${lib.dir}/ejb_myApp.jar">
- <jonas server="MyJOnAS" jonasroot="${jonas.root}">
- <classpath>
- <pathelement path="${jonas.root}/lib/RMI_jonas.jar"/>
- <pathelement path="${jonas.root}/config/"/>
- </classpath>
- </jonas>
- </serverdeploy></pre>
-
- <p>This example shows <code>serverdeploy</code> being used to list the components from a JOnAS
- server and a WebLogic server:</p>
-
- <pre>
- <serverdeploy action="list"/>
- <jonas jonasroot="${jonas.root}" orb="JEREMIE"/>
- <weblogic application="myapp"
- server="t3://myserver:7001"
- classpath="${weblogic.home}/lib/weblogic.jar"
- username="${user.name}"
- password="${user.password}"/>
- </serverdeploy></pre>
-
- </body>
- </html>
|