SlideShare a Scribd company logo
Criando uma aplicação
HTML5 com Java EE 7 e
WebSockets
Bruno Borges
Principal Product Manager
Java Evangelist
Copyright © 2014, Oracle and/or its affiliates. All rights reserved.3
• Java Evangelist
• Orale Product Manager
• Entusiasta JavaFX e IoT
• Onde me encontrar
• @brunoborges
• plus.google.com/+BrunoBorges
Bruno Borges
Copyright © 2014, Oracle and/or its affiliates. All rights reserved.4
Ascenção do Javascript
• O debate cliente ‘leve’ vs cliente ‘pesado’ é antigo...
• Frameworks web server-side mandaram por um tempo (Struts, Spring
MVC, JSF)
• Ajax foi uma mudança suave para o client-side (GWT, Vaadin)
• Rich clients estão voltando voltaram, graças ao Javascript/HTML5
• Motores Javascript melhoraram muito (V8, SpiderMonkey, Nashorn)
• Melhores ferramentas (jQuery, MV* frameworks, Chrome, Firefox, JavaFX)
• Melhores padrões (CSS3, HTML5, WebSockets, Web Components)
Clientes ricos HTML5
Copyright © 2014, Oracle and/or its affiliates. All rights reserved.5
Arquitetura Rich Client
• Similar a arquiteturas cliente/servidor
• Cliente responsável pela UI, input, validacao, lógica e estado
• Server responsável pela lógica de negócio, modelo de domínio, persistência
• Web/HTTP é a cola que conecta client e server
• Protocolos de comunicacao comuns
• REST na maioria dos casos
• WebSocket quando precisa de comunicacao full-duplex
• Ferramentas Javascript suportam REST muito bem, mas ainda não WebSocket
• O formato comum (talvez ideal?) de troca de dados é JSON
• Java EE é uma ótima plataforma server-side para esta arquitetura
Copyright © 2014, Oracle and/or its affiliates. All rights reserved.6
Java EE + Javascript
Plataforma server-side para suportar apps ricas HTML5/Javascript
Servlet
EJB 3 CDI
BeanValidation
JavaScript/HTML5
JAX-RS WebSockets JSON-P JAXB
JPA JMS JTA JCA
Copyright © 2014, Oracle and/or its affiliates. All rights reserved.7
JAX-RS
• API de desenvolvimento REST para Java
• Servidor e Client
• Orientada a Annotations, declarativa
• @Path, @GET, @POST, @PUT, @DELETE, @PathParam, @QueryPara
m, @Produces, @Consumes
• Plugável e extensível
• Providers, filters, interceptors
Copyright © 2014, Oracle and/or its affiliates. All rights reserved.8
JAX-RS
@Path("/atm/{cardId}")
public class AtmService {
@GET
@Path("/balance")
@Produces("text/plain")
public String balance(
@PathParam("cardId") String card,
@QueryParam("pin") String pin) {
return Double.toString(getBalance(card, pin));
}
Exemplo 1
Copyright © 2014, Oracle and/or its affiliates. All rights reserved.9
JAX-RS
@POST
@Path("/withdrawal")
@Consumes("text/plain")
@Produces("application/json")
public Money withdraw(
@PathParam("card") String card,
@QueryParam("pin") String pin,
String amount) {
return getMoney(card, pin, amount);
}
}
Exemplo 2
Copyright © 2014, Oracle and/or its affiliates. All rights reserved.10
Java API for WebSockets
JSR 356
Copyright © 2014, Oracle and/or its affiliates. All rights reserved.11
Java API for WebSockets
• Protocolo HTTP é half-duplex
• Gambiarras
• Polling
• Long polling
• Streaming
• WebSocket resolve o problema de uma vez por todas
• Full-duplex
JSR 356
Copyright © 2014, Oracle and/or its affiliates. All rights reserved.12
Java API for WebSockets
• API declarativa de alto nivel para WebSockets
• Client e server-side
• Pequena e simples, mas completa
• @ServerEndpoint, @OnOpen, @OnClose, @OnMessage, @OnError, Ses
sion, Remote
• Plugável e extensível
• Encoders, decoders, sub-protocols
Copyright © 2014, Oracle and/or its affiliates. All rights reserved.13
Java API for WebSockets
@ServerEndpoint("/chat")
public class ChatBean {
Set<Session> peers = Collections.synchronizedSet(…);
@OnOpen
public void onOpen(Session peer) {
peers.add(peer);
}
@OnClose
public void onClose(Session peer) {
peers.remove(peer);
}
Exemplo 1
Copyright © 2014, Oracle and/or its affiliates. All rights reserved.14
Java API for WebSockets
@OnMessage
public void message(String message, Session client) {
peers.forEach(
p -> p.getRemote().sendObject(message)
);
}
Copyright © 2014, Oracle and/or its affiliates. All rights reserved.15
Javascript Movers and Shakers
Copyright © 2014, Oracle and/or its affiliates. All rights reserved.16
Projeto Avatar
• Javascript framework da Oracle
• Javascript no client e no server-side
• Nashorn/JDK8
• Utiliza algumas capacidades do Java EE
• Roda no GlassFish, e em breve no WebLogic também
• Suporte já integrado para REST, WebSocket, Server-Sent Events
(SSE)
• Suporte a PhoneGap
• Versão 1.0 já disponível. Bom momento para participar!
avatar.java.net
Copyright © 2014, Oracle and/or its affiliates. All rights reserved.17
Projetos no NetBeans
• Twitter Bootstrap
• HTML5 Boilerplate
• Initializr
• AngularJS
• Mobile Boilerplate
Copyright © 2014, Oracle and/or its affiliates. All rights reserved.18
Demo
•github.com/brunoborges/javaee-javascript
Copyright © 2014, Oracle and/or its affiliates. All rights reserved.19
Conclusão
• Cientes JavaScript/HTML5 conquistando desenvolvedores
• Comunicacao entre cliente e servidor em JSON via REST ou WebSocket
• Java EE funciona muito bem como um backend para clientes ricos
Javascript, especialmente com JAX-RS e a Java API para WebSockets, e
JSON-P
• JavaScript framework da Oracle – Projeto Avatar
• Você opde usar o código de demonstracão para comecar a explorar estas
idéias
• E o mais importante, divirta-se programando! :-)
Copyright © 2014, Oracle and/or its affiliates. All rights reserved.20
• glassfish.org
• Java EE 7
• Suporte a JDK 8
• Projeto Avatar
GlassFish Nightly Builds
GlassFish 4.0.1
Copyright © 2014, Oracle and/or its affiliates. All rights reserved.21
Para saber mais
• Java EE Tutorials
• http://docs.oracle.com/javaee/7/tutorial/doc/home.htm
• Outras páginas para iniciar os estudos
• http://docs.oracle.com/javaee/7/firstcup/doc/home.htm
• https://glassfish.java.net/hol/
• https://java.net/projects/cargotracker/
• Java EE 7 Transparent Expert Groups
• http://javaee-spec.java.net
• The Aquarium (blog Java EE da Oracle)
• http://blogs.oracle.com/theaquarium
Copyright © 2014, Oracle and/or its affiliates. All rights reserved.23
The preceding is intended to outline our general product direction. It is intended
for information purposes only, and may not be incorporated into any contract.
It is not a commitment to deliver any material, code, or functionality, and should
not be relied upon in making purchasing decisions. The
development, release, and timing of any features or functionality described for
Oracle’s products remains at the sole discretion of Oracle.
Copyright © 2014, Oracle and/or its affiliates. All rights reserved.24
Copyright © 2014, Oracle and/or its affiliates. All rights reserved.25

