blob: c0973fd4e6c8ddf2574cbbb9713ebd0e4402ab4d [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html lang="en-us" xml:lang="en-us">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<!-- /*******************************************************************************
* Copyright (c) 2000, 2005 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* IBM Corporation - initial API and implementation
*******************************************************************************/ -->
<link rel="stylesheet" type="text/css" href="../org.eclipse.wst.doc.user/common.css" />
<title>Enterprise application projects</title>
</head>
<body id="cjearproj"><a name="cjearproj"><!-- --></a>
<h1 class="topictitle1">Enterprise application projects</h1>
<div><p>An enterprise application project contains the hierarchy of resources
that are required to deploy a J2EE enterprise application, often referred
to as an EAR file.</p>
<p>An enterprise application project also contains a set of references to
other J2EE modules and Java™ projects that are combined to compose
an EAR file. These projects can be Web modules, EJB modules, application client
modules, connector modules, general utility Java JAR files, and EJB client JAR files.
Enterprise application projects created in the workbench include a deployment
descriptor, as well as files that are common to all J2EE modules that are
defined in the deployment descriptor.</p>
<p>When a J2EE module project is created, it can be associated with an enterprise
application project. The project wizards aid this by allowing you to specify
a new or existing enterprise application project. Enterprise application projects
are exported as EAR (enterprise archive) files that include all files defined
in the Enterprise Application project as well as the appropriate archive file
for each J2EE module or utility JAR project defined in the deployment descriptor,
such as Web archive (WAR) files and EJB JAR files.</p>
<p>An enterprise application can contain utility JAR files that are to be
used by the contained modules. This allows sharing of code at the application
level by multiple Web, EJB, or application client modules. These JAR files
are commonly referred to as <em>utility JAR files.</em> The utility JAR files
defined for an enterprise application project can be actual JAR files in the
project, or you can include utility Java projects that are designated to become
the utility JAR files during assembly and deployment.</p>
<p>To start developing J2EE applications, you typically first create an enterprise
application project to contain your Web, EJB, and application client modules.
The enterprise application project is used to compose an entire application
from the various modules. Since no source code is built directly into an enterprise
application, these projects are not Java projects, and are not compiled by the Java builder.</p>
<div class="p">When you create an enterprise application project using the workbench,
the following key files are automatically created:<dl><dt class="dlterm">META-INF/application.xml</dt>
<dd>This file is the deployment descriptor for the enterprise application,
as defined in the J2EE specification, that is responsible for associating
J2EE modules to a specific EAR file. It is created in the <span class="uicontrol">META-INF</span> folder.</dd>
<dt class="dlterm">META-INF/.modulemaps</dt>
<dd>This file contains the mappings to the contained modules and utility JAR
projects.</dd>
</dl>
</div>
<div class="p">The following workbench artifacts are also created in an enterprise application
project but will not become part of the EAR file, and you should not edit
them manually:<dl><dt class="dlterm">.j2ee</dt>
<dd>This is a workbench artifact that includes the product version and J2EE
specification level for the project.</dd>
<dt class="dlterm">.project</dt>
<dd>This is a workbench artifact, the standard project description
file.</dd>
<dt class="dlterm">.runtime</dt>
<dd>This is a workbench artifact that contains the target server definition.</dd>
</dl>
</div>
</div>
<div><div class="relconcepts"><strong>Related concepts</strong><br />
<div><a href="../topics/cjarch.html" title="The Java 2 Platform, Enterprise Edition (J2EE) provides a standard for developing multitier, enterprise services.">J2EE architecture</a></div>
</div>
<div class="reltasks"><strong>Related tasks</strong><br />
<div><a href="../topics/tjear.html">Creating an enterprise application project</a></div>
<div><a href="../topics/tjexpear.html" title="Enterprise applications are deployed in the form of an EAR file. Use the Export wizard to export an enterprise application project into an EAR file for deployment.">Exporting an enterprise application into an EAR file</a></div>
</div>
</div>
</body>
</html>