Notes de sortie 6.1.0

JBoss Enterprise Application Platform 6.1

Nouvelles fonctionnalités, Problèmes connus, et Informations sur le support dans JBoss Enterprise Application Platform 6.1.0.

Darrin Mison

Service Contenu de Red Hat Engineering

Résumé

Notes de sortie de JBoss Enterprise Application Platform 6.1.0.

1. Introduction

Bienvenue sur JBoss Enterprise Application Platform 6. Au fur et à mesure que vous vous familiariserez avec la dernière version de JBoss Enterprise Application Platform, ces notes de publication vous fournissent des informations sur les nouvelles fonctionnalités et sur les problèmes connus récemment résolus ou pas. Utiliser ce document en conjonction avec la suite de documentation de JBoss Enterprise Application Platform 6 disponible à http://docs.redhat.com/.

Important

Les changements documentés dans ces notes de sortie se rapportent à la dernière sortie, 6.0.1. Quand vous passerez à 6.0.0, veuillez vous référer aux notes de sortie 6.0.1 pour obtenir une liste complète des changements.

1.1. Commentaires

Pour rédiger des commentaires sur ce document, veuillez loger un bogue à https://bugzilla.redhat.com, sous le produit JBoss Enterprise Application Platform, version 6.1.0, composant documentation-6.1.0_Release_Notes. Vous pouvez aussi suivre l'URL suivant qui remplit l'espace produit, la version et le composant automatiquement : https://bugzilla.redhat.com/enter_bug.cgi?component=doc%20-%20release%20notes&product=JBoss%20Enterprise%20Application%20Platform%206&version=6.1.0

1.2. Généralités

JBoss Enterprise Application Platform 6 est la réponse de Red Hat aux changements importants sur la façon dont les organisations développent et déploient les applications d'entreprise. Les organisations cherchent à abaisser les coûts d'exploitation et à réduire le temps de présence des nouvelles applications sur le marché. JBoss Enterprise Application Platform 6 a été recensé avec un angle sur l'avenir, bénéficiant d'une architecture modulaire innovante, prête à accueillir la technologie cloud, dotée d'une gestion puissante et automatique et affablé d'une productivité de développement de classe mondiale.
JBoss Enterprise Application Platform 6 est Java EE 6 certifiée et dispose de fonctionnalités puissantes et flexibles, d'une amélioration des performances, d'une meilleure évolutivité et de beaucoup de nouvelles autres fonctionnalités pour améliorer la productivité des développeurs, tout cela combiné à une réputation de leader sur le marché (Red Hat) pour la certification et de soutien, assurant ainsi que votre administration et que votre développement continuent à avancer vers l'avenir.

2. Nouvelles fonctionnalités

Les nouvelles fonctionnalités suivantes ont été ajoutées dans JBoss Enterprise Application Platform 6.1.0.
Global Valves dans JBoss Web
JBoss Enterprise Application Platform 5 offrait la possibilité de configurer une Valve Globale pour le conteneur web. Dans 6.0, il était seulement possible de configurer une valve sur une base d'application unique. Pour JBoss Enterprise Application Platform 6.1 la possibilité de Valva Golbale a été restaurée.
Options de contexte initial amélioré pour les clients EJB
JBoss Enterprise Application Platform 6.1 fournit une méthode pour configurer un InitialContext avec une mappe et créer un EjbClientContext dont la portée corrrespond à ce InitialContext particulier. La méthode permet également cette configuration sans dépendances sur des classes JBoss spécifiques.
Passer des informations supplémentaires au module d'autorisation
Dans JBoss Enterprise Application Platform 6.0, il n'était pas possible de passer des informations supplémentaires au module d'autorisation, car les intercepteurs Java EE n'étaient pas appelés tant que les intercepteurs de récipient, y compris le module de connexion, ne fussent appelés eux-mêmes. JBoss Enterprise Application Platform 6.1 a ajouté la possibilité d'injecter des intercepteurs de Java EE dans la chaîne d'intercepteurs de conteneurs.
Propagation de contexte de sécurité et Changement d'utilisateur
JBoss Enterprise Application Platform 6.1 fournit des Quickstarts pour démontrer les fonctionnalités suivantes :
  • ejb-security-interceptors - Démontre comment des intercepteurs peuvent être utilisés pour changer l'identité d'appels EJB sur la base d'un appel à la fois.
  • ejb-security-interceptors - Montre comment les intercepteurs peuvent maintenant être injectés dans la chaîne d'intercepteurs du serveur pour propager des contextes de sécurité d'un EJB à l'autre et pour changer d'utilisateur dans un EJB.
