The umbrella JSR for Java SE 7 should be submittet during the next weeks. Mark points out, that there might be changes to the list:
These lists should be considered neither exhaustive nor final—they are merely the starting points at which the Expert Groups for the Umbrella JSRs will begin their deliberations.
(M. Reinhold)
InvokeDynamic byte code + supporting features
VM and language extensions to support the implementation of dynamically-typed languages at performance levels near to that of the Java language itself. This feature, which implements JSR 292: Supporting Dynamically Typed Languages on the Java Platform, is the logical follow-on to JSR 223: Scripting for the Java Platform. Support for JSR 223 was provided as part of Java SE 6 and implemented in JDK 6.
Lead : John Rose
JSR : 292
Project : mlvm
OpenJDK : f353
Articles:
New JDK 7 Feature: Support for Dynamically Typed Languages in the Java Virtual Machine
Concurrency and Collections APIs
A lightweight fork/join framework, flexible and reusable synchronization barriers, transfer queues, a concurrent-reference HashMap, and thread-local pseudo-random number generators.
Lead : Doug Lea
JSR : 166
Project : jsr166y
OpenJDK : f515
Small Language Enhancements (Project "Coin")
A set of small language changes intended to simplify common, day-to-day programming tasks: Strings in switch statements, automatic resource management, improved type inference for generic instance creation ("diamond"), simplified varargs method invocation, better integral literals, and improved exception handling (multi-catch)
Lead : Joe Darcy
JSR : TBD
Project : coin
OpenJDK : f618
Upgrade class-loader architecture
Modifications to the ClassLoader API and implementation to avoid deadlocks in non-hierarchical class-loader topologies.
Lead : Karen Kinnear
Project: core-libs
OpenJDK : f352
Method to close a URLClassLoader
A method that frees the underlying resources, such as open files, held by a URLClassLoader.
Lead : Michael McMahon
Project : core
OpenJDK : f584
Unicode 6.0
Upgrade the supported version of Unicode to 6.0 which adds 2,088 characters,new properties and data files, corrects character properties for existing characters and provides format improvements.
Lead : Yuka Kamiya
Specification : Unicode 6.0
OpenJDK : f497
Locale enhancement
The Java Locale has fallen out of date, and needs to be enhanced to avoid loss of data. Relatively small changes to Locale can update it to modern standards, and avoid significant problems for companies using Java. The Java community should agree to extend the model in Locale to add the features of IETF BCP 47 and UTR 35 (CLDR/LDML).
Project : Locale Enhancement Project | Locale Enhancement Project Home
OpenJDK : fa535895
New I/O APIs (NIO.2)
New APIs for filesystem access, scalable asynchronous I/O operations, socket-channel binding and configuration, and multicast datagrams.
Lead : Alan Bateman
JSR : 203
Project: nio
OpenJDK : f250
Articles:
java.nio.file
Transport Layer Security (TLS) 1.2
The TLS protocol provides communications security over the Internet. The protocol allows client/server applications to communicate in a way that is designed to prevent eavesdropping, tampering, or message forgery. Java SE 7 will have support for TLS 1.2, which was standardized in 2008 as RFC 5246
Lead : Brad Wetmore
Specification : rfc5246
OpenJDK : fa534339
Elliptic-Curve Cryptography (ECC)
Elliptic curve cryptography (ECC) is an approach to public-key cryptography based on the algebraic structure of elliptic curves over finite fields. Java SE 7 will have a portable implementation of the standard Elliptic Curve Cryptographic (ECC) algorithms, so that all Java applications can use ECC out-of-the-box.
Lead : Vincent Ryan
OpenJDK : f73
JDBC 4.1
Upgrade to JDBC 4.1 and Rowset 1.1
Lead : Lance Andersen
JSR : 221
OpenJDK : fa539110
Create new platform APIs for 6u10 graphics features
Create new platform APIs for features originally implemented in the 6u10 release: Translucent and shaped windows, heavyweight/lightweight mixing, and the improved AWT security warning.
Lead : Anthony Petrov
OpenJDK : f650
Nimbus look-and-feel for Swing
Nimbus is the name of a look-and-feel designed by Sun for the Java Desktop System; it's implemented as a GTK theme in the latest Solaris 11 pre-release builds.
Lead : Jasper Potts
Project : mibus
OpenJDK : f244
Swing JLayer component
Add the SwingLabs JXLayer component decorator to the platform. With help of JXLayer you can easily decorate your compound components and catch all Mouse, Keyboard and FocusEvent for all its subcomponents.
JXLayer is very friendly to your applications, it uses only public Swing API and doesn't change any global settings like RepaintManager, EventQueue or frame's glassPane.
Lead : Alexander Potochkin
Project : JXLayer project
OpenJDK : f652
Updated XML Stack (JAXP, JAXB, & JAX-WS)
Upgrade the JAXP, JAXB, and JAX-WS APIs to the most recent stable versions.
Lead : Joe Wang
JAXP JSR : 206
JAXP Project : jaxp
JAXB JSR : 222
JAXB Project : jaxb
JAX-WS JSR : 224
JAX-WS Project : jax-ws
OpenJDK : f568
Some items in the OpenJDK 7 feature list are not present because they concidered as specific to the JDK rather than general Java SE Platform. There will also be some enhancements to the HotSpot JVM. As Oracle stated during JavaOne2010 there will be a converged JVM which contains the best features from both HotSpot and JRockit. There are no further details available on this up to now.
If you have links to further readings on any on the above topics, feel free to leave a comment and I will add them.
Thanks for the brief description about features of Java SE7 :)
ReplyDelete