Question .war vs .ear fichier


Quelle est la différence entre un fichier .war et .ear?


480
2017-10-20 13:38


origine


Réponses:


De GeekInterview:

Dans l'application J2EE, les modules sont regroupés sous EAR, JAR et WAR en fonction de leurs fonctionnalités

POT:   Les modules EJB qui contiennent des beans Java d'entreprise (fichiers de classe) et un descripteur de déploiement EJB sont compressés en tant que fichiers JAR avec l'extension .jar

GUERRE:   Les modules Web qui contiennent des fichiers de classe Servlet, des fichiers JSP, des fichiers de support, des fichiers GIF et HTML sont empaquetés en tant que fichier JAR avec l'extension .war (archive web)

OREILLE:   Tous les fichiers ci-dessus (.jar et .war) sont regroupés sous forme de fichier JAR avec l'extension .ear (enterprise archive) et sont déployés dans Application Server.


440
2017-10-20 13:45



UNE WAR (Web Archive) est un module qui se charge dans un Conteneur Web d'un Java Application Server. Un serveur d'applications Java possède deux conteneurs (environnements d'exécution): l'un est un conteneur Web et l'autre est un conteneur EJB.

le Conteneur Web héberge des applications Web basées sur JSP ou l'API Servlets - conçues spécifiquement pour la gestion des requêtes Web - style demande / réponse de l'informatique distribuée. Un conteneur Web nécessite que le module Web soit mis en package en tant que Fichier WAR - C'est un fichier JAR spécial avec un web.xml déposer dans le WEB-INF dossier.

Un Conteneur EJB héberge les beans java Enterprise basés sur l'API EJB, conçus pour fournir des fonctionnalités métier étendues telles que les transactions déclaratives, la sécurité déclarative au niveau des méthodes et la prise en charge multiprotocole. Style RPC de l'informatique distribuée. Les conteneurs EJB nécessitent que les modules EJB soient empaquetés en tant que Fichiers JAR - ceux-ci ont un ejb-jar.xml déposer dans le META-INF dossier.

Applications de l'entreprise peut consister en un ou plusieurs modules pouvant être des modules Web (empaquetés sous la forme d'un fichier WAR), des modules EJB (sous la forme d'un fichier JAR) ou les deux. Les applications d'entreprise sont empaquetées Fichiers EAR - Ce sont des fichiers JAR spéciaux contenant un application.xml déposer dans le META-INF dossier.

Fondamentalement, Fichiers EAR sont un superset contenant Fichiers WAR et Fichiers JAR. Les serveurs d'applications Java permettent le déploiement de modules Web autonomes dans un fichier WAR, mais en interne, ils créent des fichiers EAR en tant que wrapper autour des fichiers WAR. Conteneurs Web autonomes tels que Matou et Jetée ne prennent pas en charge les fichiers EAR - ce ne sont pas des serveurs d'applications à part entière. Les applications Web dans ces conteneurs doivent être déployées en tant que fichiers WAR uniquement.

Dans les serveurs d'applications, les fichiers EAR contiennent des configurations telles que le mappage des rôles de sécurité des applications, le mappage des références EJB et le mappage des URL de la racine de contexte des modules Web.

En dehors des modules Web et des modules EJB, les fichiers EAR peuvent également contenir des modules de connecteurs regroupés sous forme de fichiers RAR et des modules Client sous forme de fichiers JAR.


474
2017-10-20 13:59



guerre - archive web. Il est utilisé pour déployer des applications Web conformément à la norme de servlet. C'est un fichier jar contenant un répertoire spécial appelé WEB-INF et plusieurs fichiers et répertoires à l'intérieur (web.xml, lib, classes) ainsi que tout le HTML, JSP, images, CSS, JavaScript et autres ressources de l'application web

oreille - archives d'entreprise. Il est utilisé pour déployer des applications d'entreprise contenant des EJB, des applications Web et des bibliothèques tierces. C'est aussi un fichier jar, il a un répertoire spécial appelé APP-INF qui contient le fichier application.xml et contient des fichiers jar et war.


36
2017-10-20 13:45



Les fichiers WAR (archives Web) contiennent des fichiers de classes de servlets, des pages JSP (pages de servlet Java), des fichiers HTML et graphiques, ainsi que d'autres fichiers de support.

Les fichiers EAR (archive d'entreprise) contiennent les fichiers WAR ainsi que les fichiers JAR contenant du code.

Il y a peut-être d'autres choses dans ces fichiers, mais elles sont essentiellement destinées à ce qu'elles semblent vouloir dire: WAR pour les fichiers de type Web, EAR pour les fichiers de type entreprise (WARs, code, connecteurs et autres).


24
2017-10-20 13:42



Référer: http://www.wellho.net/mouth/754_tar-jar-war-ear-sar-files.html

tar (archives de bandes) - Le format utilisé est un fichier écrit en unités de nom de fichier, de taille de fichier, de fichier de données - pas de compression. peut être énorme

Jar (archive java) - techniques de compression utilisées - contient généralement des informations Java comme les fichiers class / java. Mais peut contenir tous les fichiers et la structure du répertoire

war (archives d'applications web) - Les fichiers JAR similaires n'ont qu'une structure de répertoire spécifique selon les spécifications JSP / Servlet à des fins de déploiement

oreille (archives d'entreprise) - similaire aux fichiers jar. avoir une structure de répertoire suivant les exigences J2EE afin qu'il puisse être déployé sur les serveurs d'applications J2EE. - Peut contenir plusieurs fichiers JAR et WAR


9
2018-04-10 10:44



Les fichiers d'oreille offrent davantage d'options pour configurer l'interaction avec le serveur d'applications.

Par exemple: si la version hibernate du serveur d'applications est plus ancienne que celle fournie par vos dépendances, vous pouvez ajouter ce qui suit à ear-deployer-jboss-beans.xml pour JBOSS afin d'isoler les chargeurs de classes et d'éviter les conflits:

<bean name="EARClassLoaderDeployer" class="org.jboss.deployment.EarClassLoaderDeployer">    
  <property name="isolated">true</property>
</bean>

ou à src / main / application / META-INF / jboss-app.xml:

<?xml version="1.0"?>
<jboss-app>
<loader-repository>
    loader=nameofyourear.ear
<loader-repository-config>java2ParentDelegation=false</loader-repository-config>
</loader-repository>
</jboss-app> 

Ceci s'assurera qu'il n'y a aucun conflit de classloader entre votre application et le serveur d'application.

Normalement, le mécanisme du chargeur de classe fonctionne comme ceci:

Lorsqu'une demande de chargement de classe est présentée à un chargeur de classe, il faut d'abord   demande à son chargeur de classe parent de répondre à la demande. Le parent, en   tourner, demande à son parent pour la classe jusqu'à ce que la demande atteigne le sommet   de la hiérarchie. Si le chargeur de classe en haut de la hiérarchie   ne peut pas répondre à la demande, puis le chargeur de classe enfant qui l'a appelé   est responsable du chargement de la classe.

En isolant les chargeurs de classe, votre chargeur de classe d'oreille ne regardera pas dans le parent (= JBoss / autre chargeur de classe AS). Autant que je sache, ce n'est pas possible avec les fichiers de guerre.


6
2018-02-28 13:35



J2EE définit trois types d'archives:

  1. Archives Java (JAR) Un fichier JAR encapsule une ou plusieurs classes Java, un manifeste et un descripteur. Les fichiers JAR constituent le niveau d'archivage le plus bas. Les fichiers JAR sont utilisés dans J2EE pour l'empaquetage des EJB et des applications Java côté client.

  2. Archives Web (WAR) Les fichiers WAR sont similaires aux fichiers JAR, sauf qu'ils sont spécifiques aux applications Web créées à partir des servlets, des JSP et des classes prises en charge.

  3. Archives d'entreprise (EAR) "Un fichier EAR contient tous les composants qui composent une application J2EE particulière.


6
2018-05-26 08:44



Fichiers JAR

Un fichier JAR (Java Archive) permet la combinaison de plusieurs fichiers en un seul. Fichiers avec le '.jar' extension sont utilisés par développeurs de logiciels pour distribuer des classes Java et diverses métadonnées. Ils contiennent également des bibliothèques et des fichiers de ressources, ainsi que des fichiers accessoires (tels que les fichiers de propriétés).

Les utilisateurs peuvent extraire et créer des fichiers JAR avec Java Development Kit (JDK) Commande '.jar'. Les outils ZIP peuvent également être utilisés.

Les fichiers JAR ont des fichiers manifest facultatifs. Entrées dans le fichier manifeste prescrire l'utilisation du fichier JAR. Une spécification de classe 'principale' pour une classe de fichier désigne le fichier comme un programme détaché ou «autonome».

Fichiers WAR

Un fichier WAR (ou archive d'application Web) peut comprendre du code XML fichiers (langage de balisage extensible), classes Java, ainsi que Java Server pages à des fins d'application Internet. Il est également employé pour marquer bibliothèques et pages Web qui constituent une application Web. Fichiers avec l'extension '.war' contient l'application Web à utiliser avec le serveur ou JSP (Java Page de serveur). Il a JSP, HTML (balisage hypertexte Language), JavaScript, et divers fichiers pour créer le susmentionné Applications Web

Un fichier WAR est structuré en tant que tel pour permettre des répertoires spéciaux et des dossiers. Il peut également avoir une signature numérique (un peu comme celle d'un fichier JAR) pour montrer la véracité du code.

Fichiers EAR

Un fichier EAR (Enterprise Archive) fusionne les fichiers JAR et WAR dans un fichier archive unique. Ces fichiers avec l'extension '.ear' ont un répertoire pour métadonnées. Les modules sont empaquetés dans l'archive pour lisse et fonctionnement simultané des différents modules au sein d'un serveur d'application.

Le fichier EAR a également des descripteurs de déploiement (qui sont des fichiers XML) ce qui dicte effectivement le déploiement des différents modules.

enter image description here


3
2018-01-03 16:25