-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256 Daniel,
On 3/10/14, 4:57 PM, Daniel Mikusa wrote: > On Mar 10, 2014, at 4:16 PM, Leo Donahue <donahu...@gmail.com> > wrote: > >> On Mon, Mar 10, 2014 at 12:58 PM, Mark H. Wood <mw...@iupui.edu> >> wrote: >> >>> It's probably worth asking what "full-fledged enterprise >>> applications" means. I'm not aware of any specification with >>> that title. >>> >>> >> That was a "Spring" term from the page I was reading, and the >> reason I asked the question. >> >> Tomcat itself is not a J(2)EE application server. I have been >> under the impression that one could successfully could implement >> *some* of the J(2)EE stack carefully on Tomcat through other >> means. > > True. You can use some parts of Java EE by simply including JAR > files in your app. Just to name a few JPA, JMS and / or Bean > Validation can be included this way. You don’t need Spring or even > a container to do this though. > >> Spring is one of those means? > > Spring doesn't provide implementations of the Java EE specs, rather > it aims to make using Java EE technologies easier. This is true > whether you deploy to a full stack Java EE container or Tomcat. > >> From what I've been reading about Spring in the last three days >> is it is essentially a bunch of design patterns turned into >> objects. Dependency Injection through patterns - I get that. >> The AOP part of Spring is basically a mechanism for applying >> object behavior to other objects without composition. I know i >> have that wording wrong, but essentially, AOP though the use of >> point-cuts lets me applying object behavior of logging to other >> objects without those objects being composed of my logging >> objects. I don't know how I would do that with a pattern, unless >> it is some kind of front controller pattern - but I don't know. > > By default, Spring does this with dynamic proxies. Because you > configure your beans and Spring creates them for you, it can easily > wrap them in a proxy and through the proxy apply additional > behaviors. This works good in a lot of cases, but does have > limitations. Because of this Spring also support aspectj, which > works through byte code manipulation. > >> So, Spring allows Tomcat to host "full-fledged enterprise >> applications" that would normally require a J(2)EE application >> server like Glassfish? That is what I was asking, without saying >> it specifically. > > Spring is a framework that aims to make your life as a developer > easier when writing complicated or large applications (although it > works nice for any size application). I’m not sure I would call it > a replacement for a JEE server like Glassfish though. If you have > an application that targets a JEE container like Glassfish or > WebSphere, Spring is not magically going to make that application > run in Tomcat. Having said that, if you write the same application > and use Spring instead of targeting a JEE container, many of the > things that would have tied you to a full stack JEE container can > be accomplished in smaller and lighter weight container like > Tomcat. Here's another plug for our friends over at TomEE, which adds enterprisey-features to Tomcat's existing servlet, JSP, and EL spec support by bundling and configuring other OSS components. Specifically: CDI - Apache OpenWebBeans EJB - Apache OpenEJB JPA - Apache OpenJPA JSF - Apache MyFaces JTA - Apache Geronimo Transaction Javamail - Apache Geronimo JavaMail Bean Validation - Apache BVal There's also a "Plus" version with some additional components for your enterprising pleasure. http://tomee.apache.org/apache-tomee.html - -chris -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 Comment: GPGTools - http://gpgtools.org Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/ iQIcBAEBCAAGBQJTHinpAAoJEBzwKT+lPKRY94AQAJ2eSFHYMCIM0ajX7Qd8zSau zhj5jn0yZSC7AfMtP5cMfTPY0Ah8i7nsfSTDjN7PccDDuTI2QwzHf6vu9ZHS0sH8 KRFSb5mtx8CofptjIoFjJcpmwVIE+OggBj5ldpbBNCeddvy42FBXBx1Mf56hL0io /REGN6RHpt3DpshNEv63OzuLLDezBwBTcp44oRdaiozSRDEpyVLb4/yahbg41bLT 39ICcCq8wZ1dO8VWt9naLaQpYAYDSQxcwtqYbHJgWlL1tL9aBvMgFbo/Y9+aCCJa EU5AiIzaaZLM04Yrhk3hYceajep1x5/JX3xKQt2jRo95N9ejHTQi9kBprdsGCTxq 5zQbdWD+9iDw8gg57mc1/qnUYTHXsz7shZh3aFTE70TTvUfNVj3fEMeKDrwdc5UJ /lhsY1IIE3z6ZZcw23WpAg9g9lBfes0eYgwSSuEMAarI8IlLLFYTCskO6v5X+XNL pYQ3iy52N7N/DxR0Rd7U+Ktyqi9oOIM6Aj9u7w/MgFBQAc+OPJlrAdi0PW5DE84x QTa/9V46s8/qA9nhZvrJZ4NedN6PInPwtYs8kuU1HbpOv/Y9CVWh2lXLahPiAjzR /Fznx41CrnDvE7kcN1P+yvo7jxhY+diaujW0p+MEUT9poqm9MbsW1+t8Pwq+uKw/ jsp3xWiKt68vAOIGM2wZ =fU+F -----END PGP SIGNATURE----- --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org