blob: d1e994f278994c4bd3d265106a9caea1edd84ee2 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<HTML>
<HEAD>
<!-- $PAGETITLE -->
<TITLE>OpenEJB - Deploy Tool</TITLE>
<LINK href="http://openejb.apache.org/default.css" rel="stylesheet" type="text/css">
<LINK href="http://openejb.apache.org/style.css" rel="stylesheet" type="text/css">
<LINK rel="SHORTCUT ICON" href="http://openejb.apache.org/images/favicon.ico">
<SCRIPT language="JavaScript" src="http://cwiki.apache.org/confluence/pages/viewpage.action?spaceKey=OPENEJB&title=functions.js" type="text/javascript"></SCRIPT>
<META http-equiv="Content-Type" content="text/html;charset=UTF-8"></HEAD>
<BODY bgcolor="#ffffff" link="#6763a9" vlink="#6763a9" topmargin="0" bottommargin="0" leftmargin="0" marginheight="0" marginwidth="0">
<!-- Delay the loading of the external javascript file needed for labels (as it takes too long to load and visibly holds loading of the page body) -->
<!-- To do this without javascript errors over undefined functions, we need to declare stubs here (that are overrided later by the proper implementations) -->
<SCRIPT language="JavaScript" type="text/javascript">
function doAddLabel(hideTextfieldAfterAddParam)
{
// stub
}
function onAddLabel()
{
// stub
}
function showLabelsInput()
{
// stub
}
</SCRIPT>
<A name="top"></A>
<TABLE border="0" cellpadding="0" cellspacing="0" width="100%" height="400">
<TR>
<TD width="20" valign="top" align="left" bgcolor="#7270c2"><IMG src="http://openejb.apache.org/images/dotTrans.gif" width="1" height="1" border="0"></TD>
<TD width="95" valign="top" align="left" bgcolor="#7270c2"><IMG src="http://openejb.apache.org/images/dotTrans.gif" width="1" height="1" border="0"></TD>
<TD width="7" valign="top" align="left"><IMG src="http://openejb.apache.org/images/dotTrans.gif" border="0" width="1" height="1"></TD>
<TD width="40" valign="top" align="left"><IMG src="http://openejb.apache.org/images/dotTrans.gif" width="40" height="6" border="0"></TD>
<TD width="100%" valign="top" align="left" bgcolor="#5A5CB8"><IMG src="http://openejb.apache.org/images/top_2.gif" width="430" height="6" border="0"></TD>
<TD width="120" valign="top" align="left" bgcolor="#E24717"><IMG src="http://openejb.apache.org/images/top_3.gif" width="120" height="6" border="0"></TD>
</TR>
<TR>
<TD width="20" bgcolor="#7270c2" valign="top" align="left"><IMG src="http://openejb.apache.org/images/dotTrans.gif" border="0" width="1" height="1"></TD>
<TD width="95" bgcolor="#7270c2" valign="top" align="left"><IMG src="http://openejb.apache.org/images/dotTrans.gif" border="0" width="1" height="1"></TD>
<TD width="7" bgcolor="#ffffff" valign="top" align="left"></TD>
<TD width="40" valign="top" align="left"><IMG src="http://openejb.apache.org/images/dotTrans.gif" width="1" height="1" border="0"></TD>
<TD id="breadcrumbs" width="100%" valign="middle" align="left">
<!-- $TOP_NAV_BAR -->
<SPAN id="Content">
<A href="index.html" title="Index">Index</A> | <A href="news.html" title="News">News</A> | <A href="faq.html" title="FAQ">FAQ</A> | <A href="download.html" title="Download">Download</A> | <A href="mailing-lists.html" title="Mailing Lists">Lists</A> | <SPAN class="nobr"><A href="http://issues.apache.org/jira/browse/OPENEJB" title="Visit page outside Confluence" rel="nofollow">Issues<SUP><IMG class="rendericon" src="http://cwiki.apache.org/confluence/images/icons/linkext7.gif" height="7" width="7" align="absmiddle" alt="" border="0"></SUP></A></SPAN>
</SPAN>
<IMG src="http://openejb.apache.org/images/dotTrans.gif" width="1" height="2" border="0"></TD>
<TD width="120" height="20" valign="top" align="left">&nbsp;</TD>
</TR>
<TR>
<TD width="20" bgcolor="#7270c2" valign="top" align="left"><IMG src="http://openejb.apache.org/images/dotTrans.gif" width="20" height="3" border="0"></TD>
<TD width="95" bgcolor="#7270c2" valign="top" align="left"><IMG src="http://openejb.apache.org/images/line_sm.gif" width="105" height="3" border="0"></TD>
<TD width="7" bgcolor="#a9a5de" valign="top" align="left"><IMG src="http://openejb.apache.org/images/line_sm.gif" width="7" height="3" border="0"></TD>
<TD width="40" valign="top" align="left"><IMG src="http://openejb.apache.org/images/line_light.gif" width="40" height="3" border="0"></TD>
<TD width="100%" valign="top" align="left"><IMG src="http://openejb.apache.org/images/line_light.gif" width="430" height="3" border="0"></TD>
<TD width="120" valign="top" align="left"><IMG src="http://openejb.apache.org/images/dotTrans.gif" border="0" width="1" height="1"></TD>
</TR>
<TR>
<TD bgcolor="#7270c2" valign="top" align="left"><IMG src="http://openejb.apache.org/images/dotTrans.gif" width="20" height="10" border="0"></TD>
<TD id="leftColumn" valign="top" style="padding-top: 0px;">
<SPAN id="Content">
<H3><A name="Navigation-Overview"></A>Overview</H3>
<UL class="alternate" type="square">
<LI><A href="index.html" title="Index">Home</A></LI>
<LI><A href="news.html" title="News">News</A></LI>
<LI><A href="faq.html" title="FAQ">FAQ</A></LI>
<LI><A href="download.html" title="Download">Download</A></LI>
<LI><A href="examples.html" title="Examples">Examples</A></LI>
<LI><A href="mailing-lists.html" title="Mailing Lists">Mailing Lists</A></LI>
<LI><A href="source-code.html" title="Source Code">Source Code</A></LI>
</UL>
<H3><A name="Navigation-General"></A>General</H3>
<UL class="alternate" type="square">
<LI><A href="" title="Deploy Tool">Deployment</A></LI>
<LI><A href="http://cwiki.apache.org/confluence/display/OPENEJBx30/Startup" title="Startup">OPENEJBx30:Startup</A></LI>
<LI><A href="validation-tool.html" title="Validation Tool">Validation</A></LI>
<LI><A href="webadmin.html" title="Webadmin">Webadmin</A></LI>
</UL>
<H3><A name="Navigation-Configuration"></A>Configuration</H3>
<UL class="alternate" type="square">
<LI><A href="configuration.html" title="Configuration">General</A></LI>
<LI><A href="http://cwiki.apache.org/confluence/display/OPENEJBx30/Deployments" title="Deployments">Deployments</A></LI>
<LI><A href="containers.html" title="Containers">Containers</A></LI>
</UL>
<H3><A name="Navigation-Servers"></A>Servers</H3>
<UL class="alternate" type="square">
<LI><A href="local-server.html" title="Local Server">Local</A></LI>
<LI><A href="remote-server.html" title="Remote Server">Remote</A></LI>
</UL>
<H3><A name="Navigation-Integrations"></A>Integrations</H3>
<UL class="alternate" type="square">
<LI><A href="tomcat.html" title="Tomcat">Tomcat</A></LI>
<LI><A href="geronimo.html" title="Geronimo">Geronimo</A></LI>
<LI><A href="webobjects.html" title="WebObjects">WebObjects</A></LI>
</UL>
<H3><A name="Navigation-Community"></A>Community</H3>
<UL class="alternate" type="square">
<LI><A href="team.html" title="Team">Team</A></LI>
<LI><A href="articles.html" title="Articles">Articles</A></LI>
<LI><A href="annoyances.html" title="Annoyances">Annoyances</A></LI>
<LI><SPAN class="nobr"><A href="index.html" title="Visit page outside Confluence" rel="nofollow">Wiki<SUP><IMG class="rendericon" src="http://cwiki.apache.org/confluence/images/icons/linkext7.gif" height="7" width="7" align="absmiddle" alt="" border="0"></SUP></A></SPAN></LI>
<LI><SPAN class="nobr"><A href="irc://irc.freenode.net/#openejb" title="Visit page outside Confluence" rel="nofollow">IRC<SUP><IMG class="rendericon" src="http://cwiki.apache.org/confluence/images/icons/linkext7.gif" height="7" width="7" align="absmiddle" alt="" border="0"></SUP></A></SPAN></LI>
</UL>
</SPAN>
<H3 class="heading3">Feeds</H3>
<TABLE border="0" cellspacing="4px">
<TR>
<TD align="right">
<A href="http://cwiki.apache.org/confluence/spaces/rss.action?key=OPENEJB&newPages=false"><IMG src="http://openejb.apache.org/images/rss.gif" border="0"></A><BR>
</TD>
<TD align="left">
<A href="http://cwiki.apache.org/confluence/spaces/rss.action?key=OPENEJB&newPages=false">Site</A>
</TD>
</TR>
<TR>
<TD align="right">
<A href="http://cwiki.apache.org/confluence/spaces/blogrss.action?key=OPENEJB"><IMG src="http://openejb.apache.org/images/rss.gif" border="0"></A>
</TD>
<TD align="left">
<A href="http://cwiki.apache.org/confluence/spaces/blogrss.action?key=OPENEJB">News</A>
</TD>
</TR>
</TABLE>
</TD>
<TD width="7" bgcolor="#a9a5de" valign="top" align="left">&nbsp;</TD>
<TD width="40" valign="top" align="left">&nbsp;</TD>
<TD rowspan="4" width="100%" valign="top">
<TABLE cols="1" rows="2" border="0" cellpadding="0" cellspacing="0" width="100%">
<TR>
<TD valign="top" align="left"><BR>
<TABLE cols="3" rows="1" border="0" cellpadding="0" cellspacing="0" width="100%">
<TR>
<TD valign="top" width="200" align="left">
<A href="http://openejb.org/">
<IMG border="0" hspace="0" src="http://openejb.apache.org/images/logo_openejb.gif" vspace="0">
</A>
</TD>
<TD align="right" valign="middle" style="padding:0px;margin:0px;">
<TABLE style="padding:0px;margin:0px;">
<TR>
<TD>
<A href="http://www.apache.org/">
<IMG src="http://www.apache.org/images/asf-logo.gif" border="0" width="258" height="66">
</A>
</TD>
<TR>
<!--
<tr>
<td align="right" valign="top" style="font- size:12px;color:#777777">
[OpenEJB is a Podling in the Apache Incubator]
</td>
</tr>
-->
</TABLE>
</TD>
</TR>
</TABLE>
<BR>
</TD>
</TR>
<TR>
<TD valign="top" align="left">
<IMG border="0" height="7" hspace="0" src="http://openejb.apache.org/images/dotTrans.gif"><BR>
<DIV id="page_title">
<TABLE width="100%">
<TR>
<TD>
<!-- $TITLE -->
Deploy Tool
</TD>
<!-- Google CSE Search Box Begins -->
<TD align="right">
<FORM id="searchbox_010475492895890475512:_t4iqjrgx90" action="http://www.google.com/cse">
<INPUT type="hidden" name="cx" value="010475492895890475512:_t4iqjrgx90">
<INPUT type="hidden" name="cof" value="FORID:0">
<INPUT name="q" type="text" size="25">
<INPUT type="submit" name="sa" value="Search">
</FORM>
<SCRIPT type="text/javascript" src="http://www.google.com/coop/cse/brand?form=searchbox_010475492895890475512:_t4iqjrgx90"></SCRIPT>
</TD>
<!-- Google CSE Search Box Ends -->
<TD align="right" style="padding-left:0px;"><A style="color:#999;font-size:small;font-weight:normal;" href="http://cwiki.apache.org/confluence/pages/editpage.action?spaceKey=OPENEJB&title=Deploy%20Tool">[ edit ]</A></TD>
<TD align="right" width="25">
<SCRIPT type="text/javascript" language="javascript">
document.write('<a href="http://cwiki.apache.org/confluence/pages/viewpage');
document.write('.action?pageId=26499&decorator=printable">');
</SCRIPT>
<IMG src="http://cwiki.apache.org/confluence/images/icons/print_16.gif" height="16" width="16" border="0" align="absmiddle" title="Print"></A>
</TD>
</TR>
</TABLE>
</DIV>
<IMG border="0" height="1" hspace="0" src="http://openejb.apache.org/images/dotTrans.gif"></TD>
</TR>
</TABLE>
<P>
<!-- $BODY -->
<DIV id="PageContent">
<DIV class="pagecontent">
<DIV class="wiki-content">
<H1><A name="DeployTool-NAME"></A>NAME</H1>
<P>openejb deploy - OpenEJB Deploy Tool</P>
<H1><A name="DeployTool-SYNOPSIS"></A>SYNOPSIS</H1>
<P>openejb deploy <A href="index.html" title="View OpenEJB space">OPENEJB:#options</A> &lt;file&gt; <SPAN class="error">&#91;OPENEJB:&lt;file&gt;...&#93;</SPAN></P>
<H1><A name="DeployTool-NOTE"></A>NOTE</H1>
<P>The OpenEJB Deploy tool is an OPTIONAL tool that allows you to deploy into a running server and get feedback as if the app was deployed and how it was deployed (deploymentIds, jndi names, etc.). </P>
<P>It can be used to deploy into an offline server, however in this scenario it simply copies the archive into the openejb.base/apps directory which is something that can be done manually with a simple copy command or drag and drop.</P>
<P>The OpenEJB Deploy tool can be executed from any directory as long as &lt;OPENEJB_HOME&gt;/bin is in the system PATH. &lt;OPENEJB_HOME&gt; is the directory where OpenEJB was installed or unpacked. For for the remainder of this document we will assume you unpacked OpenEJB into the directory C:\openejb-3.0.</P>
<P>In Windows, the deploy tool can be executed as follows:</P>
<P><TT>C:\openejb-3.0&gt; bin\openejb deploy --help</TT></P>
<P>In UNIX, Linux, or Mac OS X, the deploy tool can be executed as follows:</P>
<P><TT><SPAN class="error">&#91;OPENEJB:user@host openejb-3.0&#93;</SPAN># bin/openejb deploy --help</TT></P>
<P>Depending on your OpenEJB version, you may need to change execution bits to make the scripts executable. You can do this with the following command.</P>
<P><TT><SPAN class="error">&#91;OPENEJB:user@host openejb-3.0&#93;</SPAN># chmod 755 bin/openejb</TT></P>
<P>From here on out, it will be assumed that you know how to execute the right openejb script for your operating system and commands will appear in shorthand as show below.</P>
<P><TT>openejb deploy --help</TT></P>
<H1><A name="DeployTool-DESCRIPTION"></A>DESCRIPTION</H1>
<P>The files passed to the Deploy Tool can be any combination of the following:</P>
<UL class="alternate" type="square">
<LI>ejb 1.1, 2.0, 2.1 or 3.0 jar</LI>
<LI>application client jar</LI>
<LI>ear file containing only libraries, ejbs and application clients &ndash; everything else will be ignored.</LI>
</UL>
<P>Archives ending in <B>.ear</B> or containing a META-INF/application.xml are assumed to be ear files.</P>
<P>Archives containing a META-INF/ejb-jar.xml file or any classes annotated with @Stateless, @Stateful or @MessageDriven, are assumed to be <B>EJB</B> applications. EJB applications older that EJB 3.0 should contain a complete META-INF/ejb-jar.xml inside the jar, however we do not strictly enforce that &ndash; the act of it being incomplete makes it an EJB 3.0 application by nature.</P>
<P>Archives containing a META-INF/application-client.xml or with a META-INF/MANIFEST.MF containing the &quot;Main-Class&quot; attribute, are assumed to be <B>Application Client</B> archives.</P>
<H1><A name="DeployTool-OPTIONS"></A>OPTIONS</H1>
<TABLE class="confluenceTable"><TBODY>
<TR>
<TD class="confluenceTd">-d, --<EM>debug</EM> </TD>
<TD class="confluenceTd">Increases the level of detail on validation errors and deployment summary.</TD>
</TR>
<TR>
<TD class="confluenceTd">--<EM>dir</EM> </TD>
<TD class="confluenceTd">Sets the destination directory where the app will be deployed. The default is &lt;OPENEJB_HOME&gt;/apps/ directory. Note when changing this setting make sure the directory is listed in the openejb.xml via a &lt;Deployments dir=&quot;&quot;/&gt; tag or the app will not be picked up again on restart.</TD>
</TR>
<TR>
<TD class="confluenceTd">-<EM>conf</EM> <EM>file</EM> </TD>
<TD class="confluenceTd">Sets the OpenEJB configuration to the specified file.</TD>
</TR>
<TR>
<TD class="confluenceTd">-h, --<EM>help</EM> </TD>
<TD class="confluenceTd">Lists these options and exit.</TD>
</TR>
<TR>
<TD class="confluenceTd">-o, --<EM>offline</EM></TD>
<TD class="confluenceTd">Deploys the app to an offline server by copying the archive into the server's apps/ directory. The app will be deployed when the server is started. The default is online.</TD>
</TR>
<TR>
<TD class="confluenceTd">-q, --<EM>quiet</EM> </TD>
<TD class="confluenceTd"> Decreases the level of detail on validation and skips the deployment summary.</TD>
</TR>
<TR>
<TD class="confluenceTd">-s, --<EM>server-url &lt;url&gt;</EM> </TD>
<TD class="confluenceTd"> Sets the url of the OpenEJB server to which the app will be deployed. The value should be the same as the JNDI Provider URL used to lookup EJBs. The default is 'ejbd://localhost:4201'. </TD>
</TR>
<TR>
<TD class="confluenceTd">-v, --<EM>version</EM> </TD>
<TD class="confluenceTd"> Prints the OpenEJB version and exits. </TD>
</TR>
</TBODY></TABLE>
<H1><A name="DeployTool-EXAMPLES"></A>EXAMPLES</H1>
<H2><A name="DeployTool-Deployingmultiplejarfiles"></A>Deploying multiple jar files</H2>
<P> <TT>openejb deploy myapp\fooEjbs.jar myapp\barEjbs.jar</TT></P>
<P>Deploys the beans in the fooEjbs.jar first, then deploys the beans in the barEjbs.jar. Wildcards can be used as well.</P>
<P> <TT>openejb deploy myapp&#42;.jar</TT></P>
<H1><A name="DeployTool-OUTPUT"></A>OUTPUT</H1>
<P>On running the deploy tool with a valid EJB jar the following output is printed on the console</P>
<DIV class="code"><DIV class="codeContent">
<PRE class="code-java">Application deployed successfully at {0}
App(id=C:\samples\Calculator-<SPAN class="code-keyword">new</SPAN>\hello-addservice.jar)
EjbJar(id=hello-addservice.jar, path=C:\samples\Calculator-<SPAN class="code-keyword">new</SPAN>\hello-addservice.jar)
Ejb(ejb-name=HelloBean, id=HelloBean)
Jndi(name=HelloBean)
Jndi(name=HelloBeanLocal)
Ejb(ejb-name=AddServiceBean, id=AddServiceBean)
Jndi(name=AddServiceBean)
Jndi(name=AddServiceBeanLocal)</PRE>
</DIV></DIV>
<P>Note: In the above case the command used is <TT>C:\samples\Calculator-new&gt;openejb deploy hello-addservice.jar</TT>.<BR>
This contains two EJBs AddServiceBean and HelloBean.</P>
</DIV>
</DIV>
</DIV>
</P>
</TD>
</TR>
<TR height="5">
<TD width="20" height="5" bgcolor="#7270c2" valign="top" align="left">&nbsp;</TD>
<TD width="95" height="5" bgcolor="#7270c2" valign="top">&nbsp;</TD>
<TD width="7" height="5" bgcolor="#a9a5de" valign="top" align="left">&nbsp;</TD>
<TD width="40" height="5" valign="top" align="left">&nbsp;</TD>
<TD width="120" height="5" valign="top" align="left">&nbsp;</TD>
</TR>
<TR>
<TD width="20" height="5" bgcolor="#7270c2" valign="top" align="left">&nbsp;</TD>
<TD width="95" bgcolor="#7270c2" valign="BOTTOM" align="left">&nbsp;</TD>
<TD width="7" bgcolor="#a9a5de" valign="top" align="left"><IMG src="http://openejb.apache.org/images/dotTrans.gif" width="1" height="25" border="0"></TD>
<TD width="40" valign="top" align="left"><IMG src="http://openejb.apache.org/images/dotTrans.gif" width="1" height="25" border="0"></TD>
<TD width="120" valign="top" align="left">&nbsp;</TD>
</TR>
<TR>
<TD width="20" height="5" bgcolor="#7270c2" valign="top" align="left">&nbsp;</TD>
<TD width="95" bgcolor="#7270c2" valign="BOTTOM" align="left">&nbsp;</TD>
<TD width="7" bgcolor="#a9a5de" valign="top" align="left"><IMG src="http://openejb.apache.org/images/dotTrans.gif" width="1" height="25" border="0"></TD>
<TD width="40" valign="top" align="left"><IMG src="http://openejb.apache.org/images/dotTrans.gif" width="1" height="25" border="0"></TD>
<TD width="120" valign="top" align="left">&nbsp;</TD>
</TR>
<TR height="5">
<TD width="20" rowspan="2" height="100%" bgcolor="#7270c2" valign="bottom" align="left"><IMG src="http://openejb.apache.org/images/stripes1.gif" width="20" height="125" border="0"></TD>
<TD width="95" rowspan="2" height="100%" bgcolor="#7270c2" valign="bottom" align="left"><IMG src="http://openejb.apache.org/images/stripe105.gif" width="105" height="125" border="0"></TD>
<TD width="7" rowspan="2" height="100%" bgcolor="#a9a5de" valign="top" align="left">&nbsp;</TD>
<TD width="40" height="100%" valign="top" align="left">&nbsp;</TD>
<TD width="120" height="100%" valign="top" align="left">&nbsp;</TD>
</TR>
<TR height="5">
<TD width="40" height="25" valign="top" align="left">&nbsp;</TD>
<TD width="100%" height="25" valign="bottom" align="left"><BR>
<BR>
<IMG src="http://openejb.apache.org/images/line_light.gif" border="0" width="430" height="3"><BR>
<P>
</P>
<SPAN class="bodyGrey">
<SMALL><NOTICE><!-- $FOOTER -->
Apache OpenEJB is an project of The Apache Software Foundation (ASF)
</NOTICE> <BR>
&nbsp;<BR>
Powered by <A href="http://atlassian.com/">Atlassian</A> <A href="http://atlassian.com/confluence/">Confluence</A>.
</SMALL>
</SPAN>
<P>
</P>
</TD>
<TD width="120" height="25" valign="top" align="left">&nbsp;</TD>
</TR>
</TABLE>
<!-- Needed for composition plugin -->
<!-- delay the loading of large javascript files to the end so that they don't interfere with the loading of page content -->
<SPAN style="display: none">
<SCRIPT type="text/javascript" language="JavaScript" src="http://cwiki.apache.org/confluence/labels-javascript"></SCRIPT>
<SCRIPT src="http://www.google-analytics.com/urchin.js" type="text/javascript">
</SCRIPT>
<SCRIPT type="text/javascript">
_uacct = "UA-2717626-1";
urchinTracker();
</SCRIPT>
</SPAN>
</BODY>
</HTML>