Author: vishwanathk
Date: Sun Apr  1 00:08:44 2012
New Revision: 1307948

URL: http://svn.apache.org/viewvc?rev=1307948&view=rev
Log:
update deploying-in-tomee docs

Modified:
    openejb/site/trunk/content/deploying-in-tomee.mdtext

Modified: openejb/site/trunk/content/deploying-in-tomee.mdtext
URL: 
http://svn.apache.org/viewvc/openejb/site/trunk/content/deploying-in-tomee.mdtext?rev=1307948&r1=1307947&r2=1307948&view=diff
==============================================================================
--- openejb/site/trunk/content/deploying-in-tomee.mdtext (original)
+++ openejb/site/trunk/content/deploying-in-tomee.mdtext Sun Apr  1 00:08:44 
2012
@@ -25,5 +25,54 @@ how to use TomEE along with Eclipse.
 
 Or you could simply package your application as a war/ear and "drop it in" 
tomee/webapps folder.
 
-### Related docs:
-[Collapsed EAR](collapsed-ear.html) describles how packaging in EAR is no 
longer needed, and how your EJBs/Servlets could reside in the same WAR.
\ No newline at end of file
+On a related note, read on to learn about packaging EJBs in a WAR.
+
+### Packaging
+
+<a name="CollapsedEAR-Onearchive"></a>
+# One archive
+
+The basic idea of this approach is that your Servlets and EJBs are together
+in your WAR file as one app.
+-No classloader boundries between Servlets and EJBs
+-EJBs and Servlets can share all third-party libraries (like Spring\!) -
+no EAR required.
+-Can put the web.xml and ejb-jar.xml in the same archive (the WAR file).
+-EJBs can see Servlet classes and vice versa.
+
+<a name="CollapsedEAR-NotquiteJ2EE(itistrulyJEE6)"></a>
+# Not quite J2EE (it is truly JEE6)
+
+This is very different than J2EE or Java EE 5 as there aren't several
+levels of separation and classloader hierarchy.  This is going to take some
+getting used to and it should be understood that this style of packaging
+isn't J2EE compliant. Who would care tough as it is a feature of Java EE 6
+we would've been waiting for so long.
+
+ J2EE classloading rules:
+-You cannot ever have EJBs and servlets in the same classloader.
+
+-Three classloader minimum; a classloader for the ear, one for each
+ejb-jar, and one for each WAR file.
+
+-Servlets can see EJBs, but EJBs cannot see servlets.
+
+ To pull that off, J2EE has to kill you on packaging:
+-You cannot have EJB classes and Servlet classes in the same archive.
+
+-You need at least three archives to combine servlets and ejbs; 1 EAR
+containing 1 EJB jar and 1 servlet WAR.
+
+-Shared libraries must go in the EAR and be included in a specially
+formatted 'Class-Path' entry in the EAR's MANIFEST file.
+
+ Critically speaking, forcing more than one classloader on an application
+is where J2EE "jumps the shark" for a large majority of people's needs.
+
+<a name="CollapsedEAR-ExamplewithTomcat"></a>
+# Example with Tomcat
+
+If you want to try to work with Servlets/JSP and OpenEJB using Tomcat, see
+the [setup page](openejbx30:tomcat.html)
+ and the "/webapps/ejb-examples" section of the [openejb-examples.zip|Download]
+ available on the download page.


Reply via email to