Top Banner
Henri Kerola Vaadin Expert at Vaadin Ltd Getting to know Vaadin 26. lokakuuta 12
102

Getting to know Vaadin

Feb 03, 2022

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Getting to know Vaadin

Henri KerolaVaadin Expert at Vaadin Ltd

Getting to know Vaadin

26. lokakuuta 12

Page 2: Getting to know Vaadin

? 26. lokakuuta 12

Page 3: Getting to know Vaadin

26. lokakuuta 12

Page 4: Getting to know Vaadin

26. lokakuuta 12

Page 5: Getting to know Vaadin

26. lokakuuta 12

Page 6: Getting to know Vaadin

26. lokakuuta 12

Page 7: Getting to know Vaadin

Vaadin is a UI framework

for rich web applications

26. lokakuuta 12

Page 8: Getting to know Vaadin

Vaadin is a UI framework

for rich web applications

26. lokakuuta 12

Page 9: Getting to know Vaadin

26. lokakuuta 12

Page 10: Getting to know Vaadin

htmljava

26. lokakuuta 12

Page 11: Getting to know Vaadin

htmljava

26. lokakuuta 12

Page 12: Getting to know Vaadin

HistoryWhen What

2001 The framework is born

2002 Released as Open Source

2005 Ajax based rendering

2008 Google Web Toolkit rendering

2009 Renamed to Vaadin

2010 Add-ons

26. lokakuuta 12

Page 13: Getting to know Vaadin

HistoryWhen What

2001 The framework is born

2002 Released as Open Source

2005 Ajax based rendering

2008 Google Web Toolkit rendering

2009 Renamed to Vaadin

2010 Add-ons

26. lokakuuta 12

Page 14: Getting to know Vaadin

HistoryWhen What

2001 The framework is born

2002 Released as Open Source

2005 Ajax based rendering

2008 Google Web Toolkit rendering

2009 Renamed to Vaadin

2010 Add-ons

26. lokakuuta 12

Page 15: Getting to know Vaadin

HistoryWhen What

2001 The framework is born

2002 Released as Open Source

2005 Ajax based rendering

2008 Google Web Toolkit rendering

2009 Renamed to Vaadin

2010 Add-ons

26. lokakuuta 12

Page 16: Getting to know Vaadin

HistoryWhen What

2001 The framework is born

2002 Released as Open Source

2005 Ajax based rendering

2008 Google Web Toolkit rendering

2009 Renamed to Vaadin

2010 Add-ons

26. lokakuuta 12

Page 17: Getting to know Vaadin

HistoryWhen What

2001 The framework is born

2002 Released as Open Source

2005 Ajax based rendering

2008 Google Web Toolkit rendering

2009 Renamed to Vaadin

2010 Add-ons

26. lokakuuta 12

Page 18: Getting to know Vaadin

ApacheLicense

26. lokakuuta 12

Page 19: Getting to know Vaadin

Key Ideas

26. lokakuuta 12

Page 20: Getting to know Vaadin

123Key Ideas

26. lokakuuta 12

Page 21: Getting to know Vaadin

RichComponents

26. lokakuuta 12

Page 22: Getting to know Vaadin

1RichComponents

26. lokakuuta 12

Page 23: Getting to know Vaadin

User InterfaceData Source

Theme

26. lokakuuta 12

Page 24: Getting to know Vaadin

User InterfaceData Source

Theme

26. lokakuuta 12

Page 27: Getting to know Vaadin

26. lokakuuta 12

Page 28: Getting to know Vaadin

26. lokakuuta 12

Page 29: Getting to know Vaadin

26. lokakuuta 12

Page 30: Getting to know Vaadin

26. lokakuuta 12

Page 31: Getting to know Vaadin

26. lokakuuta 12

Page 32: Getting to know Vaadin

26. lokakuuta 12

Page 33: Getting to know Vaadin

26. lokakuuta 12

Page 34: Getting to know Vaadin

User InterfaceData Source

Theme

26. lokakuuta 12

Page 35: Getting to know Vaadin

User InterfaceData Source

Theme

26. lokakuuta 12

Page 40: Getting to know Vaadin

User IntefaceData Source

Theme

26. lokakuuta 12

Page 41: Getting to know Vaadin

User IntefaceData Source

Theme

26. lokakuuta 12

Page 42: Getting to know Vaadin

26. lokakuuta 12

Page 43: Getting to know Vaadin

