Sun JavaTM System Application Server Platform Edition 8.2 est un serveur compatible avec la plate-forme J2EE 1.4 pour développer et déployer des applications J2EE et des services Web basés sur la technologie Java.
Cette section aborde les sujets suivants :
Sun Java System Application Server Platform Edition 8.2 implémente de nombreuses et nouvelles fonctionnalités :
Compatible avec la plate-forme J2EE 1.4.
(Amélioration) Une expérience de développement exceptionnelle avec NetBeans 5 et une vitesse de déploiement accrue, une empreinte (numérique) du temps d'exécution et un meilleur démarrage du serveur. NetBeans 5.0 inclut Application Server 8.2 comme moteur d'exécution J2EE par défaut.
(Nouveauté) Meilleures performances en termes de débit et d'extensibilité de prise en charge d'architecture multicœur/ multiprocessus.
(Nouveauté) La prise en charge rapide de Infoset améliore les divers traitements des services Web.
(Nouveauté) Application Server 8.2 prend également en charge Red Hat 4 et My SQL 5. Reportez-vous à la section Configurations matérielles et logicielles requises, plus loin dans ce document pour obtenir une liste complète des systèmes d'exploitation et pilotes de base de données pris en charge.
(Nouveauté) Application Server 8.2 intègre une base de données Derby prête à être déployée, permettant ainsi de développer et de déployer des applications J2EE de bout en bout.
(Nouveauté) Un adaptateur de ressource JMS intégré offre une connectivité plus simple que jamais avec des systèmes principaux. Application Server 8.2 prend en charge la connectivité avec IBM MQ Series et Sun MQ Server.
(Mise à jour) Plans d'actions J2EE 1.4 améliorés comprenant une démonstration sur l'utilisation de technologies Web 2.0 comme AJAX avec Application Server 8.2.
Prise en charge de JavaServer Faces — Les développeurs peuvent développer rapidement des applications Web en assemblant des composants d'interface utilisateur réutilisables dans une page, en reliant ces composants à une source de données et en envoyant les événements gérés par le client vers des gestionnaires d'événements sur le serveur.
Console d'administration améliorée — La console d'administration de Application Server 8.2 contient de nouvelles fonctions conviviales comme un navigateur d'espace de nommage JNDI, une validation de connexion JDBC, un afficheur descriptif du déploiement, un afficheur du journal d'erreurs et un meilleur contrôle.
Sécurité des services Web : Mécanismes de sécurité des messages implémentant une authentification au niveau du message (signature et chiffrement numériques XML par exemple) d'appels de services Web SOAP à l'aide de X509 et de profils nom d'utilisateur/mot de passe conforme à la norme de sécurité OASIS WS.
Prise en charge de JavaServer Pages Standard Tag Library 1.1: la bibliothèque renferme une fonctionnalité clé commune à de nombreuses applications JSP.
(Updated) J2SE 5.0_06 intégré.
Sun Java System Application Server Platform Edition est sans frais dans le cadre d'activités de développement, déploiement et de redistribution. Les clients intéressés par la redistribution peuvent contacter le service des ventes OEM Sun afin d'obtenir une licence de redistribution. Sun propose une assistance contre frais supplémentaires. Si vous souhaitez être informé sur la licence de Java 2 Platform, Enterprise Edition, renseignez ce formulaire.
Cette section présente la configuration système requise pour installer Sun Java System Application Server Platform Edition 8.2.
Le tableau ci-dessous répertorie les systèmes d'exploitation pris en charge par Sun Java System Application Server Platform Edition 8.2.
Tableau 2–1 Systèmes d'exploitation pris en charge
Système d'exploitation |
Mémoire minimum |
Mémoire recommandée |
Espace disque minimum |
Espace disque recommandé |
JVM |
---|---|---|---|---|---|
Sun Solaris 9, 10 (SPARC) Solaris 9, 10(x86) |
512Mo |
512Mo |
250Mo disponibles |
500Mo disponibles |
J2SE 1.4.2_10, J2SE 5_06 |
Sun Java Desktop System |
512Mo |
1Go |
250Mo disponibles |
500Mo disponibles |
J2SE 1.4.2_10, J2SE 5_06 |
Redhat Enterprise Linux 3.0 U1, 4.0 |
512Mo |
1Go |
250Mo disponibles |
500Mo disponibles |
J2SE 1.4.2_10, J2SE 5_06 |
Windows Server 2000 SP4+ Windows 2000 Advanced Server SP4+ Windows Server2003 Windows XP Pro SP1+ |
1Go |
2Go |
500Mo disponibles |
1Go disponible |
J2SE 1.4.2_10, J2SE 5_06 |
Sous UNIXTM, vous pouvez vérifier la version du système d'exploitation en utilisant la commande uname et l'espace disque en utilisant la commande df.
Utilisez le système de fichiers NTFS plutôt que FAT ou FAT32 lorsque Application Server est exécutée sur une plate-forme Microsoft Windows.
Pour obtenir la liste actuelle des patchs requis pour Sun Java System Application Server Platform Edition 8.2, accédez au site http://sunsolve.sun.com et sélectionnez “Patches” ou “Patch Portal”. Cliquez ensuite sur les liens de Sun Java System Application Server Platform Edition 8.2. Au fur et à mesure de la modification des patchs de système d'exploitation requis et de la mise à disposition de patchs pour les composants Java Enterprise System, les mises à jour deviennent disponibles sur le site SunSolve, initialement sous la forme de groupes de patchs recommandés.
Sun conseille aux utilisateurs de Solaris 9, 10 (x86, SPARC) d'installer le groupe de patchs recommandés. Ce dernier est disponible dans la section des patchs sécurisés et recommandés du site Web SunSolve.
Pour exécuter des composants natifs de ce produit, y compris le programme d'installation, le package suivant (qui ne fait pas partie de la distribution RedHat Enterprise Linux 3.0 standard) doit être installé : compat-libstdc++-7.3-2.96.118.i386.rpm. Ce package peut être téléchargé à l'adresse http://rpm.pbone.net/index.php3/stat/4/idpl/843376/com/compat-libstdc++-7.3-2.96.118.i386.rpm.html.
Sun Java System Application Server Platform Edition a été conçu pour prendre en charge la connectivité des SGBD avec les pilotes JDBC correspondants. Pour obtenir la liste des composants testés par Sun et jugés compatibles pour la création de configurations de bases de données conformes J2EE, reportez-vous au tableau suivant :
Tableau 2–2 Pilotes JDBC compatibles J2EE
Fournisseur JDBC |
Type de pilote JDBC |
Serveur de base de données pris en charge |
---|---|---|
Logiciel inet |
Type4 |
Oracle (R) 8.1.7, 9i, 9.2.0.3+, 10.1.x, 10.2. x Sybase ASE 12.5. Microsoft SQL Server 20004.0 Service Pack1 |
IBM |
Type2 |
IBM DB28.1 Service Pack3+ |
Derby |
Type4 |
Apache Derby 10.1.2.1 |
PointBase |
Type4 |
PointBase Network Server 5.2 |
MySQL |
Type4 |
5.x |
DataDirect |
Type4 |
Oracle (R) 8.1.7, 9i, 9.2.0.3+, 10.1.x, 10.2. x Sybase ASE12.5.2 Microsoft SQL Server IBM DB28.1 Service Pack3+ |
Oracle |
Type4, type2 |
Oracle (R) 9.2.0.3+, 10.1.x, 10.2.x |
Cette section décrit des instructions d'implémentation de la base de données Derby intégrée à Application Server 8.2.
Sun Java System Application Server 8.2 introduit deux nouvelles commandes asadmin pour démarrer et arrêter le serveur Derby Network.
La commande start-database permet de démarrer une instance du serveur réseau Derby :
start-database [--dbhost 0.0.0.0] [--dbport 1527] [--dbhome path/derby] |
La valeur par défaut de l'hôte est 0.0.0.0, permettant ainsi à Derby d'écouter localhost et les interfaces IP/hostname. La valeur de la propriété dbhome représente l'emplacement des bases de données Derby. La valeur path par défaut est <appserver_install_dir>/derby.
La commande asadmin stop-database permet d'arrêter une instance du serveur réseau Derby actuellement utilisé :
stop-database [--dbhost 0.0.0.0] [--dbport 1527] |
La configuration de Derby proposée avec Application Server 8.2 comprend également plusieurs scripts utiles vous permettant d'utiliser Derby. Les scripts suivants peuvent être utilisés dans le répertoire <appserver_install_dir> /derby/frameworks/NetworkServer/bin :
startNetworkServer.ksh/bat — Script permettant de démarrer le serveur réseau
stopNetworkServer.ksh/bat — Script permettant d'arrêter le serveur réseau
ij.ksh/bat — Outil de script JDBC interactif
dblook.ksh/bat — Script permettant d'afficher tout ou partie du LDD d'une base de données
sysinfo.ksh/bat — Script permettant d'afficher des informations de versionnage relatives à l'environnement Derby
NetworkServerControl.ksh/bat — Script permettant d'exécuter des commandes sur l'API NetworkServerControl
Paramétrez la variable d'environnement DERBY_INSTALL de sorte qu'elle pointe sur le répertoire <appserver_install_dir>/derby.
Annulez le paramétrage de la variable d'environnement CLASSPATH.
Facultativement, vous pouvez également paramétrer les propriétés suivantes :
Pour plus d'informations sur ces utilitaires, reportez-vous aux guides Tools et Admin de Derby.
Cet exemple explique comment capturer le LDD d'une table dans Pointbase et créer la même table dans Derby à l'aide de Netbeans 5.0. Un autre procédé consiste à utiliser l'outil de commandes et la commande unload database :
./startcommander.sh Do you wish to create a new Database. (Yes (Y) or No (N))? [default: N]: Enter product to connect with: (Embedded (E) or Server (S))? [default: E]: e Enter driver to use? [default: [com.pointbase.jdbc.jdbcUniversalDriver]: Enter database URL? [default: [jdbc:pointbase:embedded:sample]: Enter Username? [default: PBPUBLIC]: Enter Password? [default: PBPUBLIC]: PointBase Commander 5.2 ECF build 294 size restricted version EMBEDDED Interactive SQL command language. SunOS/5.9 (C) Copyright 2004 DataMirror Mobile Solutions, Inc. All rights reserved. Licensed to: Sun_customer_demo_use For commercial version contact PointBase at: pointbase.com PHONE: 1-877-238-8798 (US & CANADA) 1-408-961-1100 (International) WEBSITE: www.pointbase.com SQL>unload database sampledb.sql; SQL> unload database sampledb.sql; SQL> 13 Row(s) Unloaded. (PBPUBLIC.CUSTOMER_TBL) SQL> 4 Row(s) Unloaded. (PBPUBLIC.DISCOUNT_CODE_TBL) SQL> 30 Row(s) Unloaded. (PBPUBLIC.MANUFACTURE_TBL) SQL> 11 Row(s) Unloaded. (PBPUBLIC.MICRO_MARKETS_TBL) SQL> 9 Row(s) Unloaded. (PBPUBLIC.OFFICE_TBL) SQL> 4 Row(s) Unloaded. (PBPUBLIC.OFFICE_TYPE_CODE_TBL) SQL> 15 Row(s) Unloaded. (PBPUBLIC.ORDER_TBL) SQL> 6 Row(s) Unloaded. (PBPUBLIC.PRODUCT_CODE_TBL) SQL> 30 Row(s) Unloaded. (PBPUBLIC.PRODUCT_TBL) SQL> 10 Row(s) Unloaded. (PBPUBLIC.SALES_REP_DATA_TBL) SQL> 10 Row(s) Unloaded. (PBPUBLIC.SALES_REP_TBL) SQL> 52 Row(s) Unloaded. (PBPUBLIC.SALES_TAX_CODE_TBL) SQL> 12 Table(s) Unloaded. SQL> quit;
Les résultats de la commande unload database de l'exemple ci-dessus sont renvoyés dans le fichier sampledb.sql. Ce fichier sampledb.sql contient l'ensemble du LDD nécessaire pour créer des tables et index. Il contient également le DML permettant de retransférer les données dans la base de données. La commande RUN vise à importer les données d'une autre base de données Pointbase à l'aide du script généré. Voici un exemple d'affichage des instructions INSERT et des données associées dans le fichier généré :
INSERT INTO "ADVENTURE"."CATEGORY" ( "CATID", "LOCALE", "NAME", "DESCRIPTION", "IMAGEURI" ) VALUES( ?, ?, ?, ?, ? ); { 'ISLAND ','en_US','Island Adventures','Experience an island / paradise in a way fit for your needs.','Island_Adventures.gif' 'JUNGLE ','en_US','Jungle Adventures','Experience a jungle / paradise in a way fit for your needs.','Jungle_Adventures.gif' 'MOUNTAIN ','en_US','Mountain Adventures','Experience an / elevated paradise with a view.','Mountain_Adventures.gif' 'ORBITAL ','en_US','Orbital Adventures','Experience a vacuum / paradise with a beautiful view and where no one can hear you scream.', / 'Space_Adventures.gif' 'WESTERN ','en_US','Western Adventures','Enjoy the Wild West. / ','Western_Adventures.gif' 'SOUTH_POLE ','en_US','South Pole Adventures','Experience a / frozen paradise in a way fit for your needs.','SouthPole_Adventures.gif' };
Vous pouvez aisément modifier le fichier généré à l'aide de la commande unload database afin qu'il ne comporte que le LDD (il serait ainsi simple de développer un programme capable de traiter les instructions insert, par exemple). Pour simplifier, utilisons la commande unload database sur la base de données sample Pointbase, puis modifions le script généré en apportant les modifications suivantes :
Supprimons la phrase Organization Heap à la fin de toutes les instructions CREATE Table
Supprimons la commande COMMIT
Remplaçons le datatype Boolean par smallint
Supprimons toutes les instructions INSERT et données associées
Un script Ant simple est ensuite utilisé pour exécuter le LDD avec la cible sql . Enfin, la même expérience est répétée sur la base de données sun-appserv-samples pour laquelle les modifications supplémentaires suivantes doivent être apportées au fichier SQL généré :
Apportez toutes les modifications comme indiqué ci-dessus pour la base de données sample
Supprimez les commandes create user
Supprimez les commandes SET PATH
Remplacez la précision Decimal de 38 par une valeur max de 31
Remplacez la précision float de 64 par une valeur max de 52
Le mot-clé SPECIFIC de la commande CREATE PROCEDURE n'est actuellement pas pris en charge
Supprimez les commandes GRANT
La conversion de procédures Java Pointbase pour fonctionner avec Derby nécessite l'apport de modifications au code Java et aux instructions CREATE PROCEDURE. Des informations sur la création de procédures Java Derby sont disponibles dans le manuel de référence Derby Reference manual. Le type de données Boolean sera pris en charge dans la prochaine version de Derby.
Cette section répertorie les navigateurs pris en charge avec la console d'administration de Sun Java System Application Server Platform Edition 8.2 et le Quick Start Guide. Les navigateurs pris en charge lors de l'exécution d'applications sur Application Server dépendent des applications exécutées.
Tableau 2–3 Navigateurs pris en charge
Navigateur |
Version |
---|---|
Mozilla |
1.4, 1.5, 1.6, 1.7.x |
Netscape Navigator |
6.2, 7.0 |
Internet Explorer |
5.5 Service Pack2, 6.0 |
Firefox |
1.x |
Reportez-vous au Sun Java System Application Server Platform Edition 8.2 Installation Guide pour obtenir des instructions complètes de mise à niveau à partir d'une version précédente de Application Server à la version Sun Java System Application Server Platform Edition 8.2.
Avant d'installer le logiciel Sun Java System Application Server, vous devez également veiller à ce que les autres exigences ci-dessous soient satisfaites.
Espace libre — : le répertoire temporaire doit disposer d'au moins 200 Mo d'espace libre pour l'installation de Sun Java System Application Server et 250 Mo pour l'installation du kit SDK.
Utilisation du programme de désinstallation– : si vous devez supprimer Application Server du système, veillez à utiliser le programme de désinstallation fourni avec le logiciel. Si vous utilisez une autre méthode, des problèmes pourraient survenir lors de la réinstallation de cette version ou de l'installation d'une nouvelle version.
Ports disponibles– : vous devez disposer de sept ports non utilisés et disponibles.
Le programme d'installation détecte automatiquement les ports utilisés et propose des ports non utilisés comme paramètres par défaut. Par défaut, il s'agit des ports 8080 pour HTTP, 8181 pour HTTPS et 4848 pour Administration Server.
Le programme d'installation détecte les ports utilisés et vous en attribue deux autres : Sun JavaTM System Message Queue (par défaut, 7676) et IIOP (par défaut, 3700 pour IIOP et 3820 et 3890 pour IIOP/SSL). Si ces numéros sont utilisés, le programme d'installation affecte un numéro de port aléatoire à partir de la plage de ports dynamiques (notez qu'il peut ne pas s'agir du prochain numéro de port disponible).
Démarrage de serveurs déjà installés (UNIX) : à moins que vous ne remplaciez le serveur précédemment installé, vous devez le démarrer avant d'entamer la procédure d'installation de Sun Java System Application Server 8.2. Le programme d'installation sera ainsi en mesure de détecter les ports utilisés et évitera de les affecter à d'autres utilisations.
Remplacement de serveurs déjà installés (UNIX) : si vous souhaitez remplacer une ancienne version de Sun Java System Application Server par cette version de Application Server, vous devez l'arrêter avant de procéder à l'installation du nouveau serveur.
Arrêt du pare-feu (Microsoft Windows) : vous devez arrêter votre pare-feu avant d'installer le logiciel Sun Java System Application Server. À défaut, tous les ports par défaut risquent d'être désactivés. Le programme d'installation doit pouvoir déterminer, avec précision, les ports disponibles.
Pour de plus amples informations de compatibilité, reportez-vous au Sun Java System Application Server Platform Edition 8.2 Upgrade and Migration Guide.
Une requête EJBQL peut ne pas contenir tous les résultats correspondants si la clause where inclut un opérateur OR et une navigation cmr à une valeur.
Panneaux interrompus dans le nouvel assistant de services Web.
La commande - asadmin create-domain --help entraîne une utilisation incorrecte et une option non valide est consignée (--admin.jmxport ).
La définition d'un message cible via java-method ne fonctionne pas dans des éléments client-side message-security-binding.
Grâce à l'API AMX, la suppression d'une référence d'application J2EE à partir d'un serveur supprime l'application, mais celle-ci est toujours accessible.
AS 8.2 PE/EE : Utilisez PlatformMBeanServer, si disponible.
DOCS:java.sql.statement.getConnection() ne satisfait pas la spécification javadoc pour des pools de connexions.
Le port 8080 n'est pas libéré par domaine après l'arrêt et la suppression.
Impossible d'enregistrer la valeur de prise en charge des transactions lors de la première création de fabrique de connexion JMS.
Pour Application Server 8.1 UR2 PE, la commande asant ne peut pas être exécutée sous Windows 2000 ; une erreur de commande trop longue est renvoyée.
Échec de test de basculement Rich client RMI-IIOP.
Prise en charge du bundle Grizzly ARA dans 8.2.
Emplacement du journal d'accès d'Application Server 8.1 Virtual Server non mis à jour.
RA générique pour JMS doit être intégré à AS 8.2.
Disque d'E/S pour journaux de transactions XA trop volumineux.
Rendre le lanceur natif d'Application Server 8.x conforme au bourne shell en le dissociant du contrôle TTY.
S1AS 7.0/SJAS7.1 : EJBC/RMIC génère STUB/Skel sans FQPN (fully Qualified Package Name).
Le serveur doit rejeter des demandes dont l'en-tête présente deux Content-Length
La commande asadmin create-domain --help génère des caractères de fusion CVS et est tronquée.
Le paramétrage de setAutoCommit sur false est répété lorsque l'utilisateur suivant utilise la même connexion.
Annuler le déploiement : Erreur lors de l'annulation de l'enregistrement de mbean.
Problème de mappage UTF-8 URI du conteneur Servlet.
L'outil de déploiement n'accepte pas les espaces dans le chemin d'installation
Échec de la commande de déploiement avec une installation sur fichier autre qu'à la racine.
Le déploiement est interrompu sous Windows.
Des applications déployées ne sont pas accessibles après la mise à niveau.
Une amélioration des performances de déploiement est nécessaire.
Le redéploiement échoue parfois et l'erreur suivante est renvoyée : Error while running ejbc -- Fatal Error from EJB Compiler.
L'annulation du déploiement ne libère pas tous les fichiers.
Échec du redéploiement de fichier WAR (déploiement à distance pour Creator).
Fuite de mémoire AS8102 lors de scénarios de déploiement/annulation du déploiement (SubCR à partir de 6324399 EJBClassLoader.
Sun Java System Application Server 8.2 prend en charge les plates-formes J2EE 1.4 et Java EE 5. Le tableau ci-dessous présente une description des API disponibles sur la plate-forme J2EE 1.4 :
Tableau 2–4 Principales différences d'API sur la plate-forme J2EE 1.4
API |
Description |
---|---|
Composants |
|
Application et client d'application |
Implémentation des descripteurs de déploiement standard à l'aide de schémas XML |
Enterprise JavaBeans (EJB)2.1 |
Service d'horloge et extrémité du service Web EJB |
Java Servlet2.4 |
Filtre de l'extrémité du service Web |
Architecture de JavaServer Pages (JSP)2.0 |
Langue d'expression et bibliothèque de balises |
J2EE Connector Architecture1.5 |
Caractère enfichable de Java Message Service (JMS) et de l'adaptateur de ressource entrant |
Services Web |
|
Java Web Services Developer Pack1.5 |
Boîte à outils intégrée permettant de créer, de tester et de déployer des applications XML, des services Web et des applications Web. |
Java API for XML-based Remote Procedure Calls (JAX-RPC)1.1 |
Mappage WSDL et technologie Java et prise en charge du développement de clients et points d'extrémité de services Web. |
WS-I Basic Profile1.0 |
Élément d'activation pour l'interopérabilité via le langage WSDL et le protocole SOAP |
SOAP with attachment API for Java (SAAJ)1.2 |
API pour système de messagerie SOAP. Favorise la création de messages SOAP avec des pièces jointes. |
Java APIs for XML Registries (JAXR)1.0 |
API uniforme et standard permettant d'accéder aux registres XML, tels que ceux destinés à UDDI (Universal Description Discovery and Integration) et ebXML. |
Autre |
|
J2EE Deployment1.1 |
API standard permettant le déploiement d'applications et de composants J2EE |
J2EE Management1.0 |
Définitions du modèle d'informations pour la gestion de la plateforme J2EE |
Java Management Extensions (JMX)1.2 |
API de gestion standard |
Java Authorization Contract for Containers (JACC)1.0 |
Définitions de contrats de sécurité entre un serveur Application Server J2EE et un fournisseur de stratégie d'autorisation |
Java API for XML Processing (JAXP)1.2 |
API avec laquelle les applications peuvent analyser et transformer des documents XML ; elle permet également de prendre en charge le traitement des schémas XML. |
JMS1.1 |
Norme de messagerie qui permet aux composants d'application J2EE de créer, envoyer, recevoir et lire des messages ; permet également de prendre en charge les API uniformes pour files d'attente et rubriques. |
JavaMail1.3 |
Ensemble de classes abstraites permettant de structurer un système de messagerie ; comporte également des mises à jour mineures pour les API. |
Sun Java System Application Server 8.2 prend en charge J2SE 1.4.2 et J2SE 5.0 comme JVM sous-jacente. Pour passer d'une version J2SE à l'autre, suivez les étapes générales suivantes. (Windows et Unix)
Téléchargez le kit J2SE SDK (et non JRE) et installez-le sur votre système si ce n'est pas déjà fait.
Le kit J2SE SDK peut être téléchargé à l'adresse http://java.sun.com/j2se.
Arrêtez complètement Application Server.
Vous pouvez utiliser la ligne de commande suivante :
as-install/bin/asadmin stop-domain |
Vous pouvez également utiliser l'interface de la console d'administration :
Modifiez le fichier install_dir/config/asenv.conf (asenv.bat sous Windows), en remplaçant la valeur AS_JAVA de sorte qu'elle pointe sur le nouveau répertoire de base de J2SE.
Modifiez le fichier as-install/samples/common.properties , en remplaçant la ligne commençant par com.sun.aas.javaRoot... de sorte qu'elle désigne le nouveau répertoire de base de J2SE.
Redémarrez Application Server.
as-install/bin/asadmin start-domain |
Si vous mettez à niveau depuis une version du kit JDK antérieure à la version intégrée (JDK 1.4.2_06), les étapes ci-dessus ne vous permettent pas de mettre à niveau en la version J2SE 5.0 ou ultérieure. En effet, outre les étapes décrites ci-dessus, vous devez supprimer tous les domaines et les recréer.