Qu’est-ce que ‘Facet’ dans JavaEE?

Je me demande non seulement ce qu’est Facet mais aussi qu’est-ce que Facet “au niveau physique” (si je comprends bien, ce n’est pas un pot séparé, mais quoi?)?

Je me demande également comment cela peut affecter mon application après le déploiement. Je vais expliquer sur un exemple réel:

J’ai eu deux facettes (qui ont été créées par IDE): Spring Facet et Web Facet (pour jsf). Je l’ai déployé sur Tomcat et mon application a bien fonctionné.

Ensuite, j’ai ajouté (au moyen de l’IDE) une facette de plus – Facette JPA. J’ai redéployé l’application et .. ça marchait toujours bien 🙂

Donc, je suis juste curieux de savoir ce que c’est et pourquoi en avons-nous besoin?

Ceci n’est pas lié à Java EE. Ceci est lié à l’IDE. Le terme n’est pas à lui seul lié à la programmation.

De http://www.thefreedictionary.com/facet

fac · et (fst) n .

  1. Une des surfaces polies plates taillées sur une pierre précieuse ou apparaissant naturellement sur un cristal.
  2. Anatomie Une petite surface lisse et plate, comme sur un os ou une dent.
  3. Biologie L’une des unités visuelles de type lentille d’un œil composé, comme celle d’un insecte.
  4. L’un des nombreux aspects, comme d’un sujet. Voir les synonymes à la phase .

C’est 4

Dans ce cas spécifique, il s’agit simplement d’un aspect à utiliser dans le projet, afin que l’EDI puisse l’intercepter en ce qui concerne les générateurs, les assistants, les bibliothèques à inclusion automatique, etc. Si vous ajoutez, par exemple, la facette JPA , vous aurez plus d’options pour effectuer la magie de l’EDI avec JPA.

Comme BalusC l’a dit, ce n’est pas lié à Java EE mais à l’IDE. Cela permet d’append des “caractéristiques” à un projet de manière flexible.

Dans les questions-réponses d’IntelliJ IDEA pour les utilisateurs d’Eclipse (parce que vous avez mentionné IDEA):

Q: Facettes – à quoi servent-ils?

A: rationaliser la configuration du projet.

Les facettes encapsulent la prise en charge de nombreux frameworks, technologies et langages. Par exemple, pour activer Spring dans votre projet, il vous suffit d’append la facette correspondante. Toutes les bibliothèques sont téléchargées et configurées, vous bénéficiez de toute l’assistance en matière de codage, de refactorisation, etc. De plus, le modèle de code est également reconnu, vous ne vous souciez donc pas des problèmes de configuration.

Dans la plupart des cas, vous pouvez append plusieurs facettes du même type à votre projet. Par exemple, vous pouvez disposer de plusieurs facettes Web pour déployer l’application sur différents serveurs ou sur plusieurs facettes EJB, chacune pour sa propre version d’EJB. (Voir aussi Configuration du projet .)

Et oui, Eclipse utilise aussi des “facettes”:

texte alt

AFAIK, NetBeans ne le fait pas (voir Q: Comment configurer un framework Web pour mon projet? ).

Facets est un framework d’application Web qui utilise une architecture MVC simple pour le côté serveur et un modèle de composant Javascript riche en fonctionnalités pour le client. Les deux pièces sont conçues pour être parfaitement intégrées aux applications très dynamics de style AJAX

Comme expliqué dans la documentation Eclipse & Intellij , les facettes définissent les caractéristiques et les exigences (certaines configurations, spécifiques à un framework / une technologie particulière).

Lorsque vous ajoutez une facette à un projet, ce projet est configuré pour exécuter une certaine tâche, répondre à certaines exigences ou présenter certaines caractéristiques.

En bref Vous devez suivre certaines structures pour mettre en œuvre un cadre / une technologie. Les IDE ont des options pour le mettre en œuvre pour vous faciliter la vie.

Pour plus de détails, je donne des détails détaillés directement dans Eclipse Documentations. Ceci est spécifique à Eclipse .

Lors de la création d’un projet, vous aurez la possibilité d’implémenter une facette pour votre projet. Par exemple, la facette EAR configure un projet pour qu’il fonctionne en tant qu’application d’entreprise en ajoutant un descripteur de déploiement et en configurant le chemin de classe du projet.

Pour append une autre facette à un projet qui existe déjà, procédez comme suit:

  1. Dans la vue Explorateur de projets de la perspective Java ™ EE, cliquez avec le bouton droit sur le projet, puis sélectionnez Propriétés.
  2. Sélectionnez la page Facettes du projet dans la fenêtre Propriétés. Cette page répertorie les facettes du projet et leurs versions.
  3. Cliquez sur Modifier le projet et cochez les cases en regard des facettes que vous souhaitez voir figurer dans le projet.

Remarque: Seules les facettes valides pour le projet sont répertoriées.

Certaines facettes peuvent ne pas fonctionner ensemble. Ainsi, vous pouvez également choisir une combinaison prédéfinie de facettes dans la liste des préréglages .

  1. Choisissez un numéro de version pour la facette en cliquant sur le numéro de version actuel et en sélectionnant le numéro de version souhaité dans la liste déroulante.
  2. Facultatif: pour supprimer une facette, désactivez sa case à cocher. Toutes les facettes ne peuvent pas être supprimées.
  3. Facultatif: Si vous souhaitez limiter le projet pour qu’il soit compatible avec un ou plusieurs environnements d’exécution, cliquez sur l’onglet Runtimes et sélectionnez les environnements d’exécution avec lesquels vous souhaitez que le projet soit compatible. Pour plus d’informations sur les environnements d’exécution, voir Spécification des serveurs cibles pour les projets J2EE.
  4. Cliquez sur Terminer pour quitter la boîte de dialog Modifier le projet à facettes, puis cliquez sur OK.

Les facettes ont également des numéros de version dans Eclipse. Vous pouvez modifier les numéros de version des facettes tant que vous respectez les exigences des facettes. Pour modifier la version d’une facette de votre projet, procédez comme suit:

  1. Dans la vue Explorateur de projets de la perspective Java EE, cliquez avec le bouton droit sur le projet, puis sélectionnez Propriétés.
  2. Sélectionnez la page Facettes du projet dans la fenêtre Propriétés. Cette page répertorie les facettes du projet et leurs versions.
  3. Cliquez sur Modifier le projet et cliquez sur la facette à modifier.
  4. Sélectionnez la version de la facette dans la liste déroulante située à côté du nom de la facette.
  5. Cliquez sur Terminer pour fermer la fenêtre Modifier le projet à facettes, puis cliquez sur OK.

Vous pouvez faire plus de choses avec les facettes. J’ai donné les exemples pour votre meilleure compréhension. Pour plus de détails, consultez la documentation de votre IDE préféré.