Substitution de propriétés système améliorée
JBoss Enterprise Application Platform 6.0.0 incluait la substitution de propriétés comme capacité des attributs de la configuration, mais se limitait au nombre de propriétés prises en charge. Dans JBoss Enterprise Application Platform 6.1, on a augmenté le nombre d'attributs activé pour la substitution.
Noms de colonnes déterministiques dans Hibernate
Dans les versions précédentes, Hibernate n'utilisait pas d'algorythme déterministique pour générer des alias de colonnes, limitant ainsi le bénéfice dérivé du cache de la base de données. Les alias sont maintenant nommés de façon consistante.
Réplication de message HornetQ In-Memory
HornetQ offre maintenant la Haute disponibilité (HA) grâce à des messages en mémoire, en plus de l'option de stockage existante partagée.
Connecteur NIO2
EAP 6.1 fournit maintenant un connecteur basé NIO2 pour les déploiements Java7 qui fournissent une performance largement supérieure à celle du Connecteur Natif.
Déploiements superposés
EAP propose maintenant la possibilité de substituer des descripteurs de déploiement fournis avec un déploiement, par d'autres descripteurs au moment du déploiement.

3. Fonctionnalités fournies en tant qu'aperçu technologique uniquement pour l'instant

Les configurations et fonctionnalités suivantes sont connues pour avoir des problèmes non encore résolus et sont proposés en tant qu'aperçus technologiques uniquement pour l'instant. Non supportées dans un environnement de production.
HornetQ discovery via JGroups
HornetQ propose maintenant discovery dynamique des paramètres de connexion via UDP et JGroups.
WS-Trust/STS dans JBoss Web Services
JBoss Web Services expose maintenant les capacités WS-Trust/STS à partir de l'implémentation sous-jacente CXF.
JBoss CLI Silent Mode
«Silent Mode» a été ajouté à l'API CommandContext pour traiter les processus d'intégration du CLI.
Ajouter des modules avec JBoss CLI
Le CLI propose des nouvelles commandes pour ajouter ou supprimer des modules.
Configuration du Syslog Handler
EAP fournit un handler et une configuration pour le protocole syslog.
Nouveaux algorithmes de chargement de lots d'Hibernate
Hibernate a ajouté deux algorithmes à l'agorithme résiduel déjà existant, Dynamic et Padded.
Hibernate - Amélioration de la mise en cache de second niveau de références d'objets pour les données non durables.
Hibernate - Amélioration et extension du Bytecode Enhancement Support
WS-AT/XA Bridge
La fonctionnalité de pontage de transaction WS-AT/XA est fournie en tant qu'aperçu technologique uniquement, et n'est pas prise en charge en environnement de production.
Validation RestEasy avec le Validateur Hibernate
RestEasy propose maintenant un fournisseur de validation pour prendre en charge le validateur Hibernate livré avec JBoss Enterprise Application Platform 6.
Classes ServiceMBean helper restaurées
Le module org.jboss.as.system-jmx a été introduit pour restaurer les classes helper disponibles dans les versions précédentes de JBoss Enterprise Application Platform qui aidaient les utilisateurs à créer des MBeans.
Multi-JSF
Cette fonctionnalité permettait à l'utilisateur de remplacer l'implémentation JSF fournie dans EAP par une implémentation JSF fournie par un utilisateur.
JDBC Store pour les Transactions
JBoss Transactions peut être maintenant configuré pour utiliser une base de données JDBC comme store. Cela est activé par le sous-système de transactions en définissant les deux attributs suivants par le CLI.
  1. Définir use-jdbc-store à true.
    /subsystem=transactions:write-attribute(name=use-jdbc-store, value=true)
  2. Définir jdbc-store-datasource au nom JNDI pour la source de données à utiliser.
    /subsystem=transactions:write-attribute(name=jdbc-store-datasource, value=java:jboss/datasources/TransDS)
Jeu complet d'attributs fourni ci-dessous.

Tableau 1. Propriétés des transactions JDBC Store

Propriété Description

use-jdbc-store

Définir à «true» pour activer les transactions du JDBC store.

jdbc-store-datasource

Le nom JNDI de la source de données utilisée pour le stockage.

jdbc-action-store-drop-table

Faîtes glisser et recréer les tables store d'actions au lancement. Sous option, la valeur par défaut «false».

jdbc-action-store-table-prefix

Préfixe des noms de la table store d'actions. En option.

jdbc-communication-store-drop-table

Faîtes glisser et recréer les tables store de communication au lancement. Sous option, la valeur par défaut est «false».

jdbc-communication-store-table-prefix

Préfixe des noms de la table store de communication. En option.

jdbc-state-store-drop-table

Faîtes glisser et recréer les tables store de statuts au lancement. Sous option, la valeur par défaut «false».

jdbc-state-store-table-prefix

