JavaFX 2.0 - Next generation client solution Nandini Ramani

Client1 Copyright Java © 2011, Oracle Group and/or its affiliates. All Vicerights President reserved.

The following 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.

2 Copyright © 2011, Oracle and/or its affiliates. All rights reserved. Moving Java Forward

3 Copyright © 2011, Oracle and/or its affiliates. All rights reserved. Java Scorecard 2011 - Technology

Result  JDK 7 GA Java SE  JDK 7 for Mac OS X Developer Preview  JRockit released gratis under same license as JDK Java EE  GlassFish 3.1.1  Java EE 7 specification development underway  Java FX 2.0 GA Java FX  Java FX 2.0 for Mac OS X Developer Preview  JavaFX OpenSource  Oracle Java Wireless Client 3.0 Java ME/  Oracle Java Embedded Client 1.0 Embedded  Java SE for Embedded 7  Java ME SDK 3.0.5 and LWUIT 1.5

4 Copyright © 2011, Oracle and/or its affiliates. All rights reserved. Java Scorecard 2011: Community Scoreboard – Community  IBM, Apple, SAP, Azul join OpenJDK  OpenJDK community bylaws ratified OpenJDK  OpenJDK becomes official Java SE 7 Reference Implementation  JVM Language Summit held July 2011  OpenJDK Twitter feed launched with thousands of followers  JSR for Java SE 7 passed & JSR for Java SE 8 submitted & in process  SouJava, London JUG elected to JCP Executive Committee JCP   JSR 348 in process for greater transparency  JSR 342 submitted for Java EE 7 platform  Oracle lead bi-weekly JUG leaders call JUGs  Oracle lead JUG leader summit January 2011  Over 250 JUGs from 50+ countries involved in JDK 7 launch

5 Copyright © 2011, Oracle and/or its affiliates. All rights reserved. Java Scorecard 2011 - Oracle Leadership

Scoreboard - Oracle Leadership  Successfully integrated Java development teams (We’re hiring!) Ongoing   Launched global JavaOne: Brazil, China, Russia, India Investment   Reinvigorated flagship JavaOne 2011  Oracle launches Java Magazine (over 50k subscriptions) Community  Over 80 Java Developer Days held around the world Outreach  Java evangelist team reaches 80k developers @ 170 events  Over 250k Java Podcast downloads  JDK downloads up 91% Year over Year  Over 1 million active NetBeans users Validation   Increase of TV devices running Java from 80 million to 115 million  Over 45,000 Java ME applications

6 Copyright © 2011, Oracle and/or its affiliates. All rights reserved. JavaSE Roadmap JDK 7u6 • OS X JRE port NetBeans 7 (for end-users) NetBeans.next • Java SE 7 JDK 7u2 • Improved OS • Java SE 8 support support JDK 7 • JRE 7 on java.com Last public integration, • JavaFX 3.0 support • more • JavaFX 2.0 co-install JDK 6 update auto-update • more

2011 2012 2013 2014

Mac OS X JDK 7u4 JDK 8 • JDK 7 Dev Preview • OS X JDK Port • Windows, , • JavaFX 2.0 Dev Preview (for developers) Solaris, OS X • Jigsaw • Lambda NetBeans 7.1 • JavaFX 3.0 • JavaFX 2.0 support • Complete Oracle JVM convergence • JavaScript interop • more

7 Copyright © 2011, Oracle and/or its affiliates. All rights reserved. JavaME/Embedded Roadmap

Oracle Java Wireless Client 3.1 Java ME 7 Java Embedded 8 Mobile Services Java SE 7 alignment CDC/Java SE • Payment • CLDC 7 convergence • Store • New for Embedded • Carrier apps and Mobile

2012 2013 Java ME 8 Java SE 8 alignment • New APIs for Embedded and Mobile

8 Copyright © 2011, Oracle and/or its affiliates. All rights reserved. Java EE Roadmap

GlassFish v3 GlassFish Server 3.1 GlassFish Server 3.1.2 • Centralized administration • Java EE 6 Support • Bug Fixes • Clustering / HA • Single Instance • Incremental Features • GlassFish Enterprise Mgr • GlassFish Server Control

2009 2010 2011 2012

GlassFish Server 3.0.1 • Oracle Branding GlassFish Server 3.1.1 • Oracle Platform Support • Bug Fixes GlassFish Server 4 • Oracle Interoperability • Updated Components • Java EE 7 • Incremental Features • Multitenancy • PaaS-enablement

9 Copyright © 2011, Oracle and/or its affiliates. All rights reserved. Project Avatar

• HTML 5 Clients – Utilize bi-directional communication to enable event-driven applications – Rich, standardized client-side programming model: APIs, high-performance JavaScript and standardized offline capabilities • The Cloud – We’ve got the building blocks: WebSockets (Comet), JSON (JAX RS), RESTful WS – Missing data change notifications, asynchronous infrastructure, and … • Programming Model – More than the sum of the parts – Web-native, bi-directional binding to the cloud – Unifying Java ME, SE and EE

