<?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>Importing an application client JAR file</title>
</head>
<body id="tjimpapp"><a name="tjimpapp"><!-- --></a>

<h1 class="topictitle1">Importing an application client JAR file</h1>
<div><div class="section"> <p>Application client projects are deployed as JAR files. You can
import an application client project that has been deployed into a JAR file
by using the Import wizard.</p>
<p>To import an application client JAR file
using the wizard:</p>
</div>
<ol><li class="stepexpand"><span>In the J2EE perspective, click <span class="menucascade"><span class="uicontrol">File</span> &gt; <span class="uicontrol">Import</span></span>. The Import wizard opens.</span></li>
<li class="stepexpand"><span>Under <span class="uicontrol">Select an import source</span>, click <span class="uicontrol">App
Client JAR file</span>.</span></li>
<li class="stepexpand"><span>Click <span class="uicontrol">Next</span>.</span></li>
<li class="stepexpand"><span>In the <span class="uicontrol">Application Client file</span> combination
box, enter the location and name of the application client JAR file that you
want to import. Click the <span class="uicontrol">Browse</span> button to select the
JAR file from the file system.</span></li>
<li class="stepexpand"><span>In the <span class="uicontrol">Application Client project</span> combination
box, type a name for a new project or select an application client project
from the list. Or, click the <span class="uicontrol">New</span> button to
launch the New Application Client Project wizard. If you type a new name in
this field, the application client project will be created based on the version
of the application client JAR file, and it will use the default location.
Use the <span class="uicontrol">New</span> button to change the J2EE version and the
location.</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. This
selection affects the run time settings by modifying the class path entries
for the project.</span></li>
<li class="stepexpand"><span>If you want to add the imported project to an enterprise application
(EAR) project, select the <span class="uicontrol">Add module to an EAR application</span> check
box.</span></li>
<li class="stepexpand"><span>In the <span class="uicontrol">EAR application</span> list, type a new
project name or select an existing enterprise application project. Or, click
the <span class="uicontrol">New</span> button to launch the New Enterprise Application
Project wizard.</span> <div class="note"><span class="notetitle">Note: </span>If you type a new EAR project name, the EAR
project will be created in the default location with the lowest compatible
J2EE version based on the version of the project being created. If you want
to specify a different version or a different location for the enterprise
application, you must use the New Enterprise Application Project wizard.</div>
</li>
<li class="stepexpand"><span>Click <span class="uicontrol">Finish</span> to import the application client
JAR file.</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/cjappcliproj.html">Application client projects</a></div>
</div>
<div class="reltasks"><strong>Related tasks</strong><br />
<div><a href="../topics/tjappproj.html" title="You can use a wizard to create a new application client project and add it to a new or existing enterprise application project.">Creating an application client project</a></div>
<div><a href="../topics/tjexpapp.html" title="You can export an application client project as a JAR file.">Exporting an application client project</a></div>
</div>
</div>
</body>
</html>