Préfixe des noms de la table store de statuts. En option.

4. Fonctionnalités non prises en charge

Certaines configurations qui fonctionnent dans JBoss Enterprise Application Platform 5 ne sont plus prises en charge. Veuillez les réviser.
API Infinispan
L'utilisation directe de l'API d'Infinispan n'est pas pris en charge dans JBoss Enterprise Application Platform 6. Infinispan est utilisé comme un détail d'implémentation pour les diverses technologies de clusters internes à JBoss Enterprise Application Platform. Les API module.xml indiquent à tort que l'utilisation directe est possible, même si ce n'est pas le cas. Cela sera corrigé dans une version ultérieure. L'utilisation directe de l'API Infinispan nécessite un abonnement à JBoss Data Grid.
Limitations IPv6 de JDK 6
Les limitations IPv6 suivantes sont causées par JDK 6, et ne sont pas des défauts de JBoss enterprise Platform 6.
  1. Dans Microsoft Windows Server, JDK 6 ne possède qu'une implémentation partielle d'IPv6. Cette implémentation n'est pas suffisante pour exécuter dans JBoss Enterprise Application Platform 6. Total Support IPv6 nécessite JDK 7 dans Microsoft Windows Server.
  2. Dans Red Hat Enterprise Linux, s'il y a un bogue dans Oracle JDK 6, toute adresse de client (point de réseau établissant la connexion) indiquée contenant zone-id va échouer. Pour utiliser zone-id, vous devrez soit mettre à jour à JDK 7, ou utiliser IcedTea/OpenJDK 6, disponible dans Red Hat Enterprise Linux, qui ne comprend pas ce bogue. Pour plus d'information sur ce bogue, voir http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6800096 et https://issues.jboss.org/browse/JBPAPP-8833.
Propagation de contexte JPA 2.0 Context Propagation en dehors d'une transaction JTA
La propagation des contextes de persistance prolongée (Extended Persistence Context or XPC) ne tenait pas en compte de l'existence d'une transaction, avec XPC constammant propagé. Ce comportement n'est pas conforme à la spécification JPA 2.0. La manipulation des XPC a été modifiée afin que lorsqu'il n'y a aucune transaction active, la propagation XPC est ignorée et afin que le bean invoqué ait son propre Contexte de persistance au lieu du XPC.
Si votre application s'attend à ce que des contextes de persistance étendus soient propagés à l'extérieur des transactions de JTA, vous devrez considérer si votre application doit être modifiée. Consultez le Guide de Migration JBoss Enterprise Application Platform 6 pour obtenir des instructions sur la mise à jour de votre application.
JBoss Enterprise Application Platform 5 a fourni une propriété système (JBPAPP-923.alwaysPropagate) pour activer ce comportement. Cette propriété système n'est pas disponible dans JBoss Enterprise Application Platform 6.
Pour obtenir plus d'informations sur cette décision, voir https://issues.jboss.org/browse/AS7-1663.
PicketLink IDM
PicketLink IDM (Identity Management) n'est pas pris en charge dans JBoss Enterprise Application Platform 6.
PicketLink STS
PicketLink STS (Security Token Service) n'est pas pris en charge dans JBoss Enterprise Application Platform 6.
Tanuki Service Wrapper
Tanuki Service Wrapper n'est pas pris en charge dans JBoss Enterprise Application Platform 6. Vous trouverez plus d'informations à l'adresse suvante https://issues.jboss.org/browse/JBPAPP-8651.
XA Recovery dans Microsoft SQL Server 2008
XA recovery ne fonctionne pas dans Microsoft SQL Server 2008 R1. Cette fonctionnalité n'opère pas dans Microsoft SQL Server 2008 R2 SP2. Pour plus d'informations, voir les URL suivants :
XA Recovery dans MySQL
Le pilote MySQL JDBC n'implémente pas XA Recovery correctement. Pour plus d'informations, voir https://issues.jboss.org/browse/JBPAPP-2576.
JBoss OSGi
JBoss OSGi, une implémentation de la spécification OSGi, est passé d'Aperçu Technologique à Non pris en charge. Pour plus d'informations, reportez-vous à https://access.redhat.com/site/solutions/362814.

5. Composants

La matrice de composants JBoss Enterprise Application Platform 6 se trouve à l'emplacement suivant : https://access.redhat.com/knowledge/articles/112673.

6. Changements notables dans cette version

6.1. Résolution de bogues

Apache Server (httpd) et Connecteurs

900363 - le JK Status Manager ne fonctionne pas

