<?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 content="text/html; charset=utf-8" http-equiv="Content-Type" />
<meta name="copyright" content="Copyright (c) 2000, 2008 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" />
<meta name="DC.rights.owner" content="(C) Copyright 2000, 2008" />
<meta content="public" name="security" />
<meta content="index,follow" name="Robots" />
<meta http-equiv="PICS-Label" content='(PICS-1.1 "http://www.icra.org/ratingsv02.html" l gen true r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true r (n 0 s 0 v 0 l 0) "http://www.classify.org/safesurf/" l gen true r (SS~~000 1))' />
<meta content="task" name="DC.Type" />
<meta name="DC.Title" content="Adding the Apache Tomcat runtimes" />
<meta name="abstract" content="Using the Preferences page, you can define the server runtime environment definitions for the Apache Tomcat server. To define these definitions, complete the following:" />
<meta name="description" content="Using the Preferences page, you can define the server runtime environment definitions for the Apache Tomcat server. To define these definitions, complete the following:" />
<meta content="servers, Apache Tomcat, Apache Tomcat, defining runtime environment, runtime environments, workbench, Apache Tomcat server runtime environment" name="DC.subject" />
<meta content="servers, Apache Tomcat, Apache Tomcat, defining runtime environment, runtime environments, workbench, Apache Tomcat server runtime environment" name="keywords" />
<meta scheme="URI" name="DC.Relation" content="http://wiki.eclipse.org/WTP_Tomcat_FAQ" />
<meta content="XHTML" name="DC.Format" />
<meta content="twtomprf_jst" name="DC.Identifier" />
<meta content="en-us" name="DC.Language" />
<link href="../../org.eclipse.wst.doc.user/common.css" type="text/css" rel="stylesheet" />
<title>Adding the Apache Tomcat runtimes</title>
</head>
<body id="twtomprf_jst"><a name="twtomprf_jst"><!-- --></a>


<h1 class="topictitle1">Adding the Apache Tomcat runtimes</h1>



<div><p>Using the Preferences page, you can define the server
runtime environment definitions for the Apache Tomcat server. To define these
definitions, complete the following: </p>

<a name="twtomprf_jst__steps"><!-- --></a><ol id="twtomprf_jst__steps">
<li class="stepexpand"><span>From the Window menu, select  <span class="uicontrol">Preferences</span>.</span>
</li>

<li class="stepexpand"><span>In the Preferences window, expand  <span class="uicontrol">Server</span> and
then select  <span class="uicontrol">Runtime Environments</span>.</span></li>

<li class="stepexpand"><span>On the Server Runtime Environments page, click <span class="uicontrol">Add</span>.</span>
 The New Server Runtime Environment wizard opens.</li>

<li class="stepexpand"><span>On the New Server Runtime Environment page, expand <span class="uicontrol">Apache</span>.</span>
</li>

<li class="stepexpand"><span>Select one of the following supported Apache Tomcat servers:</span>
<ul>
<li>Apache Tomcat v3.2</li>

<li>Apache Tomcat v4.0</li>

<li>Apache Tomcat v4.1</li>

<li>Apache Tomcat v5.0</li>

<li>Apache Tomcat v5.5</li>

<li>Apache Tomcat v6.0</li>

</ul>

</li>

<li class="stepexpand"><span>When you add a server runtime environment, by default a server
is created and added as an entry in the Servers view. If you want to only
add the server runtime environment and not create the server in the Servers
view, clear the <span class="uicontrol">Create a new local server</span> check box.</span>
</li>

<li class="stepexpand"><span>The Tomcat Server page opens when you click  <span class="uicontrol">Next</span>.</span>
</li>

<li class="stepexpand"><span>In the <span class="uicontrol">Tomcat installation directory</span> field,
type or browse to the directory where you extracted the installation files
of Apache Tomcat.</span>  For example, <var class="varname">x</var>:\apache-tomcat-6.0.13,
where <var class="varname">x</var> is the installation directory of the Apache Tomcat
server.</li>

<li class="stepexpand"><span>Click <span class="uicontrol">Finish</span>.</span></li>

</ol>

</div>

<div><div class="relinfo"><strong>Related information</strong><br />
<div><a href="http://wiki.eclipse.org/WTP_Tomcat_FAQ" target="_blank" title="See this link for additional information using the Apache Tomcat server with the workbench.">WTP
Tomcat FAQ</a></div>
</div>
</div>

</body>
</html>