10 Copyright © 2011, Oracle and/or its affiliates. All rights reserved. Project Avatar - Scope Complete Solution for Dynamic Rich Clients

HTML 5 browser

HTML & Java JSON over hybrid application WebSocket

Java application Java EE Cloud

11 Copyright © 2011, Oracle and/or its affiliates. All rights reserved. JavaFX

12 Copyright © 2011, Oracle and/or its affiliates. All rights reserved. JavaFX Design Objectives

• Cross Platform • Leverage Java • Advanced Tooling • Developer Productivity • Amazing User Interfaces

13 Copyright © 2011, Oracle and/or its affiliates. All rights reserved. Cross Platform, Leverage Java

• Developers need cross platform! – Same Language, APIs, Tools – Must be available on every major client • Leverage the massive Java Ecosystem – Over 9 million developers – Existing Knowledge: POJOs, Collections, JavaBeans – Ready For Java 8: Lambda’s, Modularity

14 Copyright © 2011, Oracle and/or its affiliates. All rights reserved. Cross Platform, Leverage Java

• Java has the best IDEs – Must have good visual tools • Productivity = Java + Tools + Docs + API Consistency • JavaFX must facilitate creation of modern, sophisticated, “magical” user interfaces – What was once eye candy is now a required feature! – Designer / Developer workflow is key

15 Copyright © 2011, Oracle and/or its affiliates. All rights reserved. Recent Announcements

• JavaFX 2.0 General Availability • JavaFX 2.0 Developer Preview for Mac OS X • JavaFX Scene Builder Early Access and NetBeans 7.1 • Open Source and Standardization

16 Copyright © 2011, Oracle and/or its affiliates. All rights reserved. JavaFX is the evolution of Java as a rich client platform. It is designed to provide a modern Java environment designed to provide a lightweight, hardware accelerated UI platform that meets tomorrow’s needs.

17 Copyright © 2011, Oracle and/or its affiliates. All rights reserved. Where does JavaFX fit in the Java platform?

Java EE 6 JavaFX 2.0

Java SE 7 Java TV & Java ME

JVM Java ME VM Card VM

Java Language

18 Copyright © 2011, Oracle and/or its affiliates. All rights reserved. Key Features

• 100% Java API • Powerful new APIs • FXML for UI markup • Integrated web content • integration • Rich Graphics and Animation

19 Copyright © 2011, Oracle and/or its affiliates. All rights reserved. JavaFX Runtime High Level Architecture

• Glass Windowing Toolkit: Provides native operating services, such as managing the windows, timers, and surfaces • Prism: Graphics pipeline that can run on hardware and software renderers • Quantum Toolkit: Ties Prism and Glass together and makes them available to the JavaFX APIs

20 Copyright © 2011, Oracle and/or its affiliates. All rights reserved. Key Features 1 of 4

Java APIs for JavaFX FXML

• End-to-end Java development • Scriptable, XML-based markup • Java language features - generics, language for defining UI annotations, multi-threading • Convenient alternative to developing UI programmatically in Java • Fluent API for UI construction • Easy to learn and intuitive for • Alternative JVM supported languages developers familiar with web (e.g. Groovy, Scala) with JavaFX technologies or other markup based • Leverage sophisticated Java IDEs, UI technologies debuggers and profilers • Powerful scripting feature allows • Java APIs preserve convenient embedding scripts within FXML. Any JavaFX Script features (e.g., bind) JVM scripting language can be used, including JavaScript, Groovy, and Scala

21 Copyright © 2011, Oracle and/or its affiliates. All rights reserved. Key Features 2 of 4

New Graphics Pipeline Media

• New hardware accelerated graphics • Stable media framework based on pipeline (Prism) GStreamer • New windowing toolkit (Glass) for • VP6, MP3 playback of Web Prism multimedia content • Java2D software pipeline under • Low latency audio Prism • Alpha channel support • High-level support for making rich graphics simple • Performance improvements • Shadows, Blurs, Reflections, Effects, • Full screen video 2D transforms • 3D Transforms today; Full 3D objects in future

22 Copyright © 2011, Oracle and/or its affiliates. All rights reserved. Key Features 3 of 4

WebView Component Swing/JavaFX Interop Browser Plugin • Embed Web content • Embed JavaFX • Faster loading of in JavaFX content into existing JavaFX Web applications Swing applications applications based on • HTML rendering • Extend existing Swing Prism based on Webkit applications with new • Preloader for • Hardware accelerated JavaFX features such improved user rendering using as WebView and experience with PRISM high-performance JavaFX Web graphics applications • DOM access and manipulation

23 Copyright © 2011, Oracle and/or its affiliates. All rights reserved. Key Features - JavaFX UI Controls 4 of 4