Apache mod_jk inclut un gestionnaire des états (Status Manager) des API. Quand des opérations ont été exécutées avec ce gestionnaire, les modifications n'étaient pas appliquées, qu'ils aient été initiés via API ou Interface web du JK Status Manager. Cela était dû à une erreur de synchronisation de la mémoire partagée. La cause principale a maintenant été corrigée afin que les opérations qui utilisent le gestionnaire d'états puisse maintenant fonctionner correctement.

Clustering

900392 - Singleton Service risquait d'échouer avec le message suivant "IllegalStateException: JBAS010350: Expected result from singleton provider only, but instead received 0 results"

SingletonService échouait parfois avec la sortie log suivante :
    IllegalStateException: JBAS010350: Expected result from singleton provider only, but instead received 0 results

L'erreur s'est produite dans la méthode getValueRef et a été déclenchée lorsqu'un changement d'affichage s'est produit parce que l'ancien nœud maître s'arrêtait et que le nouveau noeud était toujours en cours de démarrage. Pour résoudre ce problème, getValueRef a été changé pour retenter l'action à nouveau si aucun résultat n'est renvoyé. Le SingletonService fonctionne maintenant comme prévu.
920367 - ClusteredSingleSignOn ClassCastException with non-distributable apps
901028 - CLONE AS7-5688 ISPN000136: Execution error: java.lang.NullPointerException -> JBAS018079: Failed to passivate session
947420 - Unable to acquire lock after [0 milliseconds] with session passivation on

Consoles

900849 - EAP6 CLI error when data is over 64k

Toute commande CLI qui retourne une chaîne qui a été plus de 65535 caractères échoue en générant l'erreur suivante :
Communication error: java.util.concurrent.ExecutionException: Operation failed

Cela a été causé par l'utilisation de la méthode java.io.DataOutput.writeUTF() dans la bibliothèque de JBoss DMR. Cette méthode soulève une exception UTFDataFormatException si la chaîne en cours de traitement est de plus de 65535 caractères de long. La bibliothèque JBoss DMR a été mise à jour pour utiliser une autre technique afin de traiter correctement les chaînes de cette longueur. Toute commande CLI qui retourne une chaîne de plus de 65535 caractères de long fonctionne maintenant comme il se doit.

EJB

957171 - Client does not retry the invocation if a node is shutting down or undeploying and an EJB invocation reach the node in that state
955506 - Connections not registered correctly for inner TX when Outer TX is suspended
928922 - [AS7-6526] It is difficult to identify an EJB Timer with the logged timer-id, especially if it is non persistent
901203 - Remote EJB invocations are read/written out one byte at a time

HornetQ

900359 - CLONE - Create subsystem for JMS bridge
901137 - Server cannot be shutdowned gracefully when reconnect-attempts is set to -1
901177 - HornetQ does not delete message from queue when the message is rolled back and the DLQ is not present
913507 - OutOfMemory in SpecJMS2007 satellite driver

Lorsque NIO a été activé sur un connecteur et qu'un très grand nombre de threads est actif, vous risquez une erreur OutOfMemory. Cela s'est produit parce que NioWorker n'avait pas été mis à l'arrêt correctement et donc les threads et la mémoire qu'ils utilisaient n'ont pas été libérés. Le problème sous-jacent de thread handling a été corrigé, réduisant le risque d'erreur d'un OutOfMemory.

Il est recommandé de minimiser le paramètre "use-nio-global-worker-pool" pour minimiser le risque d'erreur OutOfMemory. Voici un exemple de configuration de connecteur :
<netty-connector name="netty" socket-binding="messaging">
   <param key="use-nio" value="true"/>
   <param key="use-nio-global-worker-pool" value="true"/>
</netty-connector>
919446 - Replicated journal - Running out of disk space after continuous backup/live switching.

JSF

957838 - An exception "java.io.NotActiveException: Fields were never written" occurs when FacesMessage object is serialized in JBoss EAP 6.

La désérialisation d'objets FacesMessage lançait l'exception (java.io.NotActiveException) dans certaines circonstances. Cela s'est produit parce que les méthodes defaultWriteObject() ou writeFields() de ObjectOutputStream n'ont pas été appliquées pendant la sérialisation, tel que requis par la spécification JSF. Ces méthodes sont maintenant correctement appelées pendant la sérialisation et la désérialisation d'objets FacesMessage fonctionne maintenant comme prévue.
901266 - @PreDestroy not called on view scoped managed bean

La mémoire utilisée par les beans JSF ViewScoped n'était pas libérée dans certaines circonstances, ce qui entraîne la mémoire utilisée par le serveur d'applications à augmenter avec le temps (une « fuite de mémoire »). C'était parce que la méthode @PreDetroy de ces beans n'était pas appelée quand leur session a expiré. L'implémentation JavaServer Faces de JBoss Enterprise Application Platform 6 a été mise à jour à Mojarra 2.1.16, ce qui résout ce problème. En cas d'expiration de la session, la méthode @PreDestroy de chacun des ViewScoped bean est maintenant appelée correctement et les ressources allouées à chaque bean sont récupérées.

