1 Copyright © 2011, Oracle and/or its affiliates. All rights
reserved.
JavaFX 2.0 - Next generation Java client solution
Nandini Ramani
Client Java Group Vice President
2 Copyright © 2011, Oracle and/or its affiliates. All rights
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.
3 Copyright © 2011, Oracle and/or its affiliates. All rights
reserved.
Moving Java Forward
4 Copyright © 2011, Oracle and/or its affiliates. All rights
reserved.
Java Scorecard 2011 - Technology
Result
Java SE
JDK 7 GA
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
Java FX 2.0 GA
Java FX 2.0 for Mac OS X Developer Preview
JavaFX OpenSource
Java ME/
Embedded
Oracle Java Wireless Client 3.0
Oracle Java Embedded Client 1.0
Java SE for Embedded 7
Java ME SDK 3.0.5 and LWUIT 1.5
5 Copyright © 2011, Oracle and/or its affiliates. All rights
reserved.
Java Scorecard 2011: Community Scoreboard – Community
OpenJDK
IBM, Apple, SAP, Azul join OpenJDK
OpenJDK community bylaws ratified
OpenJDK becomes official Java SE 7 Reference Implementation
JVM Language Summit held July 2011
OpenJDK Twitter feed launched with thousands of followers
JCP
JSR for Java SE 7 passed & JSR for Java SE 8 submitted & in process
SouJava, London JUG elected to JCP Executive Committee
JSR 348 in process for greater transparency
JSR 342 submitted for Java EE 7 platform
JUGs
Oracle lead bi-weekly JUG leaders call
Oracle lead JUG leader summit January 2011
Over 250 JUGs from 50+ countries involved in JDK 7 launch
6 Copyright © 2011, Oracle and/or its affiliates. All rights
reserved.
Java Scorecard 2011 - Oracle Leadership
Scoreboard - Oracle Leadership
Ongoing
Investment
Successfully integrated Java development teams (We’re hiring!)
Launched global JavaOne: Brazil, China, Russia, India
Reinvigorated flagship JavaOne 2011
Community
Outreach
Oracle launches Java Magazine (over 50k subscriptions)
Over 80 Java Developer Days held around the world
Java evangelist team reaches 80k developers @ 170 events
Over 250k Java Podcast downloads
Validation
JDK downloads up 91% Year over Year
Over 1 million active NetBeans users
Increase of TV devices running Java from 80 million to 115 million
Over 45,000 Java ME applications
7 Copyright © 2011, Oracle and/or its affiliates. All rights
reserved.
JavaSE Roadmap
2011 2012 2013
JDK 7u2 • JRE 7 on java.com
• JavaFX 2.0 co-install
JDK 8 • Windows, Linux,
Solaris, OS X
• Jigsaw
• Lambda
• JavaFX 3.0
• Complete Oracle JVM
convergence
• JavaScript interop
• more
Last public
JDK 6 update
JDK 7u6 • OS X JRE port
(for end-users)
• Improved OS
integration,
auto-update JDK 7
JDK 7u4 • OS X JDK Port
(for developers)
2014
NetBeans 7 • Java SE 7
support
• more
NetBeans.next • Java SE 8 support
• JavaFX 3.0 support
• more
Mac OS X • JDK 7 Dev Preview
• JavaFX 2.0 Dev Preview
NetBeans 7.1 • JavaFX 2.0 support
8 Copyright © 2011, Oracle and/or its affiliates. All rights
reserved.
JavaME/Embedded Roadmap
2012 2013
Oracle Java
Wireless Client 3.1
Java SE 7 alignment • CLDC 7
• New APIs for Embedded
and Mobile
Java ME 7
CDC/Java SE
convergence
Java Embedded 8
Java SE 8 alignment • New APIs for Embedded
and Mobile
Java ME 8
Mobile Services • Payment
• Store
• Carrier apps
9 Copyright © 2011, Oracle and/or its affiliates. All rights
reserved.
Java EE Roadmap
2009 2010 2011
GlassFish Server 3.1.2 • Bug Fixes
• Incremental Features
GlassFish Server 3.1 • Centralized administration
• Clustering / HA
• GlassFish Server Control
2012
GlassFish Server 4 • Java EE 7
• Multitenancy
• PaaS-enablement
GlassFish v3 • Java EE 6 Support
• Single Instance
• GlassFish Enterprise Mgr
GlassFish Server 3.0.1 • Oracle Branding
• Oracle Platform Support
• Oracle Interoperability
GlassFish Server 3.1.1 • Bug Fixes
• Updated Components
• Incremental Features
10 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
11 Copyright © 2011, Oracle and/or its affiliates. All rights
reserved.
Project Avatar - Scope Complete Solution for Dynamic Rich Clients
HTML 5 browser
HTML & Java
hybrid application
Java application Java EE Cloud
JSON over
WebSocket
12 Copyright © 2011, Oracle and/or its affiliates. All rights
reserved.
JavaFX
13 Copyright © 2011, Oracle and/or its affiliates. All rights
reserved.
JavaFX Design Objectives
• Cross Platform
• Leverage Java
• Advanced Tooling
• Developer Productivity
• Amazing User Interfaces
14 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
15 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
16 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
17 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.
18 Copyright © 2011, Oracle and/or its affiliates. All rights
reserved.
Where does JavaFX fit in the Java platform?
Java Language
Java EE 6
JVM Card VM
Java SE 7 Java TV & Java ME Java Card
JavaFX 2.0
Java ME VM
19 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
20 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
21 Copyright © 2011, Oracle and/or its affiliates. All rights
reserved.
Key Features 1 of 4
Java APIs for JavaFX
• End-to-end Java development
• Java language features - generics,
annotations, multi-threading
• Fluent API for UI construction
• Alternative JVM supported languages
(e.g. Groovy, Scala) with JavaFX
• Leverage sophisticated Java IDEs,
debuggers and profilers
• Java APIs preserve convenient
JavaFX Script features (e.g., bind)
FXML
• Scriptable, XML-based markup
language for defining UI
• Convenient alternative to developing
UI programmatically in Java
• Easy to learn and intuitive for
developers familiar with web
technologies or other markup based
UI technologies
• Powerful scripting feature allows
embedding scripts within FXML. Any
JVM scripting language can be used,
including JavaScript, Groovy, and
Scala
22 Copyright © 2011, Oracle and/or its affiliates. All rights
reserved.
Key Features 2 of 4
Media
• Stable media framework based on
GStreamer
• VP6, MP3 playback of Web
multimedia content
• Low latency audio
• Alpha channel support
• Performance improvements
• Full screen video
• New hardware accelerated graphics
pipeline (Prism)
• New windowing toolkit (Glass) for
Prism
• Java2D software pipeline under
Prism
• High-level support for making rich
graphics simple
• Shadows, Blurs, Reflections, Effects,
2D transforms
• 3D Transforms today; Full 3D objects
in future
New Graphics Pipeline
23 Copyright © 2011, Oracle and/or its affiliates. All rights
reserved.
Key Features 3 of 4
• Embed Web content
in JavaFX
applications
• HTML rendering
based on Webkit
• Hardware accelerated
rendering using
PRISM
• DOM access and
manipulation
WebView Component
• Embed JavaFX
content into existing
Swing applications
• Extend existing Swing
applications with new
JavaFX features such
as WebView and
high-performance
graphics
Swing/JavaFX Interop
• Faster loading of
JavaFX Web
applications based on
Prism
• Preloader for
improved user
experience with
JavaFX Web
applications
Browser Plugin
24 Copyright © 2011, Oracle and/or its affiliates. All rights
reserved.
Key Features - JavaFX UI Controls 4 of 4
• Button
• Cell
• CheckBox
• ChoiceBox
• Hyperlink
• IndexedCell
• Label
• ListCell
• ListView
• PasswordBox
• ProgressBar
• ProgressIndicator
• RadioButton
• ScrollBar
• ScrollPane
• Separator
• Slider
• TextBoxToggleButton
• ToggleGroup
• ToolTip
• CheckMenuItem
• CustomMenuItem
• GridPane
• Menu
• MenuBar
• MenuButton
• MenuItem
• PopupMenu
• RadioMenuItem
• SplitMenuButton
• ToolBar
• TreeCell
• TreeView
• Accordion
• SplitPane
• Table
• Tab
• TabPane
• TitledPane
• AreaChart
• BarChart
• BubbleChart
• Chart
• LineChart
• PieChart
• ScatterChart
• XYChart
25 Copyright © 2011, Oracle and/or its affiliates. All rights
reserved.
Demo Ensemble and
Henley Car Sales
26 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);
}
}
27 Copyright © 2011, Oracle and/or its affiliates. All rights
reserved.
Hello World in JavaFX 2.0 Programming in FXML and Java FXML <BorderPane>
<center>
<Label text=”%helloworld"/>
</center>
</BorderPane>
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.fxml"),
ResourceBundle.getBundle(“r.fxml_example"));
stage.setScene(new Scene(root));
stage.show();
}
public static void main(String[] args) { launch(args); }
}
Note: Example is
for illustration and
not syntactically
accurate
28 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
29 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)
30 Copyright © 2011, Oracle and/or its affiliates. All rights
reserved.
Demo JavaFX Labs
31 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
32 Copyright © 2011, Oracle and/or its affiliates. All rights
reserved.
JavaFX Goals for 2012
• Tighter Integration with Java SE
• Migration Path for Java Client UI Technologies
• Optimized Web Services Support
• Advanced Tooling
• Support for Modern Device Interactions
• Delivering on the Cross Platform Promise
Oracle’s Next Generation Java Client Solution
Open Source
• OpenJFX project under
OpenJDK
• First phase to focus on
UI Controls
Standardization
• Oracle committed to
JavaFX standardization
• JSR to be submitted
through JCP
Convergence
• Common license
with Java SE
• JavaFX to be
included in Java 8
• JavaFX to reach out
to Java Embedded
33 Copyright © 2011, Oracle and/or its affiliates. All rights
reserved.
JavaFX Roadmap
2011 2012 2013
JavaFX 3.0 • Included in JDK 8
• Concurrent OS support
(Windows, Mac OS, Linux)
JavaFX
Scene Builder GA
JavaFX 2.1 • Mac OS X GA
• Linux Dev. Preview
2014
NetBeans.next • JavaFX 3.0 Support
• more
JavaFX 2.0 GA • Windows GA
• Mac OS X Dev. Preview
JavaFX 2.0.2 • JDK 7 co-install
JavaFX 2.2 • Linux GA
JavaFX
Scene Builder EA
NetBeans 7.1 • JavaFX 2.0 Support
34 Copyright © 2011, Oracle and/or its affiliates. All rights
reserved.
One More Thing
35 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
36 Copyright © 2011, Oracle and/or its affiliates. All rights
reserved.
37 Copyright © 2011, Oracle and/or its affiliates. All rights
reserved.