<?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, 2009 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, 2009" />
<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="reference" name="DC.Type" />
<meta name="DC.Title" content="Servers view" />
<meta name="abstract" content="The Servers view (similar to the one shown below) allows you to manage the servers. This view displays a list of all your servers and projects that are associated with that server. A project displays under a server when a project from the workbench is added to the server. You can use this view to start, start in debug mode, restart, or stop the servers. In addition, you can use the Servers view to determine the current status and state of the server; and the projects added to the server from the workbench." />
<meta name="description" content="The Servers view (similar to the one shown below) allows you to manage the servers. This view displays a list of all your servers and projects that are associated with that server. A project displays under a server when a project from the workbench is added to the server. You can use this view to start, start in debug mode, restart, or stop the servers. In addition, you can use the Servers view to determine the current status and state of the server; and the projects added to the server from the workbench." />
<meta content="servers, managing using the Servers view, views, overview" name="DC.subject" />
<meta content="servers, managing using the Servers view, views, overview" name="keywords" />
<meta content="XHTML" name="DC.Format" />
<meta content="rwrcview_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>Servers view</title>
</head>
<body id="rwrcview_wst"><a name="rwrcview_wst"><!-- --></a>


<h1 class="topictitle1">Servers view</h1>



<div><p><span id="rwrcview_ph1"><a name="rwrcview_ph1"><!-- --></a>The Servers view (similar to the
one shown below) allows you to manage the servers. This view displays
a list of all your servers and projects that are associated with that
server. A project displays under a server when a project from the
workbench is added to the server. You can use this view to start,
start in debug mode,</span><span id="rwrcview_ph2"><a name="rwrcview_ph2"><!-- --></a> restart, or stop the
servers. In addition, you can use the Servers view to determine the
current status and state of the server; and the projects added to
the server from the workbench.</span></p>

<div class="section"><p> <img src="../images/scpview.gif" alt="This is a screen capture of the&#10;Server view." /> </p>
<p id="rwrcview_wst__rwrcview_p2"><a name="rwrcview_wst__rwrcview_p2"><!-- --></a>Use the Servers
view to perform the following tasks:</p>
<ul>
<li id="rwrcview_wst__rwrcview_li1"><a name="rwrcview_wst__rwrcview_li1"><!-- --></a>Create a server</li>

<li id="rwrcview_wst__rwrcview_li2"><a name="rwrcview_wst__rwrcview_li2"><!-- --></a>Edit a server</li>

<li id="rwrcview_wst__rwrcview_li3"><a name="rwrcview_wst__rwrcview_li3"><!-- --></a>Delete a server</li>

<li id="rwrcview_wst__rwrcview_li4"><a name="rwrcview_wst__rwrcview_li4"><!-- --></a>Start a server in debug mode</li>

<li id="rwrcview_wst__rwrcview_li5"><a name="rwrcview_wst__rwrcview_li5"><!-- --></a>Start a server </li>

<li id="rwrcview_wst__rwrcview_li6"><a name="rwrcview_wst__rwrcview_li6"><!-- --></a>Restart a server in debug mode</li>

<li id="rwrcview_wst__rwrcview_li7"><a name="rwrcview_wst__rwrcview_li7"><!-- --></a>Restart a server</li>

<li id="rwrcview_wst__rwrcview_li8"><a name="rwrcview_wst__rwrcview_li8"><!-- --></a>Stop a server</li>

<li id="rwrcview_wst__rwrcview_li10"><a name="rwrcview_wst__rwrcview_li10"><!-- --></a>Publish your application</li>

<li id="rwrcview_wst__rwrcview_li11"><a name="rwrcview_wst__rwrcview_li11"><!-- --></a>Monitor server ports</li>

<li id="rwrcview_wst__rwrcview_li11b"><a name="rwrcview_wst__rwrcview_li11b"><!-- --></a>Displaying or hiding the metadata of the server
from the workbench</li>

<li id="rwrcview_wst__rwrcview_li12"><a name="rwrcview_wst__rwrcview_li12"><!-- --></a>Add and remove projects from a server</li>

</ul>
</div>

<div class="section"><h4 class="sectiontitle">Server State</h4><p id="rwrcview_wst__rwrcview_rwrcview_section_server_state_p1"><a name="rwrcview_wst__rwrcview_rwrcview_section_server_state_p1"><!-- --></a>The Servers view displays
the current state of all the servers.</p>
<p id="rwrcview_wst__rwrcview_rwrcview_section_server_state_p2"><a name="rwrcview_wst__rwrcview_rwrcview_section_server_state_p2"><!-- --></a>The following table
lists the possible states of the server:</p>

<div class="tablenoborder"><table summary="" cellspacing="0" cellpadding="4" frame="border" border="1" rules="all"><caption>Table 1. Description of the
server states</caption>
<thead align="left">
<tr>
<th valign="top" id="N1010B"> Server state</th>

<th valign="top" id="N10112"> Description of state </th>

</tr>

</thead>

<tbody>
<tr id="rwrcview_wst__rwrcview_section_server_state_starting">
<td valign="top" headers="N1010B "><span>Starting</span></td>

<td valign="top" headers="N10112 ">The workbench is in the process of connecting to the server
and is beginning the server process.<div class="tip"><span class="tiptitle">Tip:</span> Verify the actual
server is started.</div>
</td>

</tr>

<tr id="rwrcview_wst__rwrcview_section_server_state_started">
<td valign="top" headers="N1010B ">Started</td>

<td valign="top" headers="N10112 ">The workbench is successfully connected
to the server. Both the workbench and server are ready to run applications
on the server.</td>

</tr>

