JavaFX 2.0 - Next generation Java 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, Linux, • 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 APIs 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 computing platform • 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 Java Card
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 • Swing 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
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 user interface 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 Eclipse • 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.