Apache Tomcat + Java EE = Apache TomEE
-
Upload
jacek-laskowski -
Category
Technology
-
view
9.562 -
download
3
Transcript of Apache Tomcat + Java EE = Apache TomEE
Apache TomEETomcat + Java EE
Jacek Laskowski
wersja 1.0, 24.10.2012
@JacekLaskowski
About me• Java EE, OSGi and functional programming with Clojure, F# and Scala
enthusiast
• Founder and leader of Warszawa Java User Group
• Javarsovia, Confitura, warsjawa conference team member
• Blogger of http://JacekLaskowski.pl
• Blogger of http://blog.japila.pl
• @JacekLaskowski
• Member of Apache Software Foundation
• Apache OpenEJB and TomEE committer
• Member of IBM Academy of Technology
• IBMer in World-wide WebSphere Competitive Migration Team
@jaceklaskowski
@JacekLaskowski
Thanks David Blevins and the Apache OpenEJB/TomEE
team for the hard work. You really rock!
@JacekLaskowski
Apache Tomcat is an open source software implementation of the Java Servlet and JavaServer
Pages technologies.
http://tomcat.apache.org
@JacekLaskowski
Java EE Web Profile (“Web Profile”) is a profile of the Java Platform, Enterprise Edition specifically
targeted at web applications.
Java™ Platform, Enterprise Edition 6 (Java EE 6) Web Profile Specification, page 1
Java EE 6 Web Profile specs• Servlet 3.0
• JavaServer Pages (JSP) 2.2
• Expression Language (EL) 2.2
• Debugging Support for Other Languages (JSR-45) 1.0
• Standard Tag Library for JavaServer Pages (JSTL) 1.2
• JavaServer Faces (JSF) 2.0
• Common Annotations for the Java Platform (JSR-250) 1.1
• Enterprise JavaBeans (EJB) 3.1 Lite
• Java Transaction API (JTA) 1.1
• Java Persistence API (JPA) 2.0
• Bean Validation 1.0
• Managed Beans 1.0
• Interceptors 1.1
• Contexts and Dependency Injection (CDI) for the Java EE Platform 1.0
• Dependency Injection for Java 1.0
@JacekLaskowski
What’s TomEE?
@JacekLaskowski
Apache TomEE, pronounced "Tommy", is an all-Apache Java EE 6 Web Profile certified stack where
Tomcat is top dog. Apache TomEE is assembled from a vanilla Apache Tomcat zip file. We start with Tomcat, add our jars and zip up the rest. The result is Tomcat
with added EE features - TomEE.
http://tomee.apache.org/index.html
Core values of TomEE
@JacekLaskowski
Core values of TomEE
@JacekLaskowski
Be small
Core values of TomEE
@JacekLaskowski
Be smallBe Tomcat
Core values of TomEE
@JacekLaskowski
Be smallBe TomcatBe certified
How much Tomcat changed?
@JacekLaskowski
Files modified - conf/server.xml
@JacekLaskowski
Files modified - conf/tomcat-users.xml
@JacekLaskowski
Files modified - conf/tomcat-users.xml
@JacekLaskowski
As a matter of fact, the change is only needed for webapps/tomee and hence optional
Files modified - conf/tomcat-users.xml
@JacekLaskowski
Files modified - conf/tomcat-users.xml
@JacekLaskowski
As a matter of fact, the change is only needed if using OpenJPA or EclipseLink with no build-time enhancements
and hence optional
Files modified - bin/setclasspath.sh
@JacekLaskowski
Files modified - bin/setclasspath.sh
@JacekLaskowski
As a matter of fact, the directory doesn’t exist whatsoever and is optional, too
Files removed
@JacekLaskowski
• lib/annotations-api.jar
• non-compliant, replaced by endorsed/annotations-api.jar
• lib/el-api.jar
• not needed, replaced by lib/javaee-api.jar
• webapps/examples/
• whim, could have easily been left there
TomEE releases• 1.0.0 Beta 1
• JavaOne 2011
• Entering the show
• 1.0.0 Beta 2
• January 2012
• Closing gaps
• 1.0.0 Final
• April 2012
• Nailed it
• Flood of feedback
• 1.5.0
• October 2012
• Lots and lots of conferences: JavaOne, JDD, JavaDay (UA), TopConf, JavaDay (LV)
@jaceklaskowski
Apache TomEE 1.0 Final Released!
@JacekLaskowski
https://blogs.apache.org/openejb/entry/apache_tomee_1_0_final
Projects involved
@JacekLaskowski
Apache TomEE
@JacekLaskowski
TomEE works with Tomcat tools• Tomcat support and hence TomEE
• NetBeans IDE and Eclipse IDE
• IntelliJ IDEA
• http://confluence.jetbrains.net/display/IDEADEV/IDEA+12+EAP - TomEE server intergation in Major changes in IntelliJ Idea 12
• YourKit, JRebel, NewRelic, etc...
• TomEE Maven Plugin
@JacekLaskowski
TomEE’s already available
@JacekLaskowski
Think, how longyou’d be doing
the integration work.
Website Traffic
@JacekLaskowski
Demos (TomEE+)• Servlet 3.0 with @WebServlet (and no web.xml)
• EJB 3.1 with @Stateless + @LocalBean + @EJB
• JAX-WS 2.0 with @WebService
• JAX-RS 1.0 with @Path + @GET
• CDI 1.0 with POJO + @Inject
• JSF 2.0 with @ManagedBean
• @Resource with a resource defined in Tomcat’s server.xml
• JPA 2.0 with MySQL and the samples in NetBeans IDE
• Web JPA (Java EE 6)
• Monitoring with JConsole
• Start TomEE outside NetBeans IDE@JacekLaskowski