Enterprise Java Development@TOPIC@
Subset of JavaEE APIs targeted at key use cases
Share common underlying APIs for consistency
Provide smaller gates of entry for providers
Provide means to eliminate deprecated specs from concern
Risk fragmenting community and introducing confusion -- not taken lightly
WAR deployments
Only JavaEE profile to date
Required APIs
Servlet 3.0
JavaServer Pages (JSP) 2.2
Expression Language (EL) 2.2
Debugging Support for Other Languages (JSR-45)
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 for the Java EE Platform 1.0
Dependency Injection for Java 1.0
Noted Exclusions
JMS and Message-Driven Beans (MDBs)
Full EJB support, including remote interfaces and legacy 2.x capabilities
JAX-WS/SOAP endpoints
Different types
Deployed to client (Applets)
Deployed to data center (Servlets and EJBs)
Undefined deployment (App Clients)
GUI components typically running in browser
Access middle-tier indirectly thru Web container and HTTP
Generate content to browser from Web container
Can be UI/HTML-based
Can be service/XML (or other structured data forms)-based
May contain EJBs providing transactional support
Provide runtime support for JavaEE application components
Provide an interpose layer arround/between each component
Inject required components
Application developers may think of the Application Server==Container
Containers address specifics of the standards (e.g., deployment artifact structure)
System-level software component
Extends standard APIs into specific resources (e.g., JDBC)
Framework provided for:
Connection/Resource Pooling
Security Management
Transaction Management