JavaOne 2013 - Apache TomEE, Java EE Web Profile {and more} on Tomcat

Preview:

DESCRIPTION

Having made its Java EE 6 Web Profile certification debut at JavaOne 2011 and having won a JavaOne Rock Star award in 2012, Apache TomEE combines the simplicity of Tomcat with the power of Java EE. This updated presentation traverses the world of TomEE and shows how Tomcat applications leveraging Java EE technologies can become simpler and lighter with a Java EE–certified solution built right on Tomcat. The first part jumps right into action and gives a coding tour of TomEE, including quickly bootstrapping projects, doing proper testing with Arquillian, and setting up environments. The second part gives insight into how TomEE was created and explores the budding TomEE ecosystem of tools, platforms, and the latest community advancements.

Citation preview

#TomEE @dblevins

Apache TomEE,Java EE 6 Web Profile{and more} on Tomcat

David Blevins@dblevins#TomEE

Friday, October 18, 13

#TomEE @dblevins

Good decisions come from experience, ...

Friday, October 18, 13

#TomEE @dblevins

and experience comes from bad decisions.

Friday, October 18, 13

#TomEE @dblevins

(thank you, Michael)

Friday, October 18, 13

#TomEE @dblevins

Did you say J2EE?

Friday, October 18, 13

#TomEE @dblevins

Some things you might have missed....

Friday, October 18, 13

#TomEE @dblevins

Milestone changes...• Now Java EE• Is it Istanbul or Constantinople?

• Web Profile• Cuts Java EE in half

• EARs are dead• Long live war files

• Testable• Embedded Containers• Arquillian

Friday, October 18, 13

#TomEE @dblevins

What is Apache TomEE?

Friday, October 18, 13

#TomEE @dblevins

What is TomEE?• Tomcat + Java EE = TomEE

• Pronounced “Tommy”

• Java EE 6 Web Profile certified• Java EE 7 in progress

• Built from All-Apache Components

• What we’ve all been building ourselves• ... for years

Friday, October 18, 13

#TomEE @dblevinsFriday, October 18, 13

#TomEE @dblevins

Apache Components• OpenWebBeans

• OpenJPA

• OpenEJB

• MyFaces

• BVal

• CXF

• ActiveMQ

Friday, October 18, 13

#TomEE @dblevins

Apache Components• CDI OpenWebBeans

• JPA OpenJPA

• EJB OpenEJB

• JSF MyFaces

• Bean Validation BVal

• JAX-RS, JAX-WS CXF

• JMS ActiveMQ

Friday, October 18, 13

#TomEE @dblevins

TomEE Goals• Be simple• Avoid complexity and making users work

• Be Tomcat• Should work with Tomcat tools and apps

• Be Certified• Drop-in replacement for any Java EE Web Profile

server

Friday, October 18, 13

#TomEE @dblevins

The Jars are there...that’s integration, right?

Friday, October 18, 13

#TomEE @dblevins

JPA Servlets

JAXRSCDI

Friday, October 18, 13

#TomEE @dblevins

JPA Servlets

JAXRSCDI

Friday, October 18, 13

Very Hard

#TomEE @dblevins

JPA Servlets

JAXRSCDI

Friday, October 18, 13

#TomEE @dblevins

JPA

Servlets

JAXRSCDI

BatchBatch

NeverStops

Friday, October 18, 13

#TomEE @dblevins

Spend your time writing applications...

Friday, October 18, 13

#TomEE @dblevins

not writing application servers.

Friday, October 18, 13

#TomEE @dblevins

What is Certification?

Friday, October 18, 13

#TomEE @dblevins

Certification• Months and months of work

• Thousands and thousands of tests

• Passed by All Java EE Platforms/Vendors• Oracle WebLogic / GlassFish• IBM WebSphere / WebSphere CE• RedHat JBoss• Apache TomEE / Apache Geronimo

• Amazon EC2• t1.micros 613MB, run with default jvm memory• Raspberry PI Model B (new)

Friday, October 18, 13

#TomEE @dblevins

Show me the code!

Friday, October 18, 13

#TomEE @dblevins

YAP PetStore• Written by Antonio Goncalves

• No 3rd party libraries (sans Arquillian)• JPA• Bean Validation• CDI• JAX-RS• EJB• JSF

Friday, October 18, 13

#TomEE @dblevins

...and more• Arquillian

• TomEE Maven Plugin

• I must be insane to show this but... new ideas• Abstract Beans• Meta-Annotations• WARNING: Probably will not WORK! Days old!

Friday, October 18, 13

#TomEE @dblevins

Java EE 7

Friday, October 18, 13

#TomEE @dblevins

ActiveMQ 6.0

OpenJPA 3.0

OpenWebBeans 2

2014Q1 Q2Q3 Q4

MyFaces 2.2

Tomcat 8

BVal 1.1

CXF 3.0

Friday, October 18, 13

#TomEE @dblevins

ActiveMQ 6.0

OpenJPA 3.0

OpenWebBeans 2

2014Q1 Q2Q3 Q4

MyFaces 2.2

Tomcat 8

BVal 1.1

CXF 3.0

Friday, October 18, 13

#TomEE @dblevins

Tools and Platforms

Friday, October 18, 13

#TomEE @dblevinsFriday, October 18, 13

Friday, October 18, 13

#TomEE @dblevins

thank you!tomee.apache.org

David Blevins / Apache / Tomitirbe

Friday, October 18, 13

Recommended