Commandes et Scripts

900518 - Jdr script utility isn't able to connect to localhost:9990 at all

Sécurité

910322 - Cannot add security role to security-setting using CLI

Lorsque vous ajoutiez un security-role à l'aide de l'API ou du CLI, il fallait que l'utilisateur spécifie à la fois les rôles qu'il devrait avoir et tous ceux qu'il ne devait pas avoir. C'est parce que l'opération : Add pour cette ressource n'avait pas de valeurs par défaut pour ces paramètres. Ces valeurs par défaut correspondent maintenant à false. L'ajout d'un rôle maintenant exige tout simplement que vous spécifiez les rôles que le security-role doit avoir en les définissant à true. Pour tous les autre rôles, la valeur par défaut sera false.

Web

901061 - Need similar "DeleteWorkDirOnContextDestroy" configuration in EAP 6 Web Subsystem

JBoss Enterprise Application Platform 6 ne recompilait pas les jsp source dans le redéploiement à moins qu'ils soient plus récents que les fichiers de classes ou java associés. Les versions antérieures de JBoss Enterprise Application Platform 6 ne contenaient pas le code pour supprimer les fichiers de classes ou java lors du retrait du déploiement. Cela signifiait que si un utilisateur tentait de restaurer les sources d'une version antérieure de l'app web, les fichiers .class et .java n'étaient pas retirés, ce qui empêchait les JPS d'être recompilés. Le code correspondant a dorénavant été ajouté à JBoss Enterprise Application Platform 6 et peut être activé par le biais de propriété de système org.jboss.as.web.deployment.DELETE_WORK_DIR_ONCONTEXTDESTROY. La valeur par défaut de cette propriété est false. Les utilisateurs de JBoss Enterprise Application Platform 6 peuvent maintenant utiliser cette propriété pour supprimer les fichiers .java et .class pour s'assurer à ce que les sources JSP soient recompilées.
905165 - Method expression parameters causes NPE/MethodNotFoundException

Une méthode EL (Expression Language) dans une page JSF avec des arguments possédant la valeur null provoque une exception (NullPointerException) levée lorsqu'elle est appelée. Cela avait lieu parce que l'analyseur de JBoss Web EL ne pouvait pas traiter les cas avec un argument dont la valeur était null. JBoss Web a été mis à jour pour gérer correctement des valeurs null dans les expressions de méthode. L'invocation d'une méthode EL avec un paramètre null fonctionne maintenant comme prévu.

6.2. Problèmes connus

Apache Server (httpd) et Connecteurs

900620 - APR natives are not being loaded if UAC is in place (Windows Server 2008 R2)

Sur les serveurs Windows, les bibliothèques APR (Apache portable runtim) écoueront au chargement à moins qu'un utilisateur disposant de droits d'administration soit utilisé avec le User Account Control (UAC) désactivé.

Clustering

901164 - Stale session data received after failover, sessions are lost
900707 - Property substition breaks when the string "localhost" is used as part of the default value

La substitution de propriété ne fonctionne pas correctement lorsque la chaîne localhost a été utilisée comme valeur par défaut dans la configuration du sous-système JGroups. La substitution de propriété est une fonctionnalité fournie pour les sous-systèmes de JBoss Enterprise Application Platform 6. Cependant, tous les sous-systèmes n'ont pas cette fonctionnalité active, et certains sous-systèmes (comme JGroups) font effectivement leur propre substitution. Toutefois, ce comportement n'est pas normalisé et diffère des propriétés prises en charge de sous-système. Red Hat recommande ne pas d'utiliser la substitution de propriétés avec le sous-système JGroups, jusqu'à ce que ce problème soit résolu.
900378 - CDI beans with SET replication trigger are not replicating

En raison d'un bogue présent dans le composant Weld, la méthode setAttribute n'est pas invoquée correctement. De ce fait, les beans CDI avec le déclencheur de réplicationSET ne peuvent pas être répliqués. La solution consiste à utiliser le déclencheur SET_AND_NON_PRIMITIVE_GET pour ces beans. Cela sera corrigé dans une version ultérieure.
900549 - transient "WeldListener: java.lang.NullPointerException" with clustering and session replication

L'exception WeldListener : java.lang.NullPointerException est levée de temps en temps. Le client reçoit une réponse HTTP 503, ainsi que le texte de l'exception. La cause de ce bug est sous investigation.
900483 - CLONE - Stale session data received when using DIST SYNC on node shutdown