More Related Content

PDF
Aplicações HTML5 com Java EE 7 e NetBeans
PDF
Java API for WebSocket 1.0: Java EE 7 and GlassFish
PPTX
Move from J2EE to Java EE
PDF
What's coming in Java EE 8
PDF
Best Way to Write SQL in Java
PDF
How Scala, Wicket, and Java EE Can Improve Web Development
PPT
Have You Seen Java EE Lately?
PDF
Java EE Revisits GoF Design Patterns
Aplicações HTML5 com Java EE 7 e NetBeans
Java API for WebSocket 1.0: Java EE 7 and GlassFish
Move from J2EE to Java EE
What's coming in Java EE 8
Best Way to Write SQL in Java
How Scala, Wicket, and Java EE Can Improve Web Development
Have You Seen Java EE Lately?
Java EE Revisits GoF Design Patterns

What's hot (17)

PDF
Java EE 7 overview
PDF
Java EE 7 - Overview and Status
PPT
What's New in WebLogic 12.1.3 and Beyond
PDF
CON5898 What Servlet 4.0 Means To You
PDF
Websocket 1.0
PDF
Building HTML5 WebSocket Apps in Java at JavaOne Latin America 2012
PDF
Java Summit Chennai: JAX-RS 2.0
PDF
Finally, EE Security API JSR 375
PDF
The Java EE 7 Platform: Productivity & HTML5 at JavaOne Latin America 2012
PDF
'JMS @ Data Grid? Hacking the Glassfish messaging for fun & profit'
PDF
Java EE 7 and HTML5: Developing for the Cloud
PDF
Java EE 8: On the Horizon
PDF
'New JMS features in GlassFish 4.0' by Nigel Deakin
PDF
Java EE 7 et ensuite pourquoi pas JavaScript sur le serveur!
PDF
Building Java Desktop Apps with JavaFX 8 and Java EE 7
PDF
GIDS 2012: Java Message Service 2.0
PDF
JAX-RS 2.0: What’s New in JSR 339 ?
Java EE 7 overview
Java EE 7 - Overview and Status
What's New in WebLogic 12.1.3 and Beyond
CON5898 What Servlet 4.0 Means To You
Websocket 1.0
Building HTML5 WebSocket Apps in Java at JavaOne Latin America 2012
Java Summit Chennai: JAX-RS 2.0
Finally, EE Security API JSR 375
The Java EE 7 Platform: Productivity & HTML5 at JavaOne Latin America 2012
'JMS @ Data Grid? Hacking the Glassfish messaging for fun & profit'
Java EE 7 and HTML5: Developing for the Cloud
Java EE 8: On the Horizon
'New JMS features in GlassFish 4.0' by Nigel Deakin
Java EE 7 et ensuite pourquoi pas JavaScript sur le serveur!
Building Java Desktop Apps with JavaFX 8 and Java EE 7
GIDS 2012: Java Message Service 2.0
JAX-RS 2.0: What’s New in JSR 339 ?
Ad

