Java

Notes de mise à jour
JavaTM 2 SDK, Standard Edition
Version 1.3.1

 

Table des matières

Généralités
Machine virtuelle Java (JVM)
Propriétés des polices
Bogue de Xserver sous Solaris
RMI
CORBA, RMI-IIOP et Java IDL
Technologie Java 2DTM
Glisser-Déposer
Accessibilité
AWT et Swing
JDBC
Sécurité
Gestion de réseaux
JavaTM Plug-in
Notes de localisation
Documentation
Les outils ne peuvent pas convertir les chaînes PCK japonaises sous Solaris 2.6
Problème concernant les polices Chinois traditionnel
Prise en charge de Windows 2000
Installation sous Windows NT

Généralités

Le kit Java 2 SDK, Standard Edition, version 1.3.1 (J2SDK 1.3.1) est une version de maintenance contenant des corrections de débogage pour les problèmes rencontrés dans les versions antérieures. Pour plus de détails sur ces corrections, voir
Corrections de débogage dans cette version

En outre, J2SDK 1.3.1 contient les améliorations suivantes.

Pour obtenir la documentation du Plug-in Java, voir le Site Web Plug-in Java.

Une documentation complète sur le J2SDK 1.3.1 peut être téléchargée. Consultez également le nouveau document en ligne Tuning Garbage Collection with the 1.3.1 Java Virtual Machine.

Les notes ci-dessous contiennent des informations qui peuvent s'avérer utiles aux utilisateurs de J2SDK 1.3.1, y compris des descriptions d'importantes corrections de bogues, des bogues connus et des palliatifs, ainsi que divers trucs et astuces concernant l'utilisation de cette version.

Machine virtuelle Java (JVM)

Les notes suivantes concernent la machine virtuelle Java.

Propriétés des polices

Les problèmes relatifs aux propriétés des polices suivants ont été décelés dans cette version.

Bogue de Xserver sous Solaris

Un bogue de Xserver sous Solaris peut provoquer un blocage du système lorsqu'une application écrite en langage de programmation Java fait référence à des polices. Ce problème est décrit dans le rapport de bogue 4391019. Les correctifs Solaris suivants pour Xserver seront disponibles à la mi-juin 2001 et sont susceptibles de contribuer à résoudre ce problème.

Pour Solaris 2.6 : 105633-55 (Sparc) 106248-41 (Intel)
Pour Solaris 7 : 108376-24 (Sparc) 108377-22 (Intel)
Pour Solaris 8 : 108652-31 (Sparc) 108653-26 (Intel)

Consultez régulièrement le site Web de SunSolve pour connaître la disponibilité de ces correctifs.

RMI

Comme vous pouvez le constater ci-dessous, des modifications fondamentales ont été apportées à la fonctionnalité RMI (Remote Method Invocation) dans cette version.

CORBA, RMI-IIOP et Java IDL

Les commentaires suivants concernent les fonctionnalités CORBA, RMI-IIOP et Java IDL de cette version.

Technologie Java 2DTM

Le bogue 4178909 dans les bibliothèques Java 2D TM empêche parfois l'affichage correct des applications lorsque le système tourne en mode 8 bits. Ce problème ne devrait affecter que le premier lancement d'une application après un réamorçage ou le passage au mode d'affichage 8 bits.

Il existe également certains bogues associés à DirectDraw. Si vous rencontrez un problème relatif à DirectDraw, une solution consiste à le désactiver :

-Dsun.java2d.noddraw=true

Certains pilotes d'affichage produisent des défauts de synchronisation ou des sauts d'image au cours des accès à DirectDraw. Dans ce cas, visitez le site Web du fabricant pour savoir si un nouveau pilote corrigeant ce défaut est disponible.

La plate-forme Java ne prend pas en charge les affichages 16 couleurs. Si vous remarquez des problèmes de traçage des graphiques et des composantes de l'interface utilisateur graphique sur un affichage 16 couleurs, essayez de régler l'affichage en mode 256 couleurs ou plus.

Glisser-Déposer

Les fonctionnalités ci-dessous sont mises en oeuvre et fonctionnelles, mais n'ont pas été entièrement testées, et ne sont pas prises en charge dans cette version.

Accessibilité

Les composants AWT et Swing possèdent des classes internes intégrant l'API d'accessibilité Java et fournissant aux composants la prise en charge d'accessibilité appropriée. Cependant, l'accessibilité n'est pas entièrement prise en charge pour les classes AWT suivantes dans cette version :
java.awt.TextComponent
java.awt.Menu
java.awt.MenuItem
java.awt.List
La prise en charge complète de tous les composants sera intégrée dans une version future de la plate-forme Java 2.

AWT et Swing

Les commentaires suivants concernent les fonctionnalités AWT et Swing de cette version.

JDBC

