starting with java ee was never easier

16
1 Starting with Java EE was never easier Kaloyan Raev WTP PMC Member SAP Labs Bulgaria

Upload: kaloyan-raev

Post on 11-Jun-2015

4.488 views

Category:

Technology


2 download

DESCRIPTION

Java EE beginners typically find difficulties with starting with some simple, but meaningful application. The standard Java EE application consists of persistence layer, business logic, and nice-looking UI. This means that learning of several specifications like JPA, EJB, Servlet, JSP, JSF, etc is needed. It is hard to achieve basic understanding quickly. It takes days before beginners can construct this technology stack correctly on their own. There are lots of best practices and patterns already established in the Java EE development. It would be really helpful if we have them implemented as wizards in the IDE. Most of the needed operations are already there: for creating projects, beans, JSPs, etc. We just need the glue to assemble them in complete scenarios and unload beginners from the burden to find the correct order and parameters of the actions by themselves. Here comes the new Eclipse Pave project that has started its incubation recently. The initial contribution comes with a couple of patterns that enable developers to start playing with a complete Java EE application in a minute. However, the scope of the Eclipse Pave project is not limited to just Java EE. The project goal is to provide a framework that enables chaining of already existing operations in scenarios that a frequently executed by users. Especially, scenarios that have been established as best practices - we call them patterns. The second part of the talk we will take an overview of the Pave framework and what power it gives to plug-in developers to easily construct their own patterns by reusing the big variety of operations and wizard pages that are already defined in Eclipse. Note: This talk does not pretend to demonstrate any new features from the Galileo release, although some of them could be pointed in the context of demonstrations. This main goal of this talk is unveil what's cooking in the incubator at the moment. The demonstrated features are planned to be part of the 2010 (Helios) release.

TRANSCRIPT

Page 1: Starting with Java EE was never easier

1

Starting with Java EE was never easier

Kaloyan RaevWTP PMC MemberSAP Labs Bulgaria

Page 2: Starting with Java EE was never easier

2

Typical Java EE application design

Presentation

Business Logic

Persistency

Servlet, JSPJSF

EJB, JTAJMS, JNDI

JPA, JDBC

Problem: Too many technologies! Where to start from?

Page 3: Starting with Java EE was never easier

3

One possible implementation

JSF

EJB

JPA

JSF PagesMBeans

Session Bean CRUD Façade

JPA Entities

Solution: Follow well-established patterns!

Page 4: Starting with Java EE was never easier

4

The Eclipse Pave project

Frameworks for building patterns

DefinitionPattern – a frequently executed sequence of operations that transforms the state of the workspace in an error proof way by following well-established conventions.

Page 5: Starting with Java EE was never easier

5

Let’s start!

Download Eclipse IDE for Java EE Developers Add Eclipse Pave plug-ins

Configure Java EE application server (e.g. GlassFish) Configure Database (e.g. Derby)

Tutorial - EclipseLink/Derby/Glassfish

Page 6: Starting with Java EE was never easier

6

Eclipse IDE for Java EE Developers

Page 7: Starting with Java EE was never easier

7

Add Eclipse Pave plug-ins

Download http://eclipse.org/pave/downloads.php

Installation tutorial http://eclipse.org/pave/install.php

Page 8: Starting with Java EE was never easier

8

Model for the Demo application

Page 9: Starting with Java EE was never easier

9

WTP Commons

High-level architecture

Pave Core

Pave UI

WTP Data Model Framework Core

WTP Data Model Framework UI

exte

nds

exte

nds

uses

uses

Page 10: Starting with Java EE was never easier

10

Pattern action sequence

Page 11: Starting with Java EE was never easier

11

Why the WTP Data Model Framework?

Features Data Models provide an intelligent mechanism for data collection Data Model Operations simplify operation execution Data Model Wizards simplify wizard generation and extension

Extensible framework Widely adopted in WTP

Page 12: Starting with Java EE was never easier

12

Data Model Operations in WTP

Over 200 Data Model Operations in WTP More in adopter’s products

Use cases Creation of project and artifacts Import and Export Refactoring and Update Migration

Page 13: Starting with Java EE was never easier

13

Features

Framework Descriptive declaration of patterns – in plugin.xml Patterns are context sensitive Default UI entry point for patterns – the Apply Pattern wizards Patterns are extensible Synchronizers for Data Models Headless execution of patterns

Exemplary patterns Session CRUD Façade CRUD Application

Page 14: Starting with Java EE was never easier

14

Short-term plan

Submit project proposal. Construct web site with documentation and tutorials. Creation review. Prepare project infrastructure. Initial contribution and IP review. Release of version 0.5.

Release of version 0.7. This release includes changes in response to the community feedback.

Consider move to Eclipse WTP Commons, Eclipse Tools or Eclipse Platform and commit a Move review.

Page 15: Starting with Java EE was never easier

15

Future outlook

Graduate to mature project – version 1.0 Become part of the Common Discovery Site Become part of the Simultaneous Release Train

Expand data binding mechanisms JFace data binding EMF

More cool features Re-apply pattern Undo pattern

Page 16: Starting with Java EE was never easier

16

Links

http://eclipse.org/pave

http://wiki.eclipse.org/Pave