Similar to Construindo aplicações com HTML5, WebSockets, e Java EE 7 (20)

PDF
Consuming Java EE in Desktop, Web, and Mobile Frontends
PDF
JavaCro'14 - Consuming Java EE Backends in Desktop, Web, and Mobile Frontends...
PDF
As novidades do Java EE 7: do HTML5 ao JMS 2.0
PDF
Java EE 7 - Novidades e Mudanças
PDF
What's new in Java EE 7? From HTML5 to JMS 2.0
PDF
Presente e Futuro: Java EE.next()
PDF
How to Thrive on REST/WebSocket-Based Microservices
PDF
As Novidades do Java EE 8
PDF
Red Hat and Oracle: Delivering on the Promise of Interoperability in Java EE 7
PPTX
Java EE for the Cloud
PDF
JAX-RS.next
PDF
Java EE 7 in practise - OTN Hyderabad 2014
PDF
JAX-RS 2.0: RESTful Web Services
PDF
What’s new in Java SE, EE, ME, Embedded world & new Strategy
PDF
JAX-RS 2.0: New and Noteworthy in RESTful Web services API at JAX London
PDF
JavaOne 2014 Java EE 8 Booth Slides
PDF
WebSockets: um upgrade de comunicação no HTML5
PDF
Coding for Desktop and Mobile with HTML5 and Java EE 7
ODP
OTN Developer Days - Java EE 6
PPT
JavaScript Frameworks and Java EE – A Great Match
Consuming Java EE in Desktop, Web, and Mobile Frontends
JavaCro'14 - Consuming Java EE Backends in Desktop, Web, and Mobile Frontends...
As novidades do Java EE 7: do HTML5 ao JMS 2.0
Java EE 7 - Novidades e Mudanças
What's new in Java EE 7? From HTML5 to JMS 2.0
Presente e Futuro: Java EE.next()
How to Thrive on REST/WebSocket-Based Microservices
As Novidades do Java EE 8
Red Hat and Oracle: Delivering on the Promise of Interoperability in Java EE 7
Java EE for the Cloud
JAX-RS.next
Java EE 7 in practise - OTN Hyderabad 2014
JAX-RS 2.0: RESTful Web Services
What’s new in Java SE, EE, ME, Embedded world & new Strategy
JAX-RS 2.0: New and Noteworthy in RESTful Web services API at JAX London
JavaOne 2014 Java EE 8 Booth Slides
WebSockets: um upgrade de comunicação no HTML5
Coding for Desktop and Mobile with HTML5 and Java EE 7
OTN Developer Days - Java EE 6
JavaScript Frameworks and Java EE – A Great Match
Ad