En cours de testing, un certain nombre de tests ont démontré que des données périmées étaient reçues quand un noeud se ferme et que le mode DIST SYNC ou DIST ASYNC était utilisé. Ce problème est en cours d'investigation.
959753 - DIST SYNC: Service jboss.infinispan.web.default-host/XY won't start after node restart with "Initial state transfer timed out"

HornetQ

959216 - Cannot send larger messages using Stomp protocol
959616 - Deadlock during clean shutdown of backup during activation

Un serveur JBoss Enterprise Application Platform 6 configuré comme serveur de sauvegarde HornetQ échouera à la fermeture dans la situation suivante :
  • Les beans basés message sont déployés localement sur le serveur, et
  • la commande de fermeture a lieu lors de l'activation du serveur.

Dans un tel cas, la fermeture se traduira par un blocage qui empêche le processus d'arrêt de s'effectuer. Une fois bloqué, le serveur est fermé en force. Dans Red Hat Enterprise Linux 6, que cela peut être fait à l'aide de la commande kill -9.

Afin d'éviter cette situation, ne tenter de fermer le serveur qu'avant ou après l'activation, et non pas lors du processus de chargement du journal.
959789 - HQ core bridge does not failover
928400 - pageSize >= maxSize causing inappropriate server state
912653 - Clone: Remote JNDI is not working with a HornetQ-only JMS bridge
922184 - Replicated journal - NullPointerException on backup side when saving add/commit message to non-existing journal
928288 - Replicated Journal - Illegal backup state if network failures present while initial journal replication from live
899966 - Problem with Netty on IPv6 link-local addresses

En raison d'un bogue JDK, si vous utilisez des adresses de liaison locale, les ID de zone seront utilisées pour distinguer quelle interface doit être choisie. Ce problème n'affecte pas les adresses globales. Une solution de contournement figurera dans une future version du composant Netty.

Commandes et Scripts

965315 - jboss-ec2-eap timeout of user script does not work properly

La fonctionnalité de timeout implémentée dans le script utilisateur sur des images AMI de JBoss Enterprise Application Platform ne fonctionne pas. Si une commande du script utilisateur se bloque, cela empêchera la machine virtuelle de démarrer correctement. La fonctionnalité de timeout était destinée à permettre à la machine virtuelle de continuer à démarrer, quelle que soit la commande de blocage du script utilisateur, permettant ainsi des diagnostics du script utilisateur. La cause de ce problème est que le shell Bash ne supporte pas le contrôle des tâches dans des shells non interactifs et que cette fonctionnalité est requise pour le timeout du script utilisateur. Aucune solution de contournement n'est actuellement disponible, mais cela devrait être résolu dans la prochaine version.
956281 - Starting EAP 6.1 on 32bit jvm can result in failure to start JVM

Dans Windows 8 32-bit JVMs, le paramètre d'espace max gen par défaut empêche la création de la JVM, ce qui empêche le serveur de démarrer. Pour résoudre ce problème, supprimer le paramètre -XX:MaxPermSize=256m des paramètres de démarrage de la JVM. Ainsi, la JVM sera créée et le serveur démarrera.
916960 - Standalone.bat does not work if parentheses are on path to EAP.

Cette version de JBoss Enterprise Application Platform 6 a un problème connu avec Windows installer et avec des installations dans un répertoire par défaut contenant des parenthèses, comme C: Program Files (x86)\jboss-eap-6.1\.

Dans ces circonstances, le fichier standalone.bat peut échouer accompagné du message \jboss-eap-6.1 was unexpected at this time.

C'est parce que le processeur DOS interprète la parenthèse finale du nom de chemin d'accès de JBoss « écho » à la fin du if qui précède.

Comment résoudre ce problème :
  1. Ouvrir le fichier JBOSS_HOME\bin\standalone.bat dans un éditeur.
  2. Chercher la ligne suivante :
    echo    JBOSS_HOME: %JBOSS_HOME%
  3. Ajouter des guillemets doubles autour de la variable %JBOSS_HOME% :
    echo    JBOSS_HOME: "%JBOSS_HOME%"

Cela assurera une interpretatin correcte des parenthèses et standalone.bat exécutera correctement.

Sécurité

920160 - Unauthorized access to a web application protected with a custom authorization module results in HTTP 200 (OK) instead of HTTP 403 (Forbidden)
963277 - Debugging Java Security Managers results in a StackOverflow on boot

Si on exécute avec un gestionnaire de sécurité activé et -Djava.security.debug=access:failure se traduit par un message d'erreur StackOverflow et une instance de JBoss Enterprise Application Platform qui ne démarre plus. Ce problème est dû à la sortie de débogage d'AccessControllercontext dans les flux de système, ce qui cause une boucle infinie lors de la vérification des autorisations. La cause de ce problème a été identifiée et devrait être corrigée dans une version ultérieure.

