by Ales Justin
Google App Engine (GAE) is among the most popular cloud application platforms today, offering decent service at a low price point or even no cost at all. Unfortunately, however, its Java environment is also a fairly restrictive. For instance, you can't write files, make arbitrary network connections, or spawn threads.
This talk presents a number of tips and tricks on how to use top JavaEE specs--CDI, JPA, JSF2, and BeanValidation, for instance--within GAE's restrictive sandbox while still benefitting from the highly scalable environment it provides and maintaining portability to other JavaEE containers. We will demonstrate how CDI can be used to abstract from GAE's services and how state-of-the-art testing frameworks such as ShrinkWrap and Arquillian can be made to work with such an application.
Key takeaway is that JavaEE on GAE is not only possible, but also good engineering practice.
This presentation is a case study on the compatibility strength of merging the Scala programming language with CDI (JSR 299: Contexts and Dependency Injection for the Java EE platform). CDI is a Dependency Injection framework that is inspired by the Seam, Spring, and Guice frameworks. It integrates with technologies like JavaServer Faces (JSF) 2.0, Enterprise Java Beans (EJB) 3.1, the Java Persistence API (JPA) 2.0 and JAX-RS (Java API for RESTful Web Services) 1.1 and does so in a type-safe manner. Scala and other functional programming languages depend heavily on type safety. It is because of CDI’s type safety that this presentation will be valuable.
CDI is the glue of the Java EE 6 Platform, bringing each of the independent EE technologies together into a cohesive whole. However, the integration falls short in JSF, arguably where it's needed the most. Seam Faces further integrates JSF and CDI and leverages frameworks such as PrettyFaces to make JSF a full-featured web application framework and the JSF developer's life easier.
by Dan Allen
This talk reintroduces Seam as a portable, modular and type-safe framework built atop CDI: Contexts and Dependency Injection for Java EE. We look at how and why Seam 2 evolved into CDI. You're given a brief tour of the CDI programming model and learn how it unifies, enhances and extends Java EE platform. Then you see how Seam 3 takes it further. Discover the possibilities Seam brings to Java EE.
by Dan Allen
This talk unveils the missing link in enterprise Java development: simple, portable integration tests. While development life is simple with unit tests and mocks, they only take you so far. Arquillian, a container-oriented testing framework layered atop TestNG and JUnit, tears down this barrier. It brings your test to the runtime rather than requiring you to manage the runtime from your test.
20th–23rd June 2011