<?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, 2006 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, 2006" />
<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="Publishing your application" />
<meta name="abstract" content="Publishing involves copying files (projects, resource files, and server configurations) to the correct location for the server to find and use them. In the test environments, these files may already be in the correct location. In some cases, temporary copies of the server configurations may be created." />
<meta name="description" content="Publishing involves copying files (projects, resource files, and server configurations) to the correct location for the server to find and use them. In the test environments, these files may already be in the correct location. In some cases, temporary copies of the server configurations may be created." />
<meta content="servers, publishing applications, applications, publishing to servers, copying files to server" name="DC.subject" />
<meta content="servers, publishing applications, applications, publishing to servers, copying files to server" name="keywords" />
<meta content="XHTML" name="DC.Format" />
<meta content="twpub_wst" 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>Publishing your application</title>
</head>
<body id="twpub_wst"><a name="twpub_wst"><!-- --></a>


<h1 class="topictitle1">Publishing your application</h1>



<div><p><em>Publishing</em> involves copying files (projects,
resource files, and server configurations) to the correct location for the
server to find and use them. In the test environments, these files may already
be in the correct location. In some cases, temporary copies of the server
configurations may be created.</p>

<div class="section"><p id="twpub_wst__twpub_p1"><a name="twpub_wst__twpub_p1"><!-- --></a>You can either publish your application automatically
or manually. If the  <span class="uicontrol">Automatically publish when starting servers</span> check
box on the Server preferences page (<span class="menucascade"><span class="uicontrol">Window</span>
 &gt; <span class="uicontrol">Preferences</span> &gt; <span class="uicontrol">Server</span> &gt; <span class="uicontrol">Launching</span>
</span>) is selected, the server tools check to see if your project
and files on the server are synchronized. If they are not, the project and
the files are automatically updated when the server is either started or restarted.</p>
<p id="twpub_wst__twpub_p2"><a name="twpub_wst__twpub_p2"><!-- --></a>To publish your application manually you can complete one of
the following in the Servers view:</p>
</div>

<ul>
<li><span><span id="twpub_wst__twpub_steps_ph1"><a name="twpub_wst__twpub_steps_ph1"><!-- --></a>Select the server and then click the  <span class="uicontrol">Publish
to the server</span></span> <img src="../images/launch_publish.gif" alt="This is an image of the Publish toolbar&#10;icon." /> <span id="twpub_wst__twpub_steps_ph2"><a name="twpub_wst__twpub_steps_ph2"><!-- --></a>icon located on the toolbar.</span></span>
</li>

<li id="twpub_wst__twpub_steps_step2"><a name="twpub_wst__twpub_steps_step2"><!-- --></a><span>Right-click the server and then select  <span class="uicontrol">Publish</span>.</span>
</li>

</ul>

<div class="section"><p id="twpub_wst__twpub_p3"><a name="twpub_wst__twpub_p3"><!-- --></a>All the projects defined in the server configuration
that are associated with the selected server are published. The resources
in these projects are transferred to the location that is defined by the server.</p>
</div>

</div>


</body>
</html>