Documentaion Apache Server (httpd) et Connecteurs

900580 - httpd: libaprutil-1.so.0: file too short

Les binaires d'Apache portable runtime (APR) ne sont pas empaquetés en mode natif dans JBoss Enterprise Application Platform, ou JBoss Enterprise Web Server, dans Red Hat Enterprise Linux. Des liens symboliques sont utilisés pour référencer les bibliothèques de base de Red Hat Enterprise Linux. Cela peut entraîner un problème avec les liens symboliques insolubles quand on utilise des fichiers binaires APR, si les packages suivants ne sont pas installés : apr, apr-util, apr-devel, apr-util-devel.

La solution à ce problème sera fournie dans une prochaine mise à jour de Red Hat Enterprise Linux APR.

CDI/Weld

927895 - META-INF "Dependencies: org.foo.module services" doesn't work for CDI Portable extensions

Un problème connu présent dans cette version de JBoss Enterprise Application Platform 6 est que les déploiements avec dépendances sur Extensions Portables CDI livrées dans les modules échoueront accompagnés de l'exception suivante :
org.jboss.weld.exceptions.DeploymentException: WELD-001408 Unsatisfied dependencies for type [<Extension Name>]

C'est parce que les déploiements ne chargent pas les Extensions Portables CDI à partir de modules déclarés comme dépendances.

Pour qu'une application charge une Extension Portable CDI définie dans un module JBoss d'extension, il ne suffit pas pour l'application de déclarer une dépendance sur l'extension JBoss Module. L'application doit également déclarer une dépendance sur la classe d'Extension Portable dans son fichier de META-INF/services/javax.enterprise.inject.spi.Extension.

CLI

928444 - Unable to start CLI on windows if parent directory of aesh.log doesn't exist

Le CLI ne peut être lancé si le répertoire parent de son fichier log n'existe pas. Le CLI lance alors l'exception ( IOException) avec le message d'erreur suivant.
java.io.IOException: Couldn't get lock for C:\Users\hudson\AppData\Local\Temp\2\\aesh.log

Afin d'éviter cette erreur, veillez à ce que le répertoire indiqué existe bien avant de lancer le CLI.

Clustering, EJB

900480 - CLONE - Extremely slow response times in Remote EJB invocation on cluster membership change

En cas d'arrêt du serveur ou d'un crash, les modifications d'appartenance apportées peuvent prendre jusqu'à une minute pour se compléter. Cette question est en cours d'investigation.

EJB, Nommage, Remoting

923836 - remote:// protocol does not work over SSL with IBM JDK

Il s'agit d'un problème connu de cette version de JBoss Enterprise Application Platform 6. La recherche de nom à distance échoue de façon intermittente sur un JDK IBM accompagné de l'exception suivante :
org.jboss.remoting3.NotOpenException: Endpoint is not open.

Le problème semble se présenter quand le client utilise le JDK IBM. Quand le serveur est sur le JDK IBM ou que le client utilise un autre JDK, le problème ne se pose pas.

Le problème est sous investigation.

EJB, Remoting

962734 - IOException during EJB invocation causes a hang

Si un récepteur de protocole EJB côté serveur reçoit les en-têtes de message non valides d'un client, un message semblable au suivant pourrait être connecté, et le client pourrait être suspendu.
15:06:46,092 WARN  [org.jboss.as.ejb3] (Remoting "dhcp-4-126" task-4) JBAS014254: Received unsupported message header 0xffffffff on channel Channel ID 0c51fad8 (inbound) of Remoting connection 4589adff to /127.0.0.1:33329

Lorsque l'en-tête de message non valide est reçu et enregistré, le récepteur de protocole EJB ne se réinscrit pas par lui-même sur le canal, donc il ne répond pas à un autre message. Le client est mis en attente d'une réponse qui ne sera jamais envoyée parce que le message d'origine n'a pas été traité par le serveur. Aucune solution de contournement n'est connue pour cette question, mais le problème devrait être corrigé dans une version ultérieure.

EJB, Transaction Manager

952746 - Fix transaction recovery failures involving remote EJB resource

Hibernate

900321 - HHH-7287 Problem in caching proper natural-id-values when obtaining result by naturalIdQuery using NaturalIdLoadAccess

NaturalIdLoadAccess se comporte de manière incohérente lorsque vous essayez de charger des entités du Cache niveau Two(L2) après une mise à jour de ses ID naturelles d'un scénario non transactionnel.

Hibernate ne prend pas actuellement en charge la mise en cache L2 d'entités comprenant des ID naturelles dans les scénarios comportant des mélanges de transactions et un accès non transactionnel à la base de données.

Support IPv6

