<?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>Creating an enterprise application project</title>
</head>
<body id="tjear"><a name="tjear"><!-- --></a>

<h1 class="topictitle1">Creating an enterprise application project</h1>
<div><div class="section"> <p>Enterprise application projects contain references to the resources
needed for enterprise applications and can contain a combination of Web modules,
JAR files, connector modules, EJB modules, and application client modules.
An enterprise application project is deployed in the form of an EAR file,
and is therefore sometimes referred to as an EAR project. The modules in an
enterprise application project are mapped to other J2EE projects. The mapping
information is stored in metadata files within the enterprise application
project. The metadata files are used for exporting the project to an EAR file
and for running the project on the server.</p>
<p>When you create an enterprise
application project, it is recommended that you do not give it a name that
contains double-byte character set (DBCS) characters.</p>
<p>To
create a J2EE enterprise application project:</p>
</div>
<ol><li class="stepexpand"><span>In the J2EE perspective, select <span class="menucascade"><span class="uicontrol">File</span> &gt; <span class="uicontrol">New</span> &gt; <span class="uicontrol">Enterprise Application Project</span></span>.</span></li>
<li class="stepexpand"><span>In the <span class="uicontrol">Name</span> field, type a name for the new
enterprise application project. To change the default <span class="uicontrol">Project location</span>,
click the <span class="uicontrol">Browse</span> button to select a new location.</span></li>
<li class="stepexpand"><span>Click <span class="uicontrol">Show Advanced</span> to specify the target
server and module version for the enterprise application.</span></li>
<li class="stepexpand"><span>In the <span class="uicontrol">Target server</span> list, select
the application server that you want to target for your development. </span></li>
<li class="stepexpand"><span>In the <span class="uicontrol">Module version</span> list, specify
the J2EE specification level that you want to use for this enterprise application.</span></li>
<li class="stepexpand"><span>Click <span class="uicontrol">Next</span>.</span></li>
<li class="stepexpand"><span>On the J2EE Modules to Add to the EAR page, select the existing
modules that you want to add to the new enterprise application project. Click
the <span class="uicontrol">New Module</span> button to open another wizard that can
create new modules for this enterprise application. In the New
Module wizard, if you select the <span class="uicontrol">Create default module projects</span> check
box, you can choose to create default versions of the following modules which
will be compatible with the enterprise application J2EE version:</span><ul><li>Application client project</li>
<li>EJB project</li>
<li>Web project</li>
<li>Connector project</li>
</ul>
 The wizard provides default project names for the modules, but you can
specify different project names. The default modules that are created will
have the same server target as the new enterprise application.<p>If you clear
the <span class="uicontrol">Create default module projects</span> check box, you can
select a single module type and proceed with the proper wizard for that project
type.</p>
<p>If you create new modules at this time, they are added to the
list of available modules in the New Enterprise Application Project wizard,
if the module versions are compatible with the new enterprise application
you are creating.</p>
</li>
<li class="stepexpand"><span>Click <span class="uicontrol">Finish</span>.</span></li>
</ol>
</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><a href="../topics/cjearproj.html" title="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.">Enterprise application projects</a></div>
</div>
<div class="reltasks"><strong>Related tasks</strong><br />
<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>