<?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>
<head>
<!-- /*******************************************************************************
 * 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>Adding a service</title>
</head>
<body id="taddsrvc"><a name="taddsrvc"><!-- --></a>

<h1 class="topictitle1">Adding a service</h1>
<div><p>The  <tt class="sysout">service</tt> element is a collection
of related ports and specifies the location of the service.</p>
<div class="section"><p>To create a new service, follow these steps:</p>
</div>
<ol><li class="stepexpand"><span>In the Graph view, right-click in any blank space and click  <strong>Add
Child &gt; Service</strong>.</span></li>
<li class="stepexpand"><span>Type the name of the service in the dialog.</span> The name
of the service provides it with a unique name amongst all the services defined
within in the enclosing WSDL document.</li>
<li class="stepexpand"><span>Click  <strong>OK</strong>.</span></li>
<li class="stepexpand"><span>Type any information about the service you want the user to read
in the  <strong>Documentation</strong> pane.</span></li>
</ol>
<div class="section"><p> <strong>Tip</strong>: You can also create a service using the Outline view
by right-clicking the  <strong>Services</strong> folder and clicking  <strong>Add Child &gt;
Service</strong>.</p>
<p>You can now add a port to your service. A port defines
an individual endpoint by specifying a single address for a binding.</p>
</div>
</div>
<div>
<div class="familylinks">
<div class="parentlink"><strong>Parent topic:</strong> <a href="../tasks/tedtwsdl.html" title="Once you have created a WSDL file, you can edit it in the WSDL editor. You can also import WSDL files you have created outside Rational Developer products into the workbench and edit them in the WSDL editor.">Editing WSDL files</a></div>
</div>

<div class="linklist"><strong>Related concepts</strong><br />

<div><a href="../concepts/cwsdled.html" title="The WSDL editor allows you to easily and graphically create, modify, view, and validate WSDL files.">Editing WSDL files with the WSDL Editor</a></div></div>

<div class="linklist"><strong>Related tasks</strong><br />

<div><a href="tcrtwsdl.html" title="You can create a new, empty WSDL file, then edit it using the WSDL editor.">Creating a new WSDL file</a></div>
<div><a href="tedtwsdl.html" title="Once you have created a WSDL file, you can edit it in the WSDL editor. You can also import WSDL files you have created outside Rational Developer products into the workbench and edit them in the WSDL editor.">Editing WSDL files</a></div></div>
</div>
</body>
</html>