900564 - Wrong format of IPv6 addresses in log entries

Les adresses IPv6 doivent être formattées entre des crochets verticales droites ([ and ]) autour, telles que http://[2620:52:0:105f::ffff:2]:9990. Les crochets n'apparaissent pas dans les fichiers de journalisation de JBoss Enterprise Application Platform 6. Ce problème devra être résolu dans une version ultérieure.
900609 - Opened IPv4 sockets on Windows when server is bound to IPv6

Si JBoss Enterprise Application 6 démarre dans un serveur Microsoft Windows avec la pile IPv4 désactivée, les sockets IPv4 seront toujours ouvertes. Ce problème est toujours sous investigation.

JCA

952277 - disable xa-data-source causes that data-source loses its attribute enabled set to false and after reload it becomes enabled

RESTEasy

958896 - RESTEasy: Invalid Content-Type in response - Bad behavior when invalid accept header is specified in request header

Remoting, Nommage

913189 - Backward compatibility for JMS clients with JNDI lookups

Server

911496 - Change in module structure prevents JBDS to create an EAP 6.1 server

Web Services

900634 - JBossWS-CXF doesn't send fault message to a FaultTo endpoint when request-response message.

Si l'élément FaultTo de WS-Addressing est défini à un client WS, le serveur WS n'envoie pas de messages d'erreur à la destination FaultTo. Toutefois, si l'élément ReplyTo est défini, le serveur de WS envoie les réponses à la destination de ResponseTo. La cause de ce problème est toujours sous investigation.

mod_cluster

901227 - node-timeout, worker-timeout, flush-wait and ttl mod_cluster attributes in web console
960243 - Regression in ProxyPass integration
958991 - mod_cluster core when use ProxyPass / balancer://bal and CreateBalancers 1

Les utilisateurs de JBoss Enterprise Application Platform 6, avec CreateBalancers 1 défini dans /conf.d/mod_cluster.conf, et qui n'ont pas défini la configuration stickysession=JSESSIONID|jsessionid vont se heurter à la faute de configuration suivante :
[notice] child pid 7787 exit signal Segmentation fault (11)

Ajouter l'élément stickysession à la configuration CreateBalancers résoudra ce problème.

Par exemple :
CreateBalancers 1
ProxyPass / balancer://qacluster stickysession=JSESSIONID|jsessionid
900801 - Adding modcluster via the CLI fails.
963720 - mod_cluster: proxy DNS lookup failure with IPv6 on Solaris

non spécifié

900047 - SystemMemoryUsageLoadMetric is not correct on Linux/Unix

SystemMemoryUsageLoadMetric ne donne pas des informations pertinentes pour les systèmes d'exploitation Linux ou UNIX. Pour ces systèmes, HeapMemoryUsageLoadMetric fournit des informations plus utiles. La solution à ce problème est de modifier l'algorithme SystemMemoryUsageLoadMetric en soustrayant la valeur buffers/cache du nombre used. La meilleure façon de procéder est en cours d'investigation.
901231 - Usage of finalize() needs extra guards on IBM JDK

JBoss Enterprise Application Platform 6 peut rencontrer des échecs intermittents lors de l'exécution sur IBM JDK 6 et 7. C'est parce que le garbage collector IBM est beaucoup plus agressif que celui des autres machines virtuelles Java. Cela peut parfois se traduire parfois par la récupération de la mémoire dans les situations imprévues et ne se manifestait pas lors d'essais sur d'autres machines virtuelles Java (JVM).

Tant que la solution n'a pas été trouvée, Red Hat recommande de ne pas utiliser IBM JDK 6 ou 7 pour exécuter dans JBoss Enterprise Application Platform 6.

A. Historique des versions

Historique des versions
Version 0.0-20.1.4002013-10-30Rüdiger Landmann
Rebuild with publican 4.0.0
Version 0.0-20.1Mon Jul 1 2013Xi Huang
Translation files synchronised with XML sources 0.0-20
Version 0.0-20Thu May 23 2013Russell Dickenson
Version EAP 6.1.0 GA

Note légale

Copyright © 2013 Red Hat, Inc..
This document is licensed by Red Hat under the Creative Commons Attribution-ShareAlike 3.0 Unported License. If you distribute this document, or a modified version of it, you must provide attribution to Red Hat, Inc. and provide a link to the original. If the document is modified, all Red Hat trademarks must be removed.
Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.
Red Hat, Red Hat Enterprise Linux, the Shadowman logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Linux® is the registered trademark of Linus Torvalds in the United States and other countries.
Java® is a registered trademark of Oracle and/or its affiliates.
XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.
MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.
Node.js® is an official trademark of Joyent. Red Hat Software Collections is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation's permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.
All other trademarks are the property of their respective owners.