Sun Microsystems executives revealed at the JavaOne conference on Tuesday future Java technologies being pondered, including Project Semplice, which will enable Visual Basic developers to use Java.
Project Semplice supports standard VB.Net concepts and seeks to reuse Visual Basic skills in Java programming, according to Graham Hamilton, Sun vice president and a Sun Fellow for the Java platform. Characterized as bringing a new language to the Java platform, Semplice compiles Visual Basic source code into Java class files. Developers can write in Visual Basic.
The planned Mustang release of Java, due Oct. 29, features accommodations for scripting languages and the Microsoft Windows Vista OS, as well as enhancements in performance, monitoring and Web services functionality, Sun officials said. The standard edition of Java generally serves as a basis for future enterprise-level editions of Java.
Officially known as Java SE 6, Mustang is to boast scripting language support, using the Rhino engine from Mozilla. Also planned are plug-ins for scripting languages such as Groovy and Python.
"We're very serious about the Java platform being multilingual," Hamilton said.
Developers might use scripting with Java to develop hybrid applications that feature both programming technologies, Hamilton said. "Perhaps a more interesting scenario is to allow your customers to extend and improve your app" through scripting, Hamilton said.
The desktop look and feel is being improved in Mustang, including adding support for Windows Vista and Internet Explorer 7.
"Mustang is going to be our big focus for Vista support," but this support also is being tested to work with the 1.4.2 and 5 versions of Java as well.
In the area of Web services, Mustang features support for the JAX-WS (Java API for XML Web Services) specification.
"What we recommend is that Java developers program up at the JAX-WS level" for mapping. Microsoft, which shares a goal of Web services interoperability with Java, is doing analogous things to what is being planned in Java, Hamilton said.
Mustang continues on the path of improving Java performance. "We're continuing to improve core performance with every release," said Hamilton.
For security, Mustang features a new byte code verifier. Monitoring and management also is highlighted, including provision of Java Virtual Machine-level diagnostics. Improved Solaris DTrace functionality also is offered.
The JConsole component of Mustang offers an overview of CPU and memory usage and other performance characteristics.
On the desktop, the Swing team is upgrading various look and feels, Hamilton said. Accelerated graphics renderings also is eyed.
"I'm really excited about Mustang," said JavaOne attendee Svein Ove Olafsen, a system developer at Selvaag BlueThink. Mustang's improvements in graphics and performance are of particular interest, Olafsen said.
With Mustang, Sun is seeking lots of feedback form the community at large and is focused on bug fixes. "There are several thousand bug fixes in Mustang but I want you to know that we are very paranoid in fixing bugs," Hamilton said. Identifying potential regressions is a one particular area of concern, he said.
Also planned for Mustang is support for the Java Specification Request (JSR) 199 Compiler API, featuring a service provider API allowing a Java program to select and invoke a Java compiler programmatically.
A second beta of Mustang is due in June.
The Dolphin release, also known as Java SE 7, is set to feature direct support for XML and "super packages," which are new constructs that allow hierarchical modular organization. Super packages are expected to benefit larger scale development.
Support of BeanShell, a lightweight Java scripting language, is eyed as a feature for Dolphin.
More acceleration of performance and graphics also is expected in Dolphin, as are improvements in monitoring and management. Beans binding, in which a JavaBean property change is propogated to another JavaBean, is planned for Dolphin as well.
"We're hoping to launch the JSR for Dolphin later this year," Hamilton said.
For Java EE, the enterprise-level version of Java, improvements are being pondered such as capabilities to support composite applications, portlets, high availability and clustering, according to Bill Shannon, the Java EE specification lead at Sun.
More support for scripting and JSP pages also are possibilities. Other improvements may be done in the areas of Web and application hosting and WebDAV (Web-based Distributed Authoring and Versioning) support. WebDAV would make it easier for lower-end applications to work with Java EE, Shannon said.