<?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.wst.doc.user/common.css" />
<title>Creating a Web service proxy using Faces</title>
</head>
<body id="creatingawebserviceproxy"><a name="creatingawebserviceproxy"><!-- --></a>

<h1 class="topictitle1">Creating a Web service proxy using Faces</h1>
<div><p>The Web Service Discovery Dialog allows you to discover a Web service
that exists online or in your workspace, create a proxy to the Web service,
and then place the methods of the proxy on a Faces JSP file.</p>
<div class="p">Prerequisite: You must have a Faces JSP file on which you will place
the proxy methods.</div>
<div class="section">To discover a Web service and create a proxy for it:</div>
<ol><li><span>Open your Faces JSP file in an editor by double-clicking it.</span></li>
<li><span>The Page Data view should be open below the Project Navigator.
If the Page Data view is not visible, open from the Window menu by selecting <span class="menucascade"><span class="uicontrol">Show View</span> &gt; <span class="uicontrol">Other</span> &gt; <span class="uicontrol">Web</span> &gt; <span class="uicontrol">Page Data</span></span>.</span></li>
<li><span>In the Page Data view, right-click and select <span class="uicontrol">New</span> &gt; <span class="uicontrol">Web
Service</span>.</span></li>
<li><span>In the Web Service Discovery Dialog, select how you want to find
a Web service: </span>
<table border="1" frame="hsides" rules="rows" cellpadding="4" cellspacing="0" summary="" class="choicetableborder">
<thead><tr><th valign="bottom" align="left" id="d0e42-option">Option</th>
<th valign="bottom" align="left" id="d0e42-desc">Description</th></tr></thead>
<tbody><tr><td valign="top" headers="d0e42-option" id="d0e49"><strong>Searching a public or private UDDI registry.</strong></td>
<td valign="top" headers="d0e42-desc d0e49">If
you select this option the UDDI Registry page displays.<ol type="a"><li>Enter the URL of a public or private UDDI registry, or select from the
registries supplied.</li>
<li>Enter the text with which you want to search the registry. This can include
either the partial or full name or key (UUID) of the service.</li>
<li>Select if you want to search by the name of the Web service, or by the
key that is associated with a published Web service, and click <span class="uicontrol">Go</span>.</li>
<li>The UDDI Services table is populated with a list of available Web services
that match your criteria, including their name, description, and a URL where
their WSDL file is located.<ul><li>To see additional information about the service, click Details. This will
launch the Web service in the Web Services Explorer. For more information
about using the Web Services Explorer, refer to <a href="ttestwsdl.html">Testing WSDL documents and Web services using the WSDL Explorer</a>.</li>
<li>Click a WSDL file to continue creating your Web service proxy. Go to step <a href="#creatingawebserviceproxy__disc_step_5">5</a>.</li>
</ul>
</li>
</ol>
</td>
</tr>
<tr><td valign="top" headers="d0e42-option" id="d0e77"><strong>From a known URL. This can include known WSDL, WSIL, DISCO,
and HTML URLs.</strong></td>
<td valign="top" headers="d0e42-desc d0e77">When you select this option, the URL page
displays. Enter the URL to a WSDL, WSIL, DISCO or HTML file that contains
a Web service, and click <span class="uicontrol">Go</span>.<ul><li>If you entered a URL to a WSIL, HMTL, or DISCO file, a list of Web services
available from the URL are displayed. Select one of the Web services by clicking
on the WSDL file, and go to step <a href="#creatingawebserviceproxy__disc_step_5">5</a>.</li>
<li>If you entered a URL to a WSDL file, go to step <a href="#creatingawebserviceproxy__disc_step_5">5</a>.</li>
</ul>
</td>
</tr>
<tr><td valign="top" headers="d0e42-option" id="d0e96"><strong>Selecting from Web services that are deployed and running
in your workspace.</strong></td>
<td valign="top" headers="d0e42-desc d0e96">If you selected to discover Web services
that are in your workspace, the Workspace page displays. It contains a list
of the Web services available in your workspace. Select a Web service by clicking
on the appropriate WSDL file and go to step <a href="#creatingawebserviceproxy__disc_step_5">5</a>.</td>
</tr>
</tbody></table>
</li>
<li id="creatingawebserviceproxy__disc_step_5"><a name="creatingawebserviceproxy__disc_step_5"><!-- --></a><span>Once you have selected a WSDL file, a table displays
the Web Service name and location, any documentation included in the Web service,
and lists the available ports.</span><ol type="a"><li class="substepexpand"><span>If there is more than one port, select the port for which you
want to create the proxy.</span></li>
<li class="substepexpand"><span>To test the Web service and to see additional information about
it, click Details. This will launch the Web service in the Web Services Explorer.</span> For more information about using the Web Services Explorer, refer to <a href="ttestwsdl.html">Testing WSDL documents and Web services
using the WSDL Explorer</a>.</li>
<li class="substepexpand"><span>Once you have ensured that the chosen Web service is the correct
one, click Add to Project.</span> This generates your proxy bean.</li>
</ol>
</li>
<li><span>The proxy is now listed in the list of existing proxy beans. Click <span class="uicontrol">OK</span> to
add it to your Page Data.</span></li>
<li id="creatingawebserviceproxy__ws_disc_step_7"><a name="creatingawebserviceproxy__ws_disc_step_7"><!-- --></a><span>Select the proxy method in the Page Data view,
and drag it onto your Faces JSP file Design view. You will be asked if you
want to use this bean to update fields or to display fields. Select the appropriate
choice, and if necessary add an action to the bean by clicking the Browse
button beside the Action field. Repeat for any other elements that you want
to add to the page.</span></li>
</ol>
<div class="section">The proxy for the Web service is now on a Faces JSP. Save the Faces
JSP and run it on a sever to test your Web service.</div>
</div>
<div></div>
</body>
</html>