Sous Windows NT, le pont JDBC 2.0 prend en charge le gestionnaire de pilotes ainsi que les pilotes ODBC 2.x et ODBC 3.x. Le pont JDBC 2.0 a été testé uniquement avec un gestionnaire de pilotes ODBC 3.x ainsi qu'avec les pilotes ODBC 2.x et 3.x.

Merant recommande d'utiliser le pont JDBC 2.0 avec la version 3.5 ou supérieure des pilotes ODBC DataDirect Merant.

Sécurité

Les considérations de sécurité ci-dessous s'appliquent à cette version.
  • L'utilitaire jarsigner peut vérifier les fichiers signés par Netscape SignTool 1.3 à condition que les certificats de signature de code ne soient pas auto-signés. Remarque : des certificats de signature de code Netscape officiels sont fournis par VeriSignTM. Ils sont émis par VeriSign, et ne sont pas auto-signés.

    Netscape SignTool 1.3 n'insère pas de certificat dans le fichier de signature si le certificat de signature de code est auto-signé, et jarsigner ne peut pas vérifier un fichier JAR signé si le fichier de signature ne contient pas le certificat du signataire. Remarque : le certificat de signature de code généré par SignTool 1.3 ne sert qu'aux essais et est auto-signé. L'utilitaire jarsigner ne peut pas vérifier un fichier JAR signé par Netscape SignTool 1.3 si le certificat de signature de code est un certificat d'essai auto-signé.

  • Dans le kit Java 2 SDK, les classes d'application sont chargées par une instance de ClassLoader. Ainsi, elles peuvent utiliser des extensions installées. En outre, cela sépare le chemin de classes de l'application (spécifié par l'utilisateur) du chemin de classes d'initialisation (fixe et ne devant normalement pas être modifié par l'utilisateur). L'option -Xbootclasspath peut servir à remplacer le chemin de classes d'initialisation si nécessaire.

    Cela signifie toutefois que dans le kit Java 2 SDK, les classes d'applications ne possèdent plus toutes les permissions par défaut. Elles reçoivent des permissions en fonction de la politique de sécurité du système configurée. Pour cette raison, certaines applications écrivant leur propre code de sécurité en fonction du modèle de sécurité original dans JDK 1.0/1.1 peuvent déclencher une exception et ne pas démarrer dans le kit Java 2 SDK. Pour éviter ce problème, exécutez ces applications au moyen du programme de lancement oldjava , documenté à la page de référence du programme de lancement des applications Java.

  • Les notes suivantes résument les règles relatives à la sécurité et à la signature.
    • La politique de sécurité utilisée par défaut sur la plate-forme Java 2 est spécifiée par la propriété policy.provider dans le fichier des propriétés de sécurité Java, jre/lib/security/java.security. Si vous spécifiez une police de sécurité différente, vous devez placer votre nouveau fichier des propriétés de sécurité dans le chemin de la classe d'initialisation. Pour ce faire, utilisez l'option de ligne de commande -Xbootclasspath command-. Voir Page de référence du lancement des applications Java pour plus d'informations sur cette option. Ainsi, le fichier de politiques sera chargé par le chargeur de classes d'initialisation. Si le nouveau fichier de politiques par défaut est placé ailleurs, par exemple sur le chemin de classes ou dans une extension, il ne sera pas lu, et la politique par défaut spécifiée dans le fichier sun.security.provider.PolicyFile sera utilisée à sa place.

    • A compter de la version 1.2.2, le kit Java 2 SDK utilise un nouveau mécanisme de chargement de classes. Avec le nouveau chargeur de classes, si un fichier de classe appartenant à un paquetage dans un fichier JAR est signé, tous les fichiers de classe de ce paquetage doivent avoir été signés par les mêmes signataires. Il n'est plus possible d'utiliser un fichier JAR où certaines classes d'un paquetage sont signées, et où d'autres sont non signées ou signées par un signataire différent. Les fichiers JAR peuvent toujours contenir des paquetages non signés. Cependant, si certains paquetages contiennent des classes signées, tous les fichiers de classes de ce paquetage doivent être signés par le même signataire. Les fichiers JAR existants ne satisfaisant pas ce critère ne seront pas utilisables avec cette version de la plate-forme Java 2.

  • L'utilitaire keytool peut actuellement importer ou imprimer un certificat codé Base64 à partir d'un fichier seulement si ce fichier se termine par un caractère NL (saut de ligne). S'il n'y a pas de caractère NL à la fin du fichier de certificat et que vous tentez d'importer ou d'imprimer le certificat, une exception de certificat &Codage non pris en charge; surviendra, ou un message d'erreur de keytool tel que &chec d'analyse de l'entre; ou &L'entre n'est pas un certificat X.50; apparaîtra.

    Si vous obtenez ce type de message ou d'exception, il est possible que le problème soit causé par l'absence d'un caractère NL de fin. En effet, il arrive parfois qu'une réponse de certificat provenant d'une autorité de certification (suite à une requête de signature de certificat) ne contienne pas de caractère NL de fin.

    Sous UNIX, vous pouvez déterminer si un fichier contient un caractère NL de fin ou non en exécutant cette commande :

        od -xc <nom_du_certificat>
    
    où <nom_du_certificat> désigne le fichier contenant le certificat. Par exemple, si le fichier se nommait moncert , la commande serait :
        od -xc moncert
    
    Si la sortie résultante se termine par un caractère "\n" (sans les guillemets), il y a déjà un saut de ligne à la fin. Sinon, vous pouvez en ajouter un.

    Si vous ne savez pas si le fichier de certificat contient un caractère NL de fin, vous pouvez simplement en ajouter un en suivant les directives du paragraphe ci-dessous (il ne coûte rien d'en mettre plusieurs), puis réessayer la commande -import ou -printcert. Si la commande fonctionne, c'est qu'il manquait un caractère NL de fin. Si l'erreur persiste, le certificat présente un problème différent.

    Pour ajouter un saut de ligne à la fin d'un fichier de certificat codé Base64, ouvrez le fichier dans n'importe quel éditeur de texte, placez le curseur à la fin du fichier, puis ajoutez un caractère NL (ou un retour de chariot), par exemple en appuyant sur la touche Retour.

  • Gestion de réseaux

    L'API de gestion de réseaux de cette version comporte les bogues et restrictions ci-dessous :

    Si votre application utilise les classes de gestion de réseaux, elle ne s'exécutera peut-être pas correctement sous Winsock 1.1. Si votre application de gestion de réseaux doit prendre en charge Windows 95, lequel inclut Winsock 1.1, les utilisateurs de votre application devront posséder Winsock 2.0. (Windows NT 4.0, Windows 2000 et Windows ME et Windows 98 incluent Winsock 2.0). Vous pouvez télécharger Winsock 2.0 à cette adresse :

    http://www.microsoft.com/windows95/downloads/contents/wuadmintools/s_wunetworkingtools/w95sockets2/

    L'URL suivante explique comment déterminer si les composantes Winsock 2.0 sont installées sur une plate-forme Windows 95 :

    http://support.microsoft.com/support/kb/articles/Q177/7/19.asp

    Sans la mise à niveau Winsock, il est possible que InetAddress.getByName produise une panne dans kernel32.dll si la recherche d'un nom échoue. Pour plus d'informations concernant ce bogue, consultez le site Web de Microsoft.

    http://support.microsoft.com/support/kb/articles/Q176/3/54.ASP

    JavaTM Plug-in

    Les notes suivantes concernent le Plug-in Java de cette version.

    Notes de localisation

    Pour obtenir des informations générales sur la prise en charge des paramètres internationaux dans cette version, voir Notes de localisation.

    Documentation

    Les commentaires suivants concernent la documentation de cette version.

    Les outils ne peuvent pas convertir les chaînes PCK japonaises sous Solaris 2.6

    Une erreur se produit lors de l'utilisation de chaînes japonaises en arguments de la commande java sous Solaris 2.6 avec langue ja_JP.PCK. Pour résoudre ce problème, changez la ligne 89 /usr/java/bin/.java_wrapper de
    exec $DEBUG_PROG "$prog" $opts "$@"
    
    en
    exec $DEBUG_PROG $prog $opts $@
    

    Problèmes concernant les textes en chinois traditionnel

    Les problèmes suivants ont été constatés dans cette version en relation avec les polices du chinois traditionnel.

    Prise en charge de Windows 2000

    Dans la version anglaise, la version 1.3.1 du kit Java 2 SDK est prise en charge sous Windows 2000 Professional, Windows 2000 Server, Window 2000 Advanced Server. L'édition DataCenter de Windows 2000 n'est pas prise en charge. Dans les autres versions, seule l'édition Professional de Windows 2000 est prise en charge. Voici certains problèmes connus relatifs à Windows 2000 :

    Installation sous Windows NT

    Lorsque vous installez la version 1.3.1 de l'environnement d'exécution Java, le fichier de contrôles ActiveX à l'emplacement C:\Winnt\Downloaded  Program Files\Java Runtime Environment 1.3.1 aura un état "Endommagé". Ce n'est qu'un problème cosmétique et l'état "Endommagé" ne devrait avoir aucun effet négatif quelle que soit la situation.

    Il existe néanmoins un palliatif si pour une raison quelconque, vous ne pouvez pas avoir un état "Endommagé". Sélectionnez "Démarrer -> Exécuter" et tapez "regedit". A partir des fenêtres de regedit, naviguez jusqu'à la clé de registre "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Code Store Database\Distribution Units\8AD9C840-044E-11D1-B3E9-00805F499D93\DownloadInformation". Double-cliquez sur la chaîne INF et supprimez la chaîne en surbrillance sous "Données". Le fichier de contrôle ActiveX aura l'état "Installé".


    Copyright (c) 2001 Sun Microsystems, Inc. Tous droits réservés.

    Sun