InMemory, Bean, Method, Collection, JDBC, JPA, Hibernate, TextFile, FileSystem, Properties, EclipseLink, Lucene, Mockups, GAE, ...

26. lokakuuta 12

Page 44: Getting to know Vaadin

Server + Client

26. lokakuuta 12

Page 45: Getting to know Vaadin

2Server + Client

26. lokakuuta 12

Page 46: Getting to know Vaadin

Layers of abstraction

JavaScriptJava to

JavaScriptWeb

serverBackend

serverRPC

26. lokakuuta 12

Page 47: Getting to know Vaadin

Layers of abstraction

JavaScriptJava to

JavaScriptWeb

serverBackend

serverRPC

required optionalrequired

GW

T

requiredrequired

26. lokakuuta 12

Page 48: Getting to know Vaadin

Layers of abstraction

JavaScriptJava to

JavaScriptWeb

serverBackend

server

required optional optionalrequired

RPC

optional

Vaadin

required optionalrequired

GW

T

requiredrequired

26. lokakuuta 12

Page 49: Getting to know Vaadin

Layers of abstraction

JavaScriptJava to

JavaScriptWeb

serverBackend

server

required optional optionalrequired

RPC

optional

Vaadin

required optionalrequired

GW

T

requiredrequired

Ext

JS

requiredrequired

required required

26. lokakuuta 12

Page 50: Getting to know Vaadin

Vaadin += GWT

26. lokakuuta 12

Page 51: Getting to know Vaadin

26. lokakuuta 12

Page 52: Getting to know Vaadin

26. lokakuuta 12

Page 53: Getting to know Vaadin

26. lokakuuta 12

Page 54: Getting to know Vaadin

GWTCompatible

26. lokakuuta 12

Page 55: Getting to know Vaadin

Server-

Client-si

deO

ptim

ized fo

r

Prod

uctivity

Optim

ized for

Con

trol

26. lokakuuta 12

Page 56: Getting to know Vaadin

Server-

Client-side

Optim

ized for

Pro

duc

tivity

Optim

ized fo

r

Control

26. lokakuuta 12

Page 57: Getting to know Vaadin

Architecture

26. lokakuuta 12

Page 58: Getting to know Vaadin

26. lokakuuta 12

Page 59: Getting to know Vaadin

26. lokakuuta 12

Page 60: Getting to know Vaadin

26. lokakuuta 12

Page 61: Getting to know Vaadin

26. lokakuuta 12

Page 62: Getting to know Vaadin

26. lokakuuta 12

Page 63: Getting to know Vaadin

26. lokakuuta 12

Page 64: Getting to know Vaadin

26. lokakuuta 12

Page 65: Getting to know Vaadin

EmbracingJava

26. lokakuuta 12

Page 66: Getting to know Vaadin

3EmbracingJava

26. lokakuuta 12

Page 67: Getting to know Vaadin

Servlet Portlet

(most) clouds

26. lokakuuta 12

Page 68: Getting to know Vaadin

Internet ExplorerChromeFirefoxSafariOpera

iOSAndroid

26. lokakuuta 12

Page 69: Getting to know Vaadin

Apache Tomcat, version 4.1 or later

Oracle WebLogic Server, version 9.2 or later

Oracle WebLogic Portal, version 10gR3

IBM WebSphere Application Server, version 6.1 or later

IBM WebSphere Portal, version 6.1 and 7.0

JBoss Application Server, version 3.2.8 or later

Jetty, version 5 or later

Glassfish, version 2 or later

Liferay Portal 5.2 or later

GateIn Portal 3.1

eXo Platform 3

Google App Engine

Vaadin supports Java Servlet API 2.3 and JSR-168 and JSR-286 Portlet Specifications and should work with any Java application server that conforms to these standards.

26. lokakuuta 12

Page 70: Getting to know Vaadin

Nobrowserplugins

Nothing toinstall

26. lokakuuta 12

Page 71: Getting to know Vaadin

EclipseIntelliJ IDEA

NetbeansMaven

AntSpring Roo

∙ ∙ ∙

26. lokakuuta 12

Page 72: Getting to know Vaadin

26. lokakuuta 12

Page 73: Getting to know Vaadin

gettingstarted

26. lokakuuta 12

Page 74: Getting to know Vaadin

gettingstarted

26. lokakuuta 12

Page 75: Getting to know Vaadin

26. lokakuuta 12

Page 76: Getting to know Vaadin