More from Bruno Borges (20)

PDF
Secrets of Performance Tuning Java on Kubernetes
PDF
[Outdated] Secrets of Performance Tuning Java on Kubernetes
PDF
From GitHub Source to GitHub Release: Free CICD Pipelines For JavaFX Apps
PDF
Making Sense of Serverless Computing
PPTX
Visual Studio Code for Java and Spring Developers
PDF
Taking Spring Apps for a Spin on Microsoft Azure Cloud
PDF
A Look Back at Enterprise Integration Patterns and Their Use into Today's Ser...
PPTX
Melhore o Desenvolvimento do Time com DevOps na Nuvem
PPTX
Tecnologias Oracle em Docker Containers On-premise e na Nuvem
PPTX
Java EE Arquillian Testing with Docker & The Cloud
PPTX
Migrating From Applets to Java Desktop Apps in JavaFX
PDF
Servidores de Aplicação: Por quê ainda precisamos deles?
PDF
Build and Monitor Cloud PaaS with JVM’s Nashorn JavaScripts [CON1859]
PDF
Cloud Services for Developers: What’s Inside Oracle Cloud for You? [CON1861]
PDF
Booting Up Spring Apps on Lightweight Cloud Services [CON10258]
PDF
Java EE Application Servers: Containerized or Multitenant? Both! [CON7506]
PDF
Running Oracle WebLogic on Docker Containers [BOF7537]
PPTX
Lightweight Java in the Cloud
PDF
Tweet for Beer - Beertap Powered by Java Goes IoT, Cloud, and JavaFX
PDF
Integrando Oracle BPM com Java EE e WebSockets
Secrets of Performance Tuning Java on Kubernetes
[Outdated] Secrets of Performance Tuning Java on Kubernetes
From GitHub Source to GitHub Release: Free CICD Pipelines For JavaFX Apps
Making Sense of Serverless Computing
Visual Studio Code for Java and Spring Developers
Taking Spring Apps for a Spin on Microsoft Azure Cloud
A Look Back at Enterprise Integration Patterns and Their Use into Today's Ser...
Melhore o Desenvolvimento do Time com DevOps na Nuvem
Tecnologias Oracle em Docker Containers On-premise e na Nuvem
Java EE Arquillian Testing with Docker & The Cloud
Migrating From Applets to Java Desktop Apps in JavaFX
Servidores de Aplicação: Por quê ainda precisamos deles?
Build and Monitor Cloud PaaS with JVM’s Nashorn JavaScripts [CON1859]
Cloud Services for Developers: What’s Inside Oracle Cloud for You? [CON1861]
Booting Up Spring Apps on Lightweight Cloud Services [CON10258]
Java EE Application Servers: Containerized or Multitenant? Both! [CON7506]
Running Oracle WebLogic on Docker Containers [BOF7537]
Lightweight Java in the Cloud
Tweet for Beer - Beertap Powered by Java Goes IoT, Cloud, and JavaFX
Integrando Oracle BPM com Java EE e WebSockets

