Danny Coward et Mark Reinhold de Sun Microsystems ont publié le top 10 des choses qui arrivent dans Java SE 6 beta 2 (nom de code Mustang), ainsi qu'une liste de fonctionnalités approuvées et co développées avec notamment l'inclusion de la Java DB (basé sur Apache Derby) dans le JDK.
Voici un condensé des choses à savoir:
- Web Services: un support avancé pour écrire des web services XML. Vous pouvez exposer vos API de manière interopérable en ajoutant simplement une annotation sur une classe. Mustang intègre un nouveau parseur et une API "XML to Java objects" qui n'étaient jusque-là uniquement disponible avec les implémentations de Java EE ou le Java Web Services Pack.
- Scripting. Vous pouvez maintenant mixer le Java et les technologies JavaScript (idéal pour les phase de prototypage). Vous pouvez également développer vos propres moteurs et les intégrer à Java.
- Base de données. Mustang va intégrer le projet Apache Derby sous le nom Java DB. JDBC 4.0 ajoute et améliore de nombreuses fonctionnalités comme le support du type de données XML, une meilleur intégration avec les types Binary Large OBjects (BLOBs) et Character Large OBjects (CLOBs).
- Les APIs client lourd. Les développeurs d'interface client lourd vont voir arriver un grand nombre d'outils comme l'utilitaire SwingWorker qui facilite la gestion des threads dans les applications Swing, les tris et les filtres avec les JTable, et un des outils pour facilement afficher un écran de démarrage pour les utilisateurs impatients.
- Monitoring et gestion. Mustang propose plus d'information de diagnostic et intègre l'infâme outil d'analyse des piles mémoires JHat pour vous aider à les disséquer.
- Accès au compilateur. Le compilateur Java offre un accès de manière programmatique à son API pour vous permettre de générer dynamiquement du code Java.
- Les annotations. Les différents outils peuvent maintenant définir leurs propres annotations et disposent d'une réelle intégration au niveau des phases de compilation et d'exécution pour modifier le comportement des classes.
- Déploiement des applications client lourd. Une amélioration significative du "look-and-feel" Swing, du rendu du texte sur un LCD, et de manière général de meilleures performances. Les applications peuvent désormais mieux s'intégrer avec les outils spécifiques des OS comme la zone de notification (System Tray) et le menu démarrer. Mustang unifie également la technologie Java plugin et le moteur Java Web Start.
- Sécurité. Mise en place de l'API XML-Digital Signature (XML-DSIG) pour créer et manipuler les signatures digitales. Java 6 propose également de nouveaux moyens d'accéder aux services de sécurité natifs des systèmes d'exploitation comme Public Key Infrastructure (PKI) le service de cryptographie de Microsoft Windows pour sécuriser les authentifications et les communications, Java Generic Security Services (Java GSS) et les services Kerberos ainsi que l'accès aux serveur LDAP pour l'authentification.
- Les "-ité": Qualités, Compatibilité, Stabilité. 80,000 cas de tests et quelques millions de lignes de code pour s'assurer que le système répond bien aux attentes (et cela n'est qu'une partie des solutions mise en place). Des versions intermédiaires de Mustang ont été mises à disposition et téléchargées pour être testées depuis 15 mois (au lieu des 6 habituels). Les bugs sont corrigés à chaque étape. Les performances semblent meilleures que celles de J2SE 5.