<?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.wtp.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><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>
<div class="section"> <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 window 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> field, 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> field,
type a new project or select an application client project from the drop-down
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>If you are importing to an existing project, select <span class="uicontrol">Overwrite
existing resources without warning</span>.</span></li>
<li class="stepexpand"><span>In the <span class="uicontrol">Target server</span> drop-down 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>Specify whether you want to add the new module to an enterprise
application (EAR) project.</span></li>
<li class="stepexpand"><span>In the <span class="uicontrol">EAR application</span> field, type a new
project name or select an existing enterprise application project from the
drop-down list. 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="familylinks">
<div class="parentlink"><strong>Parent topic:</strong> <a href="../topics/ph-importexport.html" title="These topics cover how to import files and projects into the workbench and export files and projects to disk.">Importing and exporting projects and files</a></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>