Recently uploaded (20)

PPTX
A Presentation on Artificial Intelligence
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
Empathic Computing: Creating Shared Understanding
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Approach and Philosophy of On baking technology
PDF
CIFDAQ's Market Insight: SEC Turns Pro Crypto
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PDF
Encapsulation theory and applications.pdf
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
KodekX | Application Modernization Development
A Presentation on Artificial Intelligence
NewMind AI Weekly Chronicles - August'25 Week I
Reach Out and Touch Someone: Haptics and Empathic Computing
Digital-Transformation-Roadmap-for-Companies.pptx
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Empathic Computing: Creating Shared Understanding
Advanced methodologies resolving dimensionality complications for autism neur...
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
20250228 LYD VKU AI Blended-Learning.pptx
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Approach and Philosophy of On baking technology
CIFDAQ's Market Insight: SEC Turns Pro Crypto
Network Security Unit 5.pdf for BCA BBA.
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
Encapsulation theory and applications.pdf
Dropbox Q2 2025 Financial Results & Investor Presentation
Diabetes mellitus diagnosis method based random forest with bat algorithm
Review of recent advances in non-invasive hemoglobin estimation
KodekX | Application Modernization Development

Construindo aplicações com HTML5, WebSockets, e Java EE 7

  • 1. Criando uma aplicação HTML5 com Java EE 7 e WebSockets Bruno Borges Principal Product Manager Java Evangelist
  • 2. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.3 • Java Evangelist • Orale Product Manager • Entusiasta JavaFX e IoT • Onde me encontrar • @brunoborges • plus.google.com/+BrunoBorges Bruno Borges
  • 3. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.4 Ascenção do Javascript • O debate cliente ‘leve’ vs cliente ‘pesado’ é antigo... • Frameworks web server-side mandaram por um tempo (Struts, Spring MVC, JSF) • Ajax foi uma mudança suave para o client-side (GWT, Vaadin) • Rich clients estão voltando voltaram, graças ao Javascript/HTML5 • Motores Javascript melhoraram muito (V8, SpiderMonkey, Nashorn) • Melhores ferramentas (jQuery, MV* frameworks, Chrome, Firefox, JavaFX) • Melhores padrões (CSS3, HTML5, WebSockets, Web Components) Clientes ricos HTML5
  • 4. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.5 Arquitetura Rich Client • Similar a arquiteturas cliente/servidor • Cliente responsável pela UI, input, validacao, lógica e estado • Server responsável pela lógica de negócio, modelo de domínio, persistência • Web/HTTP é a cola que conecta client e server • Protocolos de comunicacao comuns • REST na maioria dos casos • WebSocket quando precisa de comunicacao full-duplex • Ferramentas Javascript suportam REST muito bem, mas ainda não WebSocket • O formato comum (talvez ideal?) de troca de dados é JSON • Java EE é uma ótima plataforma server-side para esta arquitetura
  • 5. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.6 Java EE + Javascript Plataforma server-side para suportar apps ricas HTML5/Javascript Servlet EJB 3 CDI BeanValidation JavaScript/HTML5 JAX-RS WebSockets JSON-P JAXB JPA JMS JTA JCA
  • 6. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.7 JAX-RS • API de desenvolvimento REST para Java • Servidor e Client • Orientada a Annotations, declarativa • @Path, @GET, @POST, @PUT, @DELETE, @PathParam, @QueryPara m, @Produces, @Consumes • Plugável e extensível • Providers, filters, interceptors
  • 7. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.8 JAX-RS @Path("/atm/{cardId}") public class AtmService { @GET @Path("/balance") @Produces("text/plain") public String balance( @PathParam("cardId") String card, @QueryParam("pin") String pin) { return Double.toString(getBalance(card, pin)); } Exemplo 1
  • 8. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.9 JAX-RS @POST @Path("/withdrawal") @Consumes("text/plain") @Produces("application/json") public Money withdraw( @PathParam("card") String card, @QueryParam("pin") String pin, String amount) { return getMoney(card, pin, amount); } } Exemplo 2
  • 9. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.10 Java API for WebSockets JSR 356
  • 10. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.11 Java API for WebSockets • Protocolo HTTP é half-duplex • Gambiarras • Polling • Long polling • Streaming • WebSocket resolve o problema de uma vez por todas • Full-duplex JSR 356
  • 11. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.12 Java API for WebSockets • API declarativa de alto nivel para WebSockets • Client e server-side • Pequena e simples, mas completa • @ServerEndpoint, @OnOpen, @OnClose, @OnMessage, @OnError, Ses sion, Remote • Plugável e extensível • Encoders, decoders, sub-protocols
  • 12. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.13 Java API for WebSockets @ServerEndpoint("/chat") public class ChatBean { Set<Session> peers = Collections.synchronizedSet(…); @OnOpen public void onOpen(Session peer) { peers.add(peer); } @OnClose public void onClose(Session peer) { peers.remove(peer); } Exemplo 1
  • 13. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.14 Java API for WebSockets @OnMessage public void message(String message, Session client) { peers.forEach( p -> p.getRemote().sendObject(message) ); }
  • 14. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.15 Javascript Movers and Shakers
  • 15. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.16 Projeto Avatar • Javascript framework da Oracle • Javascript no client e no server-side • Nashorn/JDK8 • Utiliza algumas capacidades do Java EE • Roda no GlassFish, e em breve no WebLogic também • Suporte já integrado para REST, WebSocket, Server-Sent Events (SSE) • Suporte a PhoneGap • Versão 1.0 já disponível. Bom momento para participar! avatar.java.net
  • 16. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.17 Projetos no NetBeans • Twitter Bootstrap • HTML5 Boilerplate • Initializr • AngularJS • Mobile Boilerplate
  • 17. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.18 Demo •github.com/brunoborges/javaee-javascript
  • 18. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.19 Conclusão • Cientes JavaScript/HTML5 conquistando desenvolvedores • Comunicacao entre cliente e servidor em JSON via REST ou WebSocket • Java EE funciona muito bem como um backend para clientes ricos Javascript, especialmente com JAX-RS e a Java API para WebSockets, e JSON-P • JavaScript framework da Oracle – Projeto Avatar • Você opde usar o código de demonstracão para comecar a explorar estas idéias • E o mais importante, divirta-se programando! :-)
  • 19. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.20 • glassfish.org • Java EE 7 • Suporte a JDK 8 • Projeto Avatar GlassFish Nightly Builds GlassFish 4.0.1
  • 20. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.21 Para saber mais • Java EE Tutorials • http://docs.oracle.com/javaee/7/tutorial/doc/home.htm • Outras páginas para iniciar os estudos • http://docs.oracle.com/javaee/7/firstcup/doc/home.htm • https://glassfish.java.net/hol/ • https://java.net/projects/cargotracker/ • Java EE 7 Transparent Expert Groups • http://javaee-spec.java.net • The Aquarium (blog Java EE da Oracle) • http://blogs.oracle.com/theaquarium
  • 21. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.23 The preceding is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle.
  • 22. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.24
  • 23. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.25

Editor's Notes

  • #5: Richer clients clearly better at some thingsHighly dynamic, interactive interfacesComplex, feature-rich UIs“Single page applications” (“Applets” )But perhaps not a panaceaHeavily form/workflow driven applicationsServer-side rendering still a better bet for performance/reliability?JavaScript/HTML development is not without it’s pains…Server-side frameworks are a strong incumbentCo-existence in the short and long term?Islands of rich client functionality within server-centric UIs?Different strokes for different folks?