1
Java Virtual Developer Day Simon Ritter Technology Evangelist Virtual Developer Day: Agenda
• Keynote: The Java Platform: Now and the Future • What is Java SE 7 and JDK 7 • Diving into JavaFX 2.0 • Java SE 7: New and Improved APIs
3
The Java Platform: Now and the Future 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.
©2011 Oracle Corporation5 Oracle Strategy
• Deliver a complete, open, integrated stack of hardware, infrastructure, database, middleware, and business applications
• Exploit processor, systems, storage, and networking trends to deliver breakthrough innovations by combining Oracle software with Sun hardware
• Integrate components of Oracle’s software stack to provide unique value to customers
©2011 Oracle Corporation6 Middleware and Java in Oracle’s Strategy
• Comprehensive foundation for building and running custom and packaged applications • Extremely well integrated • Industry-leading reliability and performance • Unified development and management • Basis for Oracle Fusion Applications
• Built with and for Java technology
©2011 Oracle Corporation7 The Spectrum of Java
Servers Desktop Embedded TV Mobile Card
BD-J
Java EE JavaFX Java TV MSA
Java SE Java ME JavaCard
Java language
©2011 Oracle Corporation8 Priorities for our Java Platforms
Grow Developer Base
Grow Adoption
Increase Competitiveness
Adapt to change
©2011 Oracle Corporation9 Java Communities
©2011 Oracle Corporation10 How Java Evolves and Adapts
Community Development of Java Technology Specifications
©2011 Oracle Corporation11 JCP Reforms
• Developers’ voice in the Executive Committee – SOUJava – Goldman Sachs – London JavaCommunity JCP starting a program of reform – JSR 348: Towards a new version of the JCP
©2011 Oracle Corporation12 JavaOne
• Successful event in San Francisco, – September 2011 • First regional event for Latin America – Sao Paulo, December 2011 • More to come – Tokyo, April 2012 – Moscow, Russia, April 2012 – Hyderabad, India, May 2012
©2011 Oracle Corporation13
14 ©2011 Oracle Corporation15
Data courtesy of TIOBE: www.tiobe.com The rise of multi-core/processor architectures
Niagara 1 (2005)
8 x 4 = 32 Niagara 2 (2007)
8 x 8 = 64 Rainbow Falls!
16 x 8 = 128
\ ©2011 Oracle Corporation16 From high end servers to smartphones
DesktopDesktopDesktop ...... notepad notepad ...... phone 2 2 2 ...... 4 4 ... 8
2002 2004 2006 2008 2010 2011
©2011 Oracle Corporation17 Java SE 7 Highlights
• Careful additions to the Java language • New bytecode to speed dynamic languages on the JVM 7 • New Fork/Join framework for concurrent programming July 2011 • New filesystem API
©2011 Oracle Corporation18 Java SE 8 Projects
• Project Lambda – Lambda expressions – Interface evolution – Concurrent bulk data operations 8 • Modularity for Java SE Mid 2013 • Careful additions to the Java Language • Annotations on Java types
©2011 Oracle Corporation19 ©2011 Oracle Corporation20 Try JDK 7 Today
• Download JDK 7 • openjdk.java.net • Open project mailing lists
• Download NetBeans 7.1 • netbeans.org • JDK 7 support
©2011 Oracle Corporation21
22 Java Client Deployment
75m desktops updated/month
100% of Blu-ray Disc Players
5 Billion SIM Cards
3 Billion Mobile Handsets
©2011 Oracle Corporation23 JavaFX 1.1 JavaFX 1.3 Mobile Performance More UI Controls JavaFX 2.0 JavaFX 1.0 JavaFX 1.2 Java APIs JavaFX Script UI Controls UI Controls Scenegraph New media stack Media New graphics stack
2008 2009 2010 2011
©2011 Oracle Corporation24 JavaFX 2.0 Motivation
• Java developers didn’t want to learn a new language for RIA development • Web developers did not adopt JavaFX Script as quickly as we’d hoped • Interest in using JavaFX features in other languages
©2011 Oracle Corporation25 Desktop: JavaFX 2.0 takes a fresh view
• Development now in Java language • New Java APIs for JavaFX functionality • New media stack • New lightweight graphics stack • Swing integration
©2011 Oracle Corporation15 26 JavaFX Roadmap JavaFX 2.1 JavaFX 3.0 JavaFX 2.0
• Windows GA • Mac OS X GA • Included in JDK 8 • Linux Dev. Preview • Concurrent OS support • Mac OS X 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 Scene Builder EA Scene Builder GA
NetBeans 7.1 NetBeans • JavaFX 2.0 Support • JavaFX 3.0 Support
27 Java ME 2011 focus
• ME.next to modernize platform • Integration of web technologies • New device APIs • Scalable, high performance runtime solutions
©2011 Oracle Corporation28 Oracle Java ME Products
• Commercial Implementations – Oracle Java Wireless Client – Oracle Java Embedded Client • Developer Products – Java ME SDK – JavaCard SDK – LWUIT – NetBeans IDE Mobility Pack
©2011 Oracle Corporation29
30 The Java EE Journey
1998 2000 2002 2004 2006 2008 2010
J2EE 1.2 J2EE 1.3 J2EE 1.4 Java EE 5 Java EE 6
Servlet, EJB, JCA, JAAS, WebSvcs, JPA, EJB3, More POJOs, Web JSP, JMS, XML, CMP, JMX, Profile, EJBLite, Mail, … … Annotations, Restful WS, Deployment, Faces, … Injection, … …
Web Services
Simplicity
Cloud
©2011 Oracle Corporation31 Java EE 6 : Simplified development and deployment
• Standardized POJO Programming Model • Simplified deployment descriptors • Simplified APIs • Dependency injection • RESTful web services • Web Profile Java Classes* Lines of Code* Lines of XML*
* Based on a Sample POJO/JPA/REST Based Application Built for JavaOne ©2011 Oracle Corporation32 Open Source and Commercial Implementations
Java EE 5: Widely Available Java EE 6: Fast Uptake
©2011 Oracle Corporation33 GlassFish Areas of Focus
• First to market for new platform versions • Continued emphasis on developer-friendly characteristics & popular OSS • Production quality deployment features – Clustering in current 3.1.1 release – Web & Full Profile Java EE6 applications – Virtualization/Cloud features in upcoming 3.2 release • Shared components with WebLogic Server – Ref Implementation APIs: JPA, JAX-RS, JSF, JAX-WS, JSTL, JAXP, JAXB, CDI – Web server plug-ins • Certified Interoperability with WebLogic – Web Services, OAM, RMI
©2011 Oracle Corporation34
GlassFish and WebLogic Together • Best commercial application server for transactional Java EE applications and in near future, Java EE6 Full Profile • Best open source application server with support from Oracle • Open source platform of choice for OSGi or EE6 Web/Full • Platform of choice for standardization Profile • Focus on lowest operational cost and mission critical • Focus on latest Java EE standards and community OSS applications innovation • Best integration with Oracle Database, Fusion Middleware & Fusion Applications • Certified interoperability and integration with Fusion Middleware
Production Java Production Java Application Deployment Application Deployment
Oracle GlassFish Server Oracle WebLogic Server
©2011 Oracle Corporation35 Beyond Java EE 6: Moving into the cloud
• Develop • Deploy • Manage
©2011 Oracle Corporation36 Java EE Today – Roles and Responsibilities
Developer Deployer/Administrator Java EE
Container Provider
©2011 Oracle Corporation37 Cloud Requires Data Center And Tenant Roles
Application Administrator Developer Java EE Cloud
Application Container/Service Deployer Provider
Tenant 1 Tenant 2 Tenant n
PaaS Administrator
©2011 Oracle Corporation38 Clouds parting: Java EE 7 • Cloud computing is the major theme – Java EE as a managed environment – Application packaging reflecting new roles – Application isolation and versioning – In-place application upgrade • Also significant Web Tier updates – Web sockets, HTML5/JSF, standard JSON, NIO.2 • JSRs – JSR 342: Java Platform Enterprise Edition 7 – JSR 236 : Concurrency Utilities for Java EE – JSR 107: JCache – JSR 347: DataGrids for Java EE ©2011 Oracle Corporation39
40 Java Developer Tools
©2011 Oracle Corporation41 NetBeans 2012
• Over 900k active users • NetBeans 7.1 – JDK 7 and Java editor support – Glassfish 3.1 support, WLS and Oracle database support improvements – Maven 3 and HTML 5 editing support
• More information – http://download.netbeans.org/7.1 – http://netbeans.org/community/releases/roadmap.html
©2011 Oracle Corporation42 43