mvn archetype:generate-DarchetypeGroupId=com.vaadin

-DarchetypeArtifactId=

vaadin-archetype-application

-DarchetypeVersion=7.0.0.beta5

Maven

26. lokakuuta 12

Page 77: Getting to know Vaadin

mvn archetype:generate-DarchetypeGroupId=com.vaadin

-DarchetypeArtifactId=

vaadin-archetype-application

-DarchetypeVersion=7.0.0.beta5

Maven

yourproject-1.0.warmvn package

26. lokakuuta 12

Page 78: Getting to know Vaadin

Eclipse

26. lokakuuta 12

Page 80: Getting to know Vaadin

Example

26. lokakuuta 12

Page 81: Getting to know Vaadin

Example

26. lokakuuta 12

Page 82: Getting to know Vaadin

26. lokakuuta 12

Page 83: Getting to know Vaadin

26. lokakuuta 12

Page 84: Getting to know Vaadin

26. lokakuuta 12

Page 85: Getting to know Vaadin

26. lokakuuta 12

Page 86: Getting to know Vaadin

Vaadin Framework7

26. lokakuuta 12

Page 87: Getting to know Vaadin

Em

po

we

r D

eve

lope

rs

Em

bra

ce

Ext

endabilit

y

Cle

an U

p

26. lokakuuta 12

Page 88: Getting to know Vaadin

Em

po

we

r D

eve

lope

rsView Management Redesign

• View management API• Multi-tab support by default

26. lokakuuta 12

Page 89: Getting to know Vaadin

26. lokakuuta 12

Page 90: Getting to know Vaadin

26. lokakuuta 12

Page 91: Getting to know Vaadin

Em

po

we

r D

eve

lope

rsFull CSS Control

• Layout calculations are managed by browser • Improved performance • Support border/margin/... • Drop support for IE6/IE7• CSS abstraction language

26. lokakuuta 12

Page 92: Getting to know Vaadin

26. lokakuuta 12

Page 93: Getting to know Vaadin

Variables & functions

26. lokakuuta 12

Page 94: Getting to know Vaadin

Em

po

we

r D

eve

lope

rsGlue for Integrations

• Publish JavaScript API from the server-side • Integrate easily with the rest of the web page• Centralized shared resource loading (JS/CSS)

26. lokakuuta 12

Page 95: Getting to know Vaadin

getPage().getJavaScript().addFunction("myCallback", new JavaScriptFunction() { public void call(JSONArray arguments) throws JSONException { // Do something with arguments } });

Publish

window.myCallback('foo', 100);Use

26. lokakuuta 12

Page 96: Getting to know Vaadin

Em

po

we

r D

eve

lope

rs

Em

bra

ce

Ext

endabilit

y

26. lokakuuta 12

Page 97: Getting to know Vaadin

Em

po

we

r D

eve

lope

rs

Em

bra

ce

Ext

endabilit

y Easier Client-ServerCommunications

• Client-server RPC API• Shared state API• Phase out “variables” and “attributes”

26. lokakuuta 12

Page 98: Getting to know Vaadin

Em

po

we

r D

eve

lope

rs

Em

bra

ce

Ext

endabilit

y Generic JavaScriptWidget Wrapper

• Convert existing 3rd party widgets to Vaadin • GWT compilation not required

26. lokakuuta 12

Page 99: Getting to know Vaadin

Em

po

we

r D

eve

lope

rsE

mbra

ce

Ext

endabilit

yC

lean U

p

26. lokakuuta 12

Page 100: Getting to know Vaadin

Em

po

we

r D

eve

lope

rsE

mbra

ce

Ext

endabilit

yC

lean U

p

Data Binding andForm redesign

• Form binding and layout are cleanly separated• Explicit property convertters• Two phase commit support• Built-in JSR-303 validations

26. lokakuuta 12

Page 101: Getting to know Vaadin

Em

po

we

r D

eve

lope

rsE

mbra

ce

Ext

endabilit

yC

lean U

p

Client-side

• Decouple communication from core widgets thoughtout Vaadin 7 series • Client-side compositions • Support GWT Designer

26. lokakuuta 12

Page 102: Getting to know Vaadin

3

Vaadin: A Familiar Way to Build Web Apps with Java

DZone, Inc. | www.dzone.comFigure 4: The Class Diagram presents all user interface component classes and the most important interfaces, relationships, and methods.

Questions?Comments?

[email protected]@henrikerola

26. lokakuuta 12