Chapter 17. Supplemental References

17.1. Types of Java Archives

JBoss EAP 6 recognizes several different types of archive files. Archive files are used to package deployable services and applications.
In general, archive files are Zip archives, with specific file extensions and specific directory structures. If the Zip archive is extracted before being deployed on the application server, it is referred to as an exploded archive. In that case, the directory name still contains the file extension, and the directory structure requirements still apply.

Table 17.1. 

Archive Type Extension Purpose Directory structure requirements
Java Archive .jar Contains Java class libraries.
META-INF/MANIFEST.MF file (optional), which specifies information such as which class is the main class.
Web Archive .war
Contains Java Server Pages (JSP) files, servlets, and XML files, in addition to Java classes and libraries. The Web Archive's contents are also referred to as a Web Application.
WEB-INF/web.xml file, which contains information about the structure of the web application. Other files may also be present in WEB-INF/.
Resource Adapter Archive .rar
The directory structure is specified by the JCA specification.
Contains a Java Connector Architecture (JCA) resource adapter. Also called a connector.
Enterprise Archive .ear
Used by Java Enterprise Edition (EE) to package one or more modules into a single archive, so that the modules can be deployed onto the application server simultaneously. Maven and Ant are the most common tools used to build EAR archives.
META-INF/ directory, which contains one or more XML deployment descriptor files.
Any of the following types of modules.
  • A Web Archive (WAR).
  • One or more Java Archives (JARs) containing Plain Old Java Objects (POJOs).
  • One or more Enterprise JavaBean (EJB) modules, containing its own META-INF/ directory. This directory includes descriptors for the persistent classes which are deployed.
  • One or more Resource Archives (RARs).
Service Archive .sar
Similar to an Enterprise Archive, but specific to the JBoss EAP.
META-INF/ directory containing jboss-service.xml or jboss-beans.xml file.