Comment installer une variante jar de JSF (javax.face.jar) sur WildFly

je veux utiliser le JSF 2.3 sur mon application, mais WildFly utilise la variante 2 JAR pour 2.2.

Oracle a dit ici https://javaserverfaces.java.net/2.3/download.html qui ne libèrera pas une variante 2.3 2 JAR.

9
demandé sur BalusC 2016-03-09 21:38:25

1 réponses

Voici la procédure manuelle:

  1. Extrait de javax.faces.jar avec un ZIP outil. Vous obtiendrez 3 dossiers com , javax et META-INF .

  2. Pack com et META-INF dossiers dans jsf-impl.jar avec un ZIP outil.

  3. ensuite, supprimer tous les fichiers / sous-dossiers dans META-INF sauf MANIFEST.MF .

  4. Pack javax et META-INF dossiers dans jsf-api.jar avec un ZIP outil.

  5. continuer ici avec ces jarres: améliorer JSF / Mojarra dans JBoss AS / EAP / WildFly .


pour les intéressés, JBoss AS et WildFly ont en interne une séparation modulaire de Java EE basé Fichiers API et impl. Les fichiers JAR séparés jsf-api.jar et jsf-impl.jar sont toujours nécessaires. La raison n'est pas vraiment technique, mais juste un service supplémentaire pour forcer les développeurs programmant contre les bonnes bibliothèques. Seuls les modules API sont exposés pendant la compilation (généralement via le plugin IDE-integrated qui les ajoute à "build path"). Cela devrait éviter que les débutants trouvent, importent et utilisent accidentellement des classes d'implémentation telles que celles du paquet com.sun.faces.* .

déjà depuis la version 1.x, le Mojarra de mise en œuvre JSF était composé de deux fichiers JAR: jsf-api.jar et jsf-impl.jar . Le JAR de L'API contenait les classes javax.faces.* et le JAR de mise en œuvre contenait les classes com.sun.faces.* . Depuis la modification du système de construction conforme aux règles Java EE Maven, L'API et les classes d'implémentation ont été fusionnées dans un seul fichier javax.faces.jar , voir aussi issue 2028 (commencé avec Mojarra 2.1.6 en décembre 2011). Depuis Mojarra 2.3, les fichiers JAR séparés ne sont plus construits.

10
répondu BalusC 2017-05-23 12:02:17