• Button • RadioButton • MenuBar • Tab • Cell • ScrollBar • MenuButton • TabPane • CheckBox • ScrollPane • MenuItem • TitledPane • ChoiceBox • Separator • PopupMenu • AreaChart • Hyperlink • Slider • RadioMenuItem • BarChart • IndexedCell • TextBoxToggleButton • SplitMenuButton • BubbleChart • Label • ToggleGroup • ToolBar • Chart • ListCell • ToolTip • TreeCell • LineChart • ListView • CheckMenuItem • TreeView • PieChart • PasswordBox • CustomMenuItem • Accordion • ScatterChart • ProgressBar • GridPane • SplitPane • XYChart • ProgressIndicator • Menu • Table

24 Copyright © 2011, Oracle and/or its affiliates. All rights reserved. Demo Ensemble and Henley Car Sales

25 Copyright © 2011, Oracle and/or its affiliates. All rights reserved. Hello World in JavaFX Programming in Java public class JavaFXExample extends Application { @Override public void start(Stage stage){ Scene scene = new Scene( LabelBuilder.create() .text("Hello World!") .layoutX(25) .build()); stage.setTitle("Welcome to JavaFX!"); stage.setScene(scene); stage.show(); } public static void main(String[] args) { launch(args); } }

26 Copyright © 2011, Oracle and/or its affiliates. All rights reserved. Hello World in JavaFX 2.0 Programming in FXML and Java FXML Note: Example is

for illustration and
accurate Java public class FXMLExample extends Application { @Override public void start(Stage stage) throws Exception { stage.setTitle("FXML Example"); Parent root = FXMLLoader.load(getClass().getResource (“example."), ResourceBundle.getBundle(“r.fxml_example")); stage.setScene(new Scene(root)); stage.show(); } public static void main(String[] args) { launch(args); } }

27 Copyright © 2011, Oracle and/or its affiliates. All rights reserved. Standard Java Tools for Easy Development

• Source editor with improved syntactic highlighting, code completion, refactoring etc. • Full debugger and profiler support • Project wizard for easy creation of JavaFX applications

Other Java IDEs • Source editor with syntactic highlighting, code completion, refactoring etc. • Full debugger and Profiler support

28 Copyright © 2011, Oracle and/or its affiliates. All rights reserved. JavaFX Scene Builder for Rapid UI Design • WYSIWYG GUI design tool for the JavaFX platform • Enables designing screens by simply dragging and positioning GUI components from a palette onto a scene • Generates files in FXML format that can be used within a project in any IDE such as NetBeans or • Can be used to create GUI for desktop and Web applications • Currently in Early Access (by invitation)

29 Copyright © 2011, Oracle and/or its affiliates. All rights reserved. Demo JavaFX Labs

30 Copyright © 2011, Oracle and/or its affiliates. All rights reserved. JavaFX - Moving Forward

Oracle’s next generation Java client solution • Built on Java in Java • Modular architecture • Migration path for Java client UI technologies • Advanced tooling • Support for modern device interaction • Delivering on the cross-platform promise

31 Copyright © 2011, Oracle and/or its affiliates. All rights reserved. JavaFX Goals for 2012 Oracle’s Next Generation Java Client Solution Open• Tighter Source Integration withConvergence Java SE Standardization • OpenJFX• Migration project underPath for• CommonJava Client license UI Technologies• Oracle committed to OpenJDK• Optimized Web Serviceswith Java Support SE JavaFX standardization • First• phaseAdvanced to focus Tooling on • JavaFX to be • JSR to be submitted UI Controls included in Java 8 through JCP • Support for Modern Device Interactions • JavaFX to reach out • Delivering on the Crossto Java PlatformEmbedded Promise

32 Copyright © 2011, Oracle and/or its affiliates. All rights reserved. JavaFX Roadmap JavaFX 3.0 JavaFX 2.0 GA JavaFX 2.1 • Included in JDK 8 • Windows GA • Mac OS X GA • Concurrent OS support • Mac OS X Dev. Preview • Linux Dev. Preview (Windows, Mac OS, Linux)

2011 2012 2013 2014

JavaFX 2.0.2 JavaFX 2.2 • JDK 7 co-install • Linux GA

JavaFX JavaFX NetBeans.next Scene Builder EA Scene Builder GA • JavaFX 3.0 Support • more NetBeans 7.1 • JavaFX 2.0 Support

33 Copyright © 2011, Oracle and/or its affiliates. All rights reserved. One More Thing

34 Copyright © 2011, Oracle and/or its affiliates. All rights reserved. Call to Action

• Download JavaFX 2.0 – http://javafx.com • Join the OpenJFX project – http://openjdk.java.net • Participate in the JavaFX OTN Forum – http://forums.oracle.com/forums/forum.jspa?forumID=1385 • File bugs, feature requests – http://javafx-jira.kenai.com

35 Copyright © 2011, Oracle and/or its affiliates. All rights reserved. 36 Copyright © 2011, Oracle and/or its affiliates. All rights reserved. 37 Copyright © 2011, Oracle and/or its affiliates. All rights reserved.