You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by db...@apache.org on 2006/09/27 09:53:19 UTC

svn commit: r450370 [5/29] - /incubator/openejb/trunk/website/html/

Added: incubator/openejb/trunk/website/html/deploy-tool.html
URL: http://svn.apache.org/viewvc/incubator/openejb/trunk/website/html/deploy-tool.html?view=auto&rev=450370
==============================================================================
--- incubator/openejb/trunk/website/html/deploy-tool.html (added)
+++ incubator/openejb/trunk/website/html/deploy-tool.html Wed Sep 27 00:53:16 2006
@@ -0,0 +1,453 @@
+
+ <!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://people.apache.org/~dblevins/openejb/default.css" rel="stylesheet" type="text/css">
+  <LINK href="http://people.apache.org/~dblevins/openejb/style.css" rel="stylesheet" type="text/css">
+  <LINK rel="SHORTCUT ICON" href="http://incubator.apache.org/openejb/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">
+  <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://incubator.apache.org/openejb/images/dotTrans.gif" width="1" height="1" border="0"></TD>
+    <TD width="95" valign="top" align="left" bgcolor="#7270c2"><IMG src="http://incubator.apache.org/openejb/images/dotTrans.gif" width="1" height="1" border="0"></TD>
+    <TD width="7" valign="top" align="left"><IMG src="http://incubator.apache.org/openejb/images/dotTrans.gif" border="0" width="1" height="1"></TD>
+    <TD width="40" valign="top" align="left"><IMG src="http://incubator.apache.org/openejb/images/dotTrans.gif" width="40" height="6" border="0"></TD>
+    <TD width="100%" valign="top" align="left" bgcolor="#5A5CB8"><IMG src="http://incubator.apache.org/openejb/images/top_2.gif" width="430" height="6" border="0"></TD>
+    <TD width="120" valign="top" align="left" bgcolor="#E24717"><IMG src="http://incubator.apache.org/openejb/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://incubator.apache.org/openejb/images/dotTrans.gif" border="0" width="1" height="1"></TD>
+    <TD width="95" bgcolor="#7270c2" valign="top" align="left"><IMG src="http://incubator.apache.org/openejb/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://incubator.apache.org/openejb/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://incubator.apache.org/openejb/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://incubator.apache.org/openejb/images/dotTrans.gif" width="20" height="3" border="0"></TD>
+    <TD width="95" bgcolor="#7270c2" valign="top" align="left"><IMG src="http://incubator.apache.org/openejb/images/line_sm.gif" width="105" height="3" border="0"></TD>
+    <TD width="7" bgcolor="#a9a5de" valign="top" align="left"><IMG src="http://incubator.apache.org/openejb/images/line_sm.gif" width="7" height="3" border="0"></TD>
+    <TD width="40" valign="top" align="left"><IMG src="http://incubator.apache.org/openejb/images/line_light.gif" width="40" height="3" border="0"></TD>
+    <TD width="100%" valign="top" align="left"><IMG src="http://incubator.apache.org/openejb/images/line_light.gif" width="430" height="3" border="0"></TD>
+    <TD width="120" valign="top" align="left"><IMG src="http://incubator.apache.org/openejb/images/dotTrans.gif" border="0" width="1" height="1"></TD>
+   </TR>
+   <TR>
+    <TD bgcolor="#7270c2" valign="top" align="left"><IMG src="http://incubator.apache.org/openejb/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="quickstart.html" title="Quickstart">Quickstart</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="startup.html" title="Startup">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="deployments.html" title="Deployments">Deployments</A></LI>
+	<LI><A href="containers.html" title="Containers">Containers</A></LI>
+	<LI><A href="castor-cmp.html" title="Castor CMP">Castor CMP</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="help.html" title="Help">Help</A></LI>
+	<LI><A href="articles.html" title="Articles">Articles</A></LI>
+	<LI><A href="annoyances.html" title="Annoyances">Annoyances</A></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://incubator.apache.org/openejb/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://incubator.apache.org/openejb/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://incubator.apache.org/openejb/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://incubator.apache.org/">
+	              <IMG src="http://incubator.apache.org/images/apache-incubator-logo.png" border="0">
+	            </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://incubator.apache.org/openejb/images/dotTrans.gif"><BR>
+          <DIV id="page_title">
+            <TABLE width="100%">
+              <TR>
+                <TD>
+	<!-- $TITLE -->
+	Deploy Tool
+                </TD>
+                 <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://incubator.apache.org/openejb/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="#DeployTool-options" title="options on Deploy Tool">options</A> jarfiles</P>
+
+<H1><A name="DeployTool-NOTE"></A>NOTE</H1>
+
+
+<P>The OpenEJB Deploy tool is an OPTIONAL tool that creates the <B>openejb-jar.xml</B> file required for your bean to be loaded into the container system at startup. If you want to create or maintain that openejb-jar.xml file yourself, you don&apos;t need the Deploy tool at all. For more information, see the <SPAN class="nobr"><A href="http://cwiki.apache.org/confluence/pages/createpage.action?spaceKey=OPENEJB&title=faq_openejb-jar.html&linkCreation=true&fromPageId=26499" title="Create Page: faq_openejb-jar.html" class="createlink">openejb-jar.xml FAQ<SUP><IMG class="rendericon" src="http://cwiki.apache.org/confluence/images/icons/plus.gif" height="7" width="7" align="absmiddle" alt="" border="0"></SUP></A></SPAN> </P>
+
+<P>The OpenEJB Deploy tool must be executed from the OPENEJB_HOME directory. This 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.</P>
+
+<P>In Windows, the deploy tool can be executed as follows:</P>
+
+<BLOCKQUOTE><P>C:\openejb&gt; openejb deploy -help</P></BLOCKQUOTE>
+
+
+<P>In UNIX, Linux, or Mac OS X, the deploy tool can be executed as follows:</P>
+
+<BLOCKQUOTE><P><SPAN class="error">&#91;user@host openejb&#93;</SPAN># ./openejb.sh deploy -help</P></BLOCKQUOTE>
+
+
+<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>
+
+<BLOCKQUOTE><P><SPAN class="error">&#91;user@host openejb&#93;</SPAN># chmod 755 openejb.sh bin/*.sh</P></BLOCKQUOTE>
+
+
+<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>
+
+<BLOCKQUOTE><P>openejb deploy -help</P></BLOCKQUOTE>
+
+
+<H1><A name="DeployTool-DESCRIPTION"></A>DESCRIPTION</H1>
+
+
+<P>The OpenEJB Deploy Tool is responsible for linking or &quot;hooking up&quot; your beans to the container system. It is run as a separate command line tool using the data in your OpenEJB configuration file (C:\openejb\conf\openejb.conf). The next time the system is started, all the deplpoyed beans will be loaded.</P>
+
+<P>In the OpenEJB configuration file (C:\openejb\conf\openejb.conf), there are a number of containers and resources defined. Each of these has a unique name and will be loaded at start up with that name. In order for your beans to be loaded into the container system, they must also be named. This name is called a <A href="deployment-id.html" title="Deployment ID">Deployment ID</A> and must be completely unique in comparison to all other beans across all jars loaded into the container system.</P>
+
+<P>Furthermore, the system must also know which which container to put a given bean into. During deployment, the bean&apos;s Deployment ID must be mapped to a Container ID.</P>
+
+<P>If the beans has any references to database or other resources using the &lt;resource-ref&gt; tag in the jar&apos;s META-INF/ejb-jar.xml, those references must be resolved and linked to a resource declared in the openejb.conf.</P>
+
+<P>All this information is collected by the OpenEJB Deploy Tool. Using the Deploy Tool will cause a new file to be added to your jar, META-INF/openejb-jar.xml. Jars in the deployments path containing a META-INF/openejb-jar.xml file will be loaded when the system starts up and will be usable at runtime. Any jar containing an invalid openejb-jar.xml, or conntaining no openejb-jar.xml at all, will simply be overlooked by the container system.</P>
+
+<P>To effectively &quot;undeploy&quot; a jar, you simply need to remove the META-INF/openejb-jar.xml file from the jar then restart the container system/server. If you wish to temporarily remove the jar from the container system, you can just rename the jar with a new extention, &quot;.skip&quot; for example, then restart the container system/server.</P>
+
+<P>The files passed to the Deploy Tool must be valid ejb 1.1 jar files and contain the META_INF/ejb-jar.xml inside the jar. This is case sensitive, so meta-inf/Ejb-Jar.xml is not the same as META_INF/ejb-jar.xml.</P>
+
+<P>Do NOT edit the openejb-jar.xml file unless you know exactly what you are doing.</P>
+
+<H1><A name="DeployTool-OPTIONS"></A>OPTIONS</H1>
+
+
+<TABLE class="confluenceTable"><TBODY>
+<TR>
+<TD class="confluenceTd">-m</TD>
+<TD class="confluenceTd">Move the jar to the OPENEJB_HOME/beans directory. Will not overwrite the jar if there is an existing jar with the same name in the OPENEJB_HOME/beans directory. Add the -f option to force the overwrite.</TD>
+</TR>
+<TR>
+<TD class="confluenceTd">-c</TD>
+<TD class="confluenceTd">Copy the jar to the OPENEJB_HOME/beans directory. Will not overwrite the jar if there is an existing jar with the same name in the OPENEJB_HOME/beans directory. Add the -f option to force the overwrite.</TD>
+</TR>
+<TR>
+<TD class="confluenceTd">-f</TD>
+<TD class="confluenceTd">Forces a move or a copy, overwriting any previously existing jar with the same name.</TD>
+</TR>
+<TR>
+<TD class="confluenceTd">-a</TD>
+<TD class="confluenceTd">Automate deployment as much as possible. Applies all automation related flags.</TD>
+</TR>
+<TR>
+<TD class="confluenceTd">-C</TD>
+<TD class="confluenceTd">Automatically assigns each bean in the jar to the first container of the appropriate bean type.</TD>
+</TR>
+<TR>
+<TD class="confluenceTd">-D</TD>
+<TD class="confluenceTd">Automatically assigns the OpenEJB <A href="deployment-id.html" title="Deployment ID">Deployment ID</A> for each bean by using the &lt;ejb-name&gt; in your ejb-jar.xml. The deployment ID uniquely identifies the bean in the OpenEJB container system and is used by most servers as the client-side JNDI name. No two beans can share the same deployment ID.</TD>
+</TR>
+<TR>
+<TD class="confluenceTd">-d <EM>dir</EM> </TD>
+<TD class="confluenceTd">Sets the OPENEJB_HOME to the specified directory.</TD>
+</TR>
+<TR>
+<TD class="confluenceTd">-l <EM>file</EM> </TD>
+<TD class="confluenceTd">Sets the log4j configuration to the specified file.</TD>
+</TR>
+<TR>
+<TD class="confluenceTd">-conf <EM>file</EM> </TD>
+<TD class="confluenceTd">Sets the OpenEJB configuration to the specified file.</TD>
+</TR>
+<TR>
+<TD class="confluenceTd">-version</TD>
+<TD class="confluenceTd">Print the version.</TD>
+</TR>
+<TR>
+<TD class="confluenceTd">-help</TD>
+<TD class="confluenceTd">Print this help message.</TD>
+</TR>
+<TR>
+<TD class="confluenceTd">-examples</TD>
+<TD class="confluenceTd">Show examples of how to use the options.</TD>
+</TR>
+</TBODY></TABLE>
+
+
+<H1><A name="DeployTool-EXAMPLES"></A>EXAMPLES</H1>
+
+
+<H2><A name="DeployTool-Deployingmultiplejarfiles"></A>Deploying multiple jar files</H2>
+
+
+<BLOCKQUOTE><P>openejb deploy myapp\fooEjbs.jar myapp\barEjbs.jar</P></BLOCKQUOTE>
+
+
+<P>Deploys the beans in the fooEjbs.jar first, then deploys the beans in the barEjbs.jar. Wildcards can be used as well.</P>
+
+<BLOCKQUOTE><P>openejb deploy myapp&#42;.jar</P></BLOCKQUOTE>
+
+
+<H2><A name="DeployTool-Usingm"></A>Using -m </H2>
+
+<P>openejb deploy -m myapp\myEjbs.jar</P>
+
+<P>Deploys the beans in the jar, moving the entire jar from myapp\myEjbs.jar to OPENEJB_HOME\beans\myEjbs.jar.</P>
+
+<P>If the jar OPENEJB_HOME\beans\myEjbs.jar already existed, it will not be overwritten. Supply the -f to force an overwrite.</P>
+
+<BLOCKQUOTE><P>openejb deploy -m -f myapp\myEjbs.jar</P></BLOCKQUOTE>
+
+<H2><A name="DeployTool-Usingc"></A>Using -c</H2>
+
+<BLOCKQUOTE><P>openejb deploy -c myapp\myEjbs.jar</P></BLOCKQUOTE>
+
+<P>Same as using -m, except the jar is copied not moved. The -f also can be used with a -c to force an overwrite if the file is already present.</P>
+
+<H2><A name="DeployTool-UsingC"></A>Using -C</H2>
+
+<BLOCKQUOTE><P>openejb deploy -C myapp\myEjbs.jar</P></BLOCKQUOTE>
+
+<P>Deploys the beans in the jar, does not prompt you to assign each bean to a container. Instead, each bean will automatically be assigned to the first container of the appropriate type.</P>
+
+<H2><A name="DeployTool-UsingD"></A>Using -D</H2>
+
+<BLOCKQUOTE><P>openejb deploy -D myapp\myEjbs.jar</P></BLOCKQUOTE>
+
+<P>Deploys the beans in the jar, does not prompt you to assign each bean a <A href="deployment-id.html" title="Deployment ID">Deployment ID</A> . Instead, the deployment ID for each bean will automatically be assigned using the &lt;ejb-name&gt; of the bean as it is in the META-INF/ejb-jar.xml of the jar file.</P>
+
+<P>The deployment ID uniquely identifies the bean in the OpenEJB container system. No two beans can share the same deployment ID.</P>
+
+<P>The deployment ID is also used by most servers as the client-side JNDI name for doing JNDI lookups.</P>
+
+<H2><A name="DeployTool-Usinga"></A>Using -a</H2>
+
+<BLOCKQUOTE><P>openejb deploy -a myapp\myEjbs.jar</P></BLOCKQUOTE>
+
+<P>Applies all automation related flags. Currently equivalent to:</P>
+
+<BLOCKQUOTE><P>openejb deploy -C -D myapp\myEjbs.jar</P></BLOCKQUOTE>
+
+<P>As more automation options are added, they will also be applied when using the -a option.</P>
+
+<H2><A name="DeployTool-Usingddir"></A>Using -d dir</H2>
+
+<BLOCKQUOTE><P>openejb deploy -d C:\openejb myapp\myEjbs.jar</P></BLOCKQUOTE>
+
+<P>Sets the OPENEJB_HOME to the C:\openejb directory. This will cause the deploy tool to treat the C:\openejb as the directory where OpenEJB was installed.</P>
+
+<H2><A name="DeployTool-Usingconffile"></A>Using -conf file</H2>
+
+<BLOCKQUOTE><P>openejb deploy -conf C:\openejb\conf\mytest.conf myapp\myEjbs.jar</P></BLOCKQUOTE>
+
+<P>Sets the openejb.configuration system variable to the file C:\openejb\conf\mytest.conf. When the beans are deployed the beans will be to be mapped to the containers and resources in the configuration file C:\openejb\conf\mytest.conf. If the deploy tool needs update the configuration, the mytest.conf file will be modified.</P>
+
+<H2><A name="DeployTool-Usingcombinationsofoptions"></A>Using combinations of options </H2>
+
+<BLOCKQUOTE><P>openejb deploy -c -a C:\foo\bar.jar D:\my\beans&#42;.jar</P></BLOCKQUOTE>
+
+<BLOCKQUOTE><P>openejb deploy -c -C /foo/bar.jar</P></BLOCKQUOTE>
+
+<BLOCKQUOTE><P>openejb deploy -m -a /home/dblevins/mybeans/*.jar</P></BLOCKQUOTE>
+
+<BLOCKQUOTE><P>openejb deploy -D -m /home/dblevins/mybeans/*.jar</P></BLOCKQUOTE>
+
+<BLOCKQUOTE><P>openejb deploy -a /openejb/beans/*.jar</P></BLOCKQUOTE>
+
+<BLOCKQUOTE><P>openejb deploy -a C:\openejb\beans&#42;.jar</P></BLOCKQUOTE>
+
+            </DIV>
+        </DIV>
+    </DIV>
+     </P>
+    </TD>
+<!--    <td width="120" height="5" valign="top" align="left"></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://incubator.apache.org/openejb/images/dotTrans.gif" width="1" height="25" border="0"></TD>
+    <TD width="40" valign="top" align="left"><IMG src="http://incubator.apache.org/openejb/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://incubator.apache.org/openejb/images/dotTrans.gif" width="1" height="25" border="0"></TD>
+    <TD width="40" valign="top" align="left"><IMG src="http://incubator.apache.org/openejb/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://incubator.apache.org/openejb/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://incubator.apache.org/openejb/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://incubator.apache.org/openejb/images/line_light.gif" border="0" width="430" height="3"><BR>
+     <P>
+     </P>
+     <SPAN class="bodyGrey">
+     <SMALL><NOTICE><!-- $FOOTER -->
+Apache OpenEJB is an effort undergoing incubation at The Apache Software Foundation (ASF), sponsored by the Geronimo PMC. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the 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>
+  </BODY>
+ </HTML>

Added: incubator/openejb/trunk/website/html/deployment-id.html
URL: http://svn.apache.org/viewvc/incubator/openejb/trunk/website/html/deployment-id.html?view=auto&rev=450370
==============================================================================
--- incubator/openejb/trunk/website/html/deployment-id.html (added)
+++ incubator/openejb/trunk/website/html/deployment-id.html Wed Sep 27 00:53:16 2006
@@ -0,0 +1,408 @@
+
+ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<HTML>
+ <HEAD>
+  <!-- $PAGETITLE -->
+  <TITLE>OpenEJB - Deployment ID</TITLE>
+  <LINK href="http://people.apache.org/~dblevins/openejb/default.css" rel="stylesheet" type="text/css">
+  <LINK href="http://people.apache.org/~dblevins/openejb/style.css" rel="stylesheet" type="text/css">
+  <LINK rel="SHORTCUT ICON" href="http://incubator.apache.org/openejb/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">
+  <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://incubator.apache.org/openejb/images/dotTrans.gif" width="1" height="1" border="0"></TD>
+    <TD width="95" valign="top" align="left" bgcolor="#7270c2"><IMG src="http://incubator.apache.org/openejb/images/dotTrans.gif" width="1" height="1" border="0"></TD>
+    <TD width="7" valign="top" align="left"><IMG src="http://incubator.apache.org/openejb/images/dotTrans.gif" border="0" width="1" height="1"></TD>
+    <TD width="40" valign="top" align="left"><IMG src="http://incubator.apache.org/openejb/images/dotTrans.gif" width="40" height="6" border="0"></TD>
+    <TD width="100%" valign="top" align="left" bgcolor="#5A5CB8"><IMG src="http://incubator.apache.org/openejb/images/top_2.gif" width="430" height="6" border="0"></TD>
+    <TD width="120" valign="top" align="left" bgcolor="#E24717"><IMG src="http://incubator.apache.org/openejb/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://incubator.apache.org/openejb/images/dotTrans.gif" border="0" width="1" height="1"></TD>
+    <TD width="95" bgcolor="#7270c2" valign="top" align="left"><IMG src="http://incubator.apache.org/openejb/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://incubator.apache.org/openejb/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://incubator.apache.org/openejb/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://incubator.apache.org/openejb/images/dotTrans.gif" width="20" height="3" border="0"></TD>
+    <TD width="95" bgcolor="#7270c2" valign="top" align="left"><IMG src="http://incubator.apache.org/openejb/images/line_sm.gif" width="105" height="3" border="0"></TD>
+    <TD width="7" bgcolor="#a9a5de" valign="top" align="left"><IMG src="http://incubator.apache.org/openejb/images/line_sm.gif" width="7" height="3" border="0"></TD>
+    <TD width="40" valign="top" align="left"><IMG src="http://incubator.apache.org/openejb/images/line_light.gif" width="40" height="3" border="0"></TD>
+    <TD width="100%" valign="top" align="left"><IMG src="http://incubator.apache.org/openejb/images/line_light.gif" width="430" height="3" border="0"></TD>
+    <TD width="120" valign="top" align="left"><IMG src="http://incubator.apache.org/openejb/images/dotTrans.gif" border="0" width="1" height="1"></TD>
+   </TR>
+   <TR>
+    <TD bgcolor="#7270c2" valign="top" align="left"><IMG src="http://incubator.apache.org/openejb/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="quickstart.html" title="Quickstart">Quickstart</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="deploy-tool.html" title="Deploy Tool">Deployment</A></LI>
+	<LI><A href="startup.html" title="Startup">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="deployments.html" title="Deployments">Deployments</A></LI>
+	<LI><A href="containers.html" title="Containers">Containers</A></LI>
+	<LI><A href="castor-cmp.html" title="Castor CMP">Castor CMP</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="help.html" title="Help">Help</A></LI>
+	<LI><A href="articles.html" title="Articles">Articles</A></LI>
+	<LI><A href="annoyances.html" title="Annoyances">Annoyances</A></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://incubator.apache.org/openejb/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://incubator.apache.org/openejb/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://incubator.apache.org/openejb/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://incubator.apache.org/">
+	              <IMG src="http://incubator.apache.org/images/apache-incubator-logo.png" border="0">
+	            </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://incubator.apache.org/openejb/images/dotTrans.gif"><BR>
+          <DIV id="page_title">
+            <TABLE width="100%">
+              <TR>
+                <TD>
+	<!-- $TITLE -->
+	Deployment ID
+                </TD>
+                 <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=Deployment%20ID">[ 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=26490&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://incubator.apache.org/openejb/images/dotTrans.gif"></TD>
+      </TR>
+     </TABLE>
+     <P>
+     <!-- $BODY -->
+            <DIV id="PageContent">
+        
+        <DIV class="pagecontent">
+            <DIV class="wiki-content">
+                
+<H1><A name="DeploymentID-WhatisaDeploymentID%3F"></A>What is a Deployment ID?</H1>
+
+<P>Every bean deployed in OpenEJB has a unique deployment-id that identifies it within the scope of the entire container system. The server and container system refer beans at run-time using the bean&apos;s deployment id.</P>
+
+<H2><A name="DeploymentID-Likeejbname"></A>Like ejb-name</H2>
+
+<P>This deployment id is much like the &lt;ejb-name&gt; element of the ejb-jar.xml , with one very important difference. The &lt;ejb-name&gt; is only required to be unique within the scope of the ejb-jar.xml in the bean&apos;s jar. The deployment id is required to be unique across all beans and jars in OpenEJB. This is a subtle, but important, distinction.</P>
+
+<P>Remember that the EJB specification was designed so that enterprise beans could be create, packaged, and sold by vendors (EJB Providers). Furthermore, users should be able to buy a packaged set of beans (a jar with an ejb-jar.xml in it) and deploy it into an EJB Container without modification.</P>
+
+<H2><A name="DeploymentID-Theejbnameisnotunique"></A>The ejb-name is not unique</H2>
+
+<P>Let&apos;s consider this, what happens if two vendors each sell a package (jar) that contains a bean with the &lt;ejb-name&gt; PurchaseOrder? Both are completely different in terms functionality and are different beans in every other respect. The EJB spec says, this is fine, ejb-names only have to unique within the jar and that jar&apos;s ejb-jar.xml file. It&apos;s redictulous to excpect EJB Providers to call each other up and ask, &quot;Are you already using the name &apos;PurchaseOrder&apos; in your jar?&quot; Remember that the EJB specification was designed so that enterprise beans could be create, packaged, and sold by vendors (EJB Providers). Furthermore, users should be able to buy a packaged set of beans (a jar with an ejb-jar.xml in it) and deploy it into an EJB Container without modification. This is all fine and dandy, but it still leaves it up to the EJB Container/Server providers to settle the difference.</P>
+
+<H2><A name="DeploymentID-Thedeploymentidisunique"></A>The deployment-id is unique</H2>
+
+<P>OpenEJB solves this with the OpenEJB-specific deployment id. By requiring that each bean deployed into OpenEJB has a unique name, we can guarantee that we are always refering to the right bean at all times. Futhermore, it allows you to deploy different versions of the same package several times in the same container system, each time giving the beans new deployment ids.</P>
+
+<H2><A name="DeploymentID-Usingejbnameasdeploymentidanyway"></A>Using ejb-name as deployment-id anyway</H2>
+
+<P>If you&apos;re lazy -<DEL>as any truly great programmer should be</DEL>- and don&apos;t want to type a deployment id for each bean every time you deploy a jar, you can use the -D option of the Deploy Tool. This will throw caution to the wind, and automatically assign the bean&apos;s ejb-name as the value of the bean&apos;s OpenEJB deployment id. This leaves up to you to guarantee that bean&apos;s ejb-name will be unique across all beans and jars in the container system. In other words, be very careful with the -D option!</P>
+
+<H1><A name="DeploymentID-Howisitused%3F"></A>How is it used?</H1>
+
+<H2><A name="DeploymentID-Inthecontainersystem"></A>In the container system</H2>
+
+<P>In the container system, the deployment id is used to undex the bean in a system-wide registry. This registry is refered to on every call made in the container system. Being able to safely hash and cache bean information by id is a must. This stresses the importance of unique ids for every bean deployed in OpenEJB.</P>
+
+<H2><A name="DeploymentID-IntheLocalServer"></A>In the Local Server</H2>
+
+<P>The Local (IntraVM) Server is an integral part of the container system and the two are, in many ways, inseparable. The Local Server takes care of all bean to bean and client to bean invocations made inside the virtual machine. For this reason, it often refered to as the IntraVM Server.</P>
+
+<P>For bean to bean communications, the Local Server must create a JNDI namespace (JNDI ENC) for each bean as defined by the bean&apos;s &lt;env-entry&gt;, &lt;ejb-ref&gt;, and &lt;resource-ref&gt; elements of the bean&apos;s ejb-jar.xml file. Every bean litterally gets its very own JNDI namespace. When a bean makes a JNDI call, the Local Server intercepts this call and uses the deployment id of the calling bean to retreive that bean&apos;s private JNDI namespace from the container system&apos;s index. The Local Server then carries out the lookup on that bean&apos;s namespace.</P>
+
+<P>All non-bean clients share one big global namespace. Since non-bean clients are not deployed and do not have a deployment descriptor like an ejb-jar.xml, the Local Server is unable to taylor a namespace for each non-bean client as it can for bean clients. The Local server cannot identify non-bean clients as they have no deployment id. All JNDI calls made by clients that the Local Server cannot identify go to the public, global namespace. The public, global JNDI namespace contains all beans and resources in the container system. name.</P>
+
+<P>Each bean is added to the public, global namespace using it&apos;s deployment id as its JNDI lookup. For example, if a bean had a deployment-id of &quot;/my/bean/foo&quot;, a non-bean client could lookup that bean as follows.</P>
+
+<DIV class="code"><DIV class="codeHeader"><B>MyAppClient.java</B></DIV><DIV class="codeContent">
+<PRE class="code-java">...
+<SPAN class="code-object">Object</SPAN> bean = initialContext.lookup(<SPAN class="code-quote">&quot;/my/bean/Foo&quot;</SPAN>);
+...</PRE>
+</DIV></DIV>
+
+<P>If a bean in the container system made the above JNDI call, the Local Server would see the bean&apos;s identity (deployment id) hidden in the Thread, go get the bean&apos;s private JNDI namespace and finish the lookup on that. Since all names in bean&apos;s JNDI namespace are required start with &quot;java:comp/env&quot;, the lookup would fail and the bean would receive a javax.naming.NameNotFoundException.</P>
+
+<P>In short...</P>
+
+<P>For beans:</P>
+<UL class="alternate" type="square">
+	<LI>Each bean has it&apos;s own private, personalized JNDI namespace</LI>
+	<LI>The names in it are the same names it uses in its ejb-jar.xml</LI>
+	<LI>Beans can only access their private namespace, period</LI>
+</UL>
+
+
+<P>For non-beans (everyone else):</P>
+<UL class="alternate" type="square">
+	<LI>Non-bean clients share the public, global JNDI namespace</LI>
+	<LI>The names in it are the deployment ids of all the beans</LI>
+	<LI>Non-bean clients can only access the one global namespace</LI>
+</UL>
+
+
+<H2><A name="DeploymentID-IntheRemoteServer"></A>In the Remote Server</H2>
+
+<P>The Remote Server has a public, global namespace just as the Local Server does. The difference being that the Remote Server only serves clients outside the container system and outside the virtual machine. So, all clients from the perspective of the Remote Server are non-bean clients. As a result, the Remote Server only has the one public, global JNDI namespace. Just as in the Local Server, the names in this namespacse consist of the deployment ids of the beans in the container system.</P>
+
+<P>Just as before, clients can lookup beans from the Remote Server using the bean&apos;s deployment id. For example, if a bean had a deployment-id of &quot;/my/bean/foo&quot;, a client could lookup that bean as follows.</P>
+
+<DIV class="code"><DIV class="codeHeader"><B>MyAppClient.java</B></DIV><DIV class="codeContent">
+<PRE class="code-java">...
+<SPAN class="code-object">Object</SPAN> bean = initialContext.lookup(<SPAN class="code-quote">&quot;/my/bean/Foo&quot;</SPAN>);
+...</PRE>
+</DIV></DIV>
+
+<H2><A name="DeploymentID-IntheCORBAAdapter"></A>In the CORBA Adapter</H2>
+
+<P>The CORBA Adapter is separate than the Remote Server. It adapts the OpenEJB Container System and the Local Server into OpenORB as an embedded library. It provides users of OpenORB the ability to lookup and execute beans (EJBs) via the RMI-IIOP protocol. All the EJBHome and EJBObject interfaces of beans in OpenEJB are implemented by OpenORB as CORBA stubs and ties.</P>
+
+<P>The beans are exported into OpenORB&apos;s naming service by deployment id. So, just as with the Local Server and Remote Server, clients can lookup beans using the bean&apos;s deployment id. OpenORB has a JNDI implementation of their naming service, so lookups can be done just as before.</P>
+
+<DIV class="code"><DIV class="codeHeader"><B>MyAppClient.java</B></DIV><DIV class="codeContent">
+<PRE class="code-java">...
+<SPAN class="code-object">Object</SPAN> bean = initialContext.lookup(<SPAN class="code-quote">&quot;/my/bean/Foo&quot;</SPAN>);
+...
+{}
+
+CORBA clients can also access beans in OpenEJB as CORBA objects. These can be looked up from OpenORB&apos;s naming service (CosNaming) as follows.
+
+{code:title=MyCorbaAppClient.java}
+...
+<SPAN class="code-object">String</SPAN>[] args = ...
+
+<SPAN class="code-comment">// The ORB and <SPAN class="code-object">Object</SPAN>
+</SPAN>org.omg.CORBA.ORB    orb  = <SPAN class="code-keyword">null</SPAN>;
+org.omg.CORBA.<SPAN class="code-object">Object</SPAN> bean = <SPAN class="code-keyword">null</SPAN>.
+
+<SPAN class="code-comment">// The Naming Service and <SPAN class="code-object">Object</SPAN> Name
+</SPAN>org.omg.CosNaming.NamingContext   context = <SPAN class="code-keyword">null</SPAN>;
+org.omg.CosNaming.NameComponent[]    name = <SPAN class="code-keyword">null</SPAN>;
+
+<SPAN class="code-comment">// Get the ORB
+</SPAN>orb = org.omg.CORBA.ORB.init( args, <SPAN class="code-keyword">null</SPAN> );                  
+ 
+<SPAN class="code-comment">// Get the Naming Service 
+</SPAN>org.omg.CORBA.<SPAN class="code-object">Object</SPAN> ref = <SPAN class="code-keyword">null</SPAN>;
+ref = orb.resolve_initial_references(<SPAN class="code-quote">&quot;NameService&quot;</SPAN>);
+context = org.omg.CosNaming.NamingContextHelper.narrow( ref );
+
+<SPAN class="code-comment">// Get the Name as a component
+</SPAN><SPAN class="code-comment">// Note: the string is the bean&apos;s deployment id 
+</SPAN>name    = <SPAN class="code-keyword">new</SPAN> org.omg.CosNaming.NameComponent[ 1 ];
+name[0] = <SPAN class="code-keyword">new</SPAN> org.omg.CosNaming.NameComponent(<SPAN class="code-quote">&quot;/my/bean/foo&quot;</SPAN>,&quot;&quot;);
+
+<SPAN class="code-comment">// Finally, get the bean as a CORBA object
+</SPAN><SPAN class="code-comment">// Equvalent to an InitialContext.lookup(<SPAN class="code-quote">&quot;/my/bean/foo&quot;</SPAN>);
+</SPAN>bean = context.resolve( name );
+...</PRE>
+</DIV></DIV>
+
+<H1><A name="DeploymentID-WhathappensifthereisaduplicatedeploymentID%3F"></A>What happens if there is a duplicate deployment ID?</H1>
+
+<P>The deployment ID uniquely identifies the bean in the OpenEJB container system. Therefore, no two beans can share the same deployment ID.</P>
+
+<P>If a bean attempts to use a deployment ID that is already in use by another bean, the second bean and all beans in it&apos;s jar will not be loaded. In addition, the system will log a warning like the following one asking you to redeploy the jar and choose an different deployment ID for the bean.</P>
+
+<DIV class="panel"><DIV class="panelHeader"><B>openejb.log</B></DIV><DIV class="panelContent">
+<P>WARN : Jar C:\openejb\beans\fooEjbs.jar cannot be loaded.  The <BR>
+Deployment ID &quot;/my/bean/foo&quot; is already in use.  Please redeploy <BR>
+this jar and assign a different deployment ID to the bean with <BR>
+the ejb-name &quot;FooBean&quot;.</P>
+</DIV></DIV>
+
+<P>For example, the acmeEjbs.jar contains a bean with the ejb-name &quot;DaffyDuckBean&quot;. The disneyEjbs.jar contains contains a bean with the ejb-name &quot;DonaldDuckBean&quot;.</P>
+
+<P>We deploy the acmeEjbs.jar and give the &quot;DaffyDuckBean&quot; the deployment ID of &quot;/my/favorite/duck&quot;. Sometime afterwards, we deploy the disneyEjbs.jar and assign the &quot;DonaldDuckBean&quot; the deployment ID &quot;/my/favorite/duck&quot;, having forgotten that we already gave that unique ID to the &quot;DaffyDuckBean&quot; in the acmeEjbs.jar.</P>
+
+<P>When the container system is started, the system will begin loading all the beans one jar at a time. It will first load the acmeEjbs.jar and index each bean by deployment ID. But, when the system reaches the disneyEjbs.jar, it will discover that it cannot index the &quot;DonaldDuckBean&quot; using the deployment ID &quot;/my/favorite/duck&quot; because that index is already taken.</P>
+
+<P>The system cannot load the &quot;DonaldDuckBean&quot; and must also ignore the rest of the beans in the disneyEjbs.jar as they may need the &quot;DonaldDuckBean&quot; bean to function properly. The disneyEjbs.jar is skipped and the following warning is logged.</P>
+
+<DIV class="panel"><DIV class="panelHeader"><B>openejb.log</B></DIV><DIV class="panelContent">
+<P>WARN : Jar C:\openejb\beans\disneyEjbs.jar cannot be loaded.  The <BR>
+Deployment ID &quot;/my/favorite/duck&quot; is already in use.  Please redeploy <BR>
+this jar and assign a different deployment ID to the bean with <BR>
+the ejb-name &quot;DonaldDuckBean&quot;.</P>
+</DIV></DIV>
+            </DIV>
+        </DIV>
+    </DIV>
+     </P>
+    </TD>
+<!--    <td width="120" height="5" valign="top" align="left"></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://incubator.apache.org/openejb/images/dotTrans.gif" width="1" height="25" border="0"></TD>
+    <TD width="40" valign="top" align="left"><IMG src="http://incubator.apache.org/openejb/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://incubator.apache.org/openejb/images/dotTrans.gif" width="1" height="25" border="0"></TD>
+    <TD width="40" valign="top" align="left"><IMG src="http://incubator.apache.org/openejb/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://incubator.apache.org/openejb/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://incubator.apache.org/openejb/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://incubator.apache.org/openejb/images/line_light.gif" border="0" width="430" height="3"><BR>
+     <P>
+     </P>
+     <SPAN class="bodyGrey">
+     <SMALL><NOTICE><!-- $FOOTER -->
+Apache OpenEJB is an effort undergoing incubation at The Apache Software Foundation (ASF), sponsored by the Geronimo PMC. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the 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>
+  </BODY>
+ </HTML>

Added: incubator/openejb/trunk/website/html/deployments.html
URL: http://svn.apache.org/viewvc/incubator/openejb/trunk/website/html/deployments.html?view=auto&rev=450370
==============================================================================
--- incubator/openejb/trunk/website/html/deployments.html (added)
+++ incubator/openejb/trunk/website/html/deployments.html Wed Sep 27 00:53:16 2006
@@ -0,0 +1,368 @@
+
+ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<HTML>
+ <HEAD>
+  <!-- $PAGETITLE -->
+  <TITLE>OpenEJB - Deployments</TITLE>
+  <LINK href="http://people.apache.org/~dblevins/openejb/default.css" rel="stylesheet" type="text/css">
+  <LINK href="http://people.apache.org/~dblevins/openejb/style.css" rel="stylesheet" type="text/css">
+  <LINK rel="SHORTCUT ICON" href="http://incubator.apache.org/openejb/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">
+  <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://incubator.apache.org/openejb/images/dotTrans.gif" width="1" height="1" border="0"></TD>
+    <TD width="95" valign="top" align="left" bgcolor="#7270c2"><IMG src="http://incubator.apache.org/openejb/images/dotTrans.gif" width="1" height="1" border="0"></TD>
+    <TD width="7" valign="top" align="left"><IMG src="http://incubator.apache.org/openejb/images/dotTrans.gif" border="0" width="1" height="1"></TD>
+    <TD width="40" valign="top" align="left"><IMG src="http://incubator.apache.org/openejb/images/dotTrans.gif" width="40" height="6" border="0"></TD>
+    <TD width="100%" valign="top" align="left" bgcolor="#5A5CB8"><IMG src="http://incubator.apache.org/openejb/images/top_2.gif" width="430" height="6" border="0"></TD>
+    <TD width="120" valign="top" align="left" bgcolor="#E24717"><IMG src="http://incubator.apache.org/openejb/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://incubator.apache.org/openejb/images/dotTrans.gif" border="0" width="1" height="1"></TD>
+    <TD width="95" bgcolor="#7270c2" valign="top" align="left"><IMG src="http://incubator.apache.org/openejb/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://incubator.apache.org/openejb/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://incubator.apache.org/openejb/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://incubator.apache.org/openejb/images/dotTrans.gif" width="20" height="3" border="0"></TD>
+    <TD width="95" bgcolor="#7270c2" valign="top" align="left"><IMG src="http://incubator.apache.org/openejb/images/line_sm.gif" width="105" height="3" border="0"></TD>
+    <TD width="7" bgcolor="#a9a5de" valign="top" align="left"><IMG src="http://incubator.apache.org/openejb/images/line_sm.gif" width="7" height="3" border="0"></TD>
+    <TD width="40" valign="top" align="left"><IMG src="http://incubator.apache.org/openejb/images/line_light.gif" width="40" height="3" border="0"></TD>
+    <TD width="100%" valign="top" align="left"><IMG src="http://incubator.apache.org/openejb/images/line_light.gif" width="430" height="3" border="0"></TD>
+    <TD width="120" valign="top" align="left"><IMG src="http://incubator.apache.org/openejb/images/dotTrans.gif" border="0" width="1" height="1"></TD>
+   </TR>
+   <TR>
+    <TD bgcolor="#7270c2" valign="top" align="left"><IMG src="http://incubator.apache.org/openejb/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="quickstart.html" title="Quickstart">Quickstart</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="deploy-tool.html" title="Deploy Tool">Deployment</A></LI>
+	<LI><A href="startup.html" title="Startup">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="" title="Deployments">Deployments</A></LI>
+	<LI><A href="containers.html" title="Containers">Containers</A></LI>
+	<LI><A href="castor-cmp.html" title="Castor CMP">Castor CMP</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="help.html" title="Help">Help</A></LI>
+	<LI><A href="articles.html" title="Articles">Articles</A></LI>
+	<LI><A href="annoyances.html" title="Annoyances">Annoyances</A></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://incubator.apache.org/openejb/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://incubator.apache.org/openejb/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://incubator.apache.org/openejb/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://incubator.apache.org/">
+	              <IMG src="http://incubator.apache.org/images/apache-incubator-logo.png" border="0">
+	            </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://incubator.apache.org/openejb/images/dotTrans.gif"><BR>
+          <DIV id="page_title">
+            <TABLE width="100%">
+              <TR>
+                <TD>
+	<!-- $TITLE -->
+	Deployments
+                </TD>
+                 <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=Deployments">[ 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=26501&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://incubator.apache.org/openejb/images/dotTrans.gif"></TD>
+      </TR>
+     </TABLE>
+     <P>
+     <!-- $BODY -->
+            <DIV id="PageContent">
+        
+        <DIV class="pagecontent">
+            <DIV class="wiki-content">
+                
+<H1><A name="Deployments-The%27Deployments%27elementinopenejb.conf"></A>The &apos;Deployments&apos; element in openejb.conf</H1>
+
+<H2><A name="Deployments-Asinglejar"></A>A single jar</H2>
+
+<P>To include a single jar by name, just declare a &apos;Deployments&apos; element with a &apos;jar&apos; attribute pointing to the jar file on the file system.</P>
+
+<DIV class="code"><DIV class="codeHeader"><B>openejb.conf</B></DIV><DIV class="codeContent">
+<PRE class="code-xml"><SPAN class="code-tag">&lt;openejb&gt;</SPAN>
+...
+<SPAN class="code-tag">&lt;Deployments jar=<SPAN class="code-quote">&quot;c:\my\app\superEjbs.jar&quot;</SPAN> /&gt;</SPAN>
+<SPAN class="code-tag">&lt;Deployments jar=<SPAN class="code-quote">&quot;c:\someplace\purchasing.jar&quot;</SPAN> /&gt;</SPAN>
+<SPAN class="code-tag">&lt;Deployments jar=<SPAN class="code-quote">&quot;timeTrack.jar&quot;</SPAN> /&gt;</SPAN>
+<SPAN class="code-tag">&lt;/openejb&gt;</SPAN></PRE>
+</DIV></DIV>
+
+<P>The last element in the example uses a relative path to point to the ejb jar.  This path will be resolved relative to the openejb.base property.  So, for example, of the value of openejb.base was &apos;c:\timeapp\&apos; then OpenEJB would look for the jar &apos;c:\timeapp\timeTrack.jar&apos;.  See the <A href="configuration.html" title="Configuration">Configuration</A> guide for more details.</P>
+
+<H2><A name="Deployments-Adirectoryofjars"></A>A directory of jars</H2>
+
+<P>To point to a directory that contains several jar files that OpenEJB should load, simply declare a &apos;Deployments&apos; element with a &apos;dir&apos; attribute pointing to the directory containing the jar files.</P>
+
+<DIV class="code"><DIV class="codeHeader"><B>openejb.conf</B></DIV><DIV class="codeContent">
+<PRE class="code-xml"><SPAN class="code-tag">&lt;openejb&gt;</SPAN>
+...
+
+<SPAN class="code-tag">&lt;Deployments dir=<SPAN class="code-quote">&quot;c:\my\app\beans\&quot;</SPAN> /&gt;</SPAN>
+<SPAN class="code-tag">&lt;Deployments dir=<SPAN class="code-quote">&quot;c:\crimestopper\lib&quot;</SPAN> /&gt;</SPAN>
+<SPAN class="code-tag">&lt;Deployments dir=<SPAN class="code-quote">&quot;ejbs&quot;</SPAN> /&gt;</SPAN>
+<SPAN class="code-tag">&lt;Deployments dir=<SPAN class="code-quote">&quot;beans&quot;</SPAN> /&gt;</SPAN>
+<SPAN class="code-tag">&lt;/openejb&gt;</SPAN></PRE>
+</DIV></DIV>
+
+<P>The directories listed will be searched for jars containing &apos;META-INF/ejb-jar.xml&apos; files and will be added to the list of jars to load if they do.  Better said, it&apos;s completely save to point to a directory containing a mix of ejbs and regular jar files.  OpenEJB will simply skip over jars that do contain the required &apos;META-INF/ejb-jar.xml&apos; file.</P>
+
+<P>The last Deployments element declares a &apos;beans&apos; directory relative to openejb.base for holding ejb jars.  This declaration is simply convention and not required.</P>
+
+<H2><A name="Deployments-Anunpackedjar"></A>An unpacked jar</H2>
+
+<P>As of 1.0 beta1, OpenEJB supports unpacked ejb jars.  Simply meaning that you don&apos;t need to pack your ejb&apos;s into a jar file in order to use them in OpenEJB.  You still need to follow the ejb jar layout and include an &quot;META-INF/ejb-jar.xml&quot; in the directory that contains your ejbs.</P>
+
+<P>For example, if you have a directory structure like this:</P>
+
+<BLOCKQUOTE>
+<P>C:\myapp\<BR>
+C:\myapp\acmeEjbs\<BR>
+C:\myapp\acmeEjbs\META-INF\ejb-jar.xml<BR>
+C:\myapp\acmeEjbs\org\acme\Foo.class<BR>
+C:\myapp\acmeEjbs\org\acme\FooBean.class<BR>
+C:\myapp\acmeEjbs\org\acme\FooHome.class<BR>
+C:\myapp\acmeEjbs\org\acme\Bar.class<BR>
+C:\myapp\acmeEjbs\org\acme\BarBean.class<BR>
+C:\myapp\acmeEjbs\org\acme\BarHome.class</P></BLOCKQUOTE>
+
+<P>Then you would delcare a &apos;Deployments&apos; element with the &apos;dir&apos; attribute set to &apos;C:\myapp\acmeEjbs&apos; as shown below.</P>
+
+<DIV class="code"><DIV class="codeHeader"><B>openejb.conf</B></DIV><DIV class="codeContent">
+<PRE class="code-xml"><SPAN class="code-tag">&lt;openejb&gt;</SPAN>
+...
+
+<SPAN class="code-tag">&lt;Deployments dir=<SPAN class="code-quote">&quot;c:\myapp\acmeEjbs&quot;</SPAN> /&gt;</SPAN>
+<SPAN class="code-tag">&lt;/openejb&gt;</SPAN></PRE>
+</DIV></DIV>
+
+<P>Note that this syntax is the same as the directory syntax above.  If OpenEJB finds a META-INF directory with an &apos;ejb-jar.xml&apos; fine inside, then OpenEJB will treat the directory as an unpacked ejb jar.  Otherwise OpenEJB will look for ejb jar files to load as detailed in the above section.</P>
+
+<H1><A name="Deployments-Logfile"></A>Log file </H1>
+
+<P>When trying to figure out if your ejbs were loaded, the openejb.log file is an incredible asset.</P>
+
+<P>If your ejbs were loaded successfully you should see entries like the following (1.x and higher only):</P>
+
+<DIV class="panel"><DIV class="panelHeader"><B>openejb.log</B></DIV><DIV class="panelContent">
+<P>INFO :  Loaded EJBs from /usr/local/openejb-1.0-beta1/beans/openejb-itests-beans.jar<BR>
+INFO :  Loaded EJBs from /usr/local/openejb-1.0-beta1/beans/openejb-webadmin-clienttools.jar</P>
+</DIV></DIV>
+
+<P>If your ejbs failed to load, you will see an entry similar to the following.</P>
+
+<DIV class="panel"><DIV class="panelHeader"><B>openejb.log</B></DIV><DIV class="panelContent">
+<P>WARN :  Jar not loaded. /usr/local/openejb-1.0-beta1/beans/helloworld.jar.  Jar failed validation.  Use the validation tool for more details</P>
+</DIV></DIV>
+
+<P>Additionally, all the successfully loaded ejbs are individually listed in the log file at startup.  The Deployment ID listed is the JNDI name used to lookup the ejb from a client of the Local or Remote Servers.  The beans listed below are from our test suite.</P>
+
+<DIV class="preformatted"><DIV class="preformattedContent">
+<PRE>DEBUG:  Deployments       : 19
+DEBUG:  Type        Deployment ID
+DEBUG:     CMP_ENTITY  client/tests/entity/cmp/RMI-over-IIOP/EJBHome
+DEBUG:     STATEFUL    client/tests/stateful/EncBean
+DEBUG:     STATELESS   client/tests/stateless/BeanManagedBasicStatelessHome
+DEBUG:     STATEFUL    client/tests/stateful/BasicStatefulHome
+DEBUG:     STATELESS   client/tests/stateless/EncBean
+DEBUG:     STATEFUL    client/tests/stateful/BeanManagedTransactionTests/EJBHome
+DEBUG:     BMP_ENTITY  client/tests/entity/bmp/RMI-over-IIOP/EJBHome
+DEBUG:     STATEFUL    client/tests/stateful/RMI-over-IIOP/EJBHome
+DEBUG:     STATELESS   client/tests/stateless/BeanManagedTransactionTests/EJBHome
+DEBUG:     BMP_ENTITY  client/tests/entity/bmp/allowed_operations/EntityHome
+DEBUG:     CMP_ENTITY  client/tests/entity/cmp/EncBean
+DEBUG:     STATEFUL    client/tests/stateful/BeanManagedBasicStatefulHome
+DEBUG:     BMP_ENTITY  client/tests/entity/bmp/BasicBmpHome
+DEBUG:     STATELESS   client/tests/stateless/BasicStatelessHome
+DEBUG:     CMP_ENTITY  client/tests/entity/cmp/BasicCmpHome
+DEBUG:     STATELESS   client/tools/DatabaseHome
+DEBUG:     CMP_ENTITY  client/tests/entity/cmp/allowed_operations/EntityHome
+DEBUG:     BMP_ENTITY  client/tests/entity/bmp/EncBean
+DEBUG:     STATELESS   client/tests/stateless/RMI-over-IIOP/EJBHome
+</PRE>
+</DIV></DIV>
+            </DIV>
+        </DIV>
+    </DIV>
+     </P>
+    </TD>
+<!--    <td width="120" height="5" valign="top" align="left"></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://incubator.apache.org/openejb/images/dotTrans.gif" width="1" height="25" border="0"></TD>
+    <TD width="40" valign="top" align="left"><IMG src="http://incubator.apache.org/openejb/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://incubator.apache.org/openejb/images/dotTrans.gif" width="1" height="25" border="0"></TD>
+    <TD width="40" valign="top" align="left"><IMG src="http://incubator.apache.org/openejb/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://incubator.apache.org/openejb/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://incubator.apache.org/openejb/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://incubator.apache.org/openejb/images/line_light.gif" border="0" width="430" height="3"><BR>
+     <P>
+     </P>
+     <SPAN class="bodyGrey">
+     <SMALL><NOTICE><!-- $FOOTER -->
+Apache OpenEJB is an effort undergoing incubation at The Apache Software Foundation (ASF), sponsored by the Geronimo PMC. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the 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>
+  </BODY>
+ </HTML>