<tr id="rwrcview_wst__rwrcview_section_server_state_debugging">
<td valign="top" headers="N1010B ">Debugging</td>

<td valign="top" headers="N10112 ">The workbench is successfully connected to the server. Both
the workbench and server are ready to diagnose applications on the
server.</td>

</tr>

<tr id="rwrcview_wst__rwrcview_section_server_state_stopping">
<td valign="top" headers="N1010B ">Stopping</td>

<td valign="top" headers="N10112 ">The workbench is in the process of connecting to the server
and is ending the process on the server.</td>

</tr>

<tr id="rwrcview_wst__rwrcview_section_server_state_stopped">
<td valign="top" headers="N1010B ">Stopped</td>

<td valign="top" headers="N10112 "><span id="rwrcview_wst__rwrcview_section_server_state_stopped_description"><a name="rwrcview_wst__rwrcview_section_server_state_stopped_description"><!-- --></a>The
server process has ended. Or the workbench is unable to connect to
the server.</span></td>

</tr>

</tbody>

</table>
</div>
</div>

<div class="section" id="rwrcview_wst__rwrcview_section_server_status"><a name="rwrcview_wst__rwrcview_section_server_status"><!-- --></a><h4 class="sectiontitle">Server Status</h4><p>The
Servers view also displays the current status of all the servers.
Depending on the state of the server and the preference options that
are selected for that particular server, the workbench determines
the server actions that may be taken. Use the status as an indicator
for possible actions that you may want to take.</p>
<p>The following
table lists the possible server status:</p>

<div class="tablenoborder"><table summary="" cellspacing="0" cellpadding="4" frame="border" border="1" rules="all"><caption>Table 2. Description
of the server status</caption>
<thead align="left">
<tr>
<th valign="top" id="N101D4"> Server status </th>

<th valign="top" id="N101DB"> Description of status </th>

</tr>

</thead>

<tbody>
<tr>
<td valign="top" headers="N101D4 ">Synchronized</td>

<td valign="top" headers="N101DB ">Both the server and the applications are in synch.</td>

</tr>

<tr>
<td valign="top" headers="N101D4 ">Publishing</td>

<td valign="top" headers="N101DB ">Files (projects and resource files) are
copied to the correct location for the server to find and use them.</td>

</tr>

<tr>
<td valign="top" headers="N101D4 ">Restart</td>

<td valign="top" headers="N101DB ">The server needs to be restarted in order for the changes to
take place.</td>

</tr>

<tr>
<td valign="top" headers="N101D4 ">Republish</td>

<td valign="top" headers="N101DB ">Either the server or the applications or both have changed.
The changed files need to be updated on the server.</td>

</tr>

<tr>
<td valign="top" headers="N101D4 ">Restart and republish</td>

<td valign="top" headers="N101DB ">Either the server or the applications or both have changed.
When the server is restarted, the changed files are also republished.</td>

</tr>

</tbody>

</table>
</div>
</div>

<div class="section" id="rwrcview_wst__rwrcview_section_project_state"><a name="rwrcview_wst__rwrcview_section_project_state"><!-- --></a><h4 class="sectiontitle">Project State</h4><p>The
Servers view might display the current state of the application is
either started or stopped. When the Servers view does not display
a current state for the project, the workbench cannot retrieve the
state of the project from the server or the server does not support
this function.</p>
<p>If a project name appears in italic font style,
this means the project has not yet been uploaded to the server. After
the project is published into the server, the project name switches
to the typical font style used in the Servers view.</p>
<div class="p">The following
table lists the possible states of the project:
<div class="tablenoborder"><table summary="" cellspacing="0" cellpadding="4" frame="border" border="1" rules="all"><caption>Table 3. Description
of project states</caption>
<thead align="left">
<tr>
<th valign="top" id="N1028D"> Project states </th>

<th valign="top" id="N10294"> Description of states </th>

</tr>

</thead>

<tbody>
<tr>
<td valign="top" headers="N1028D ">Started</td>

<td valign="top" headers="N10294 ">The application on the server is ready to run on the server.</td>

</tr>

<tr>
<td valign="top" headers="N1028D ">Stopped</td>

<td valign="top" headers="N10294 ">The application on the server is ended and
is not taking server requests to run.</td>

</tr>

</tbody>

</table>
</div>
</div>
</div>

<div class="section" id="rwrcview_wst__rwrcview_section_project_status"><a name="rwrcview_wst__rwrcview_section_project_status"><!-- --></a><h4 class="sectiontitle">Project Status</h4><p>The
Servers view might display the current status of the application is
either synchronized or republished. When the Servers view does not
display a current status for the project, the workbench cannot retrieve
the status of the project from the server, the server is stopped or
the server does not support this function.</p>
<p id="rwrcview_wst__rwrcview_p3a"><a name="rwrcview_wst__rwrcview_p3a"><!-- --></a>The
following table lists the possible project status:</p>

<div class="tablenoborder"><table summary="" cellspacing="0" cellpadding="4" frame="border" border="1" rules="all"><caption>Table 4. Description
of project status</caption>
<thead align="left">
<tr>
<th valign="top" id="N10306"> Project status </th>

<th valign="top" id="N1030D"> Description of status </th>

</tr>

</thead>

<tbody>
<tr>
<td valign="top" headers="N10306 ">Synchronized</td>

<td valign="top" headers="N1030D ">Both copies of the application files on the server and in the
workbench are matching.</td>

</tr>

<tr>
<td valign="top" headers="N10306 ">Republished</td>

<td valign="top" headers="N1030D ">The copy of the application files on the
workbench has changed and does not match the copy on the server. The
server needs to be updated.</td>

</tr>

</tbody>

</table>
</div>
</div>

</div>

<div />

</body>
</html>