IBM ® WebSphere® Studio V5 (including Application Developer, Site Developer, and Express) introduces a new tool called the Web Services Explorer. The support for discovery of Web services from Web Services Inspection Language (WSIL) is a new feature in the Web Services Explorer. WSIL support is provided through its own page content. For a definition of page content and an overview of the Web Services Explorer, see WebSphere Studio Web Services Explorer - Part 1: Overview, UDDI, and Favorites.
This article provides an overview of how WSIL fits into the Web service discovery model. It shows you how to use WebSphere Studio to discover Web services using WSIL and Web services metadata. You should have a basic understanding of:
- Universal Description, Discovery, and Integration (UDDI) 2.0 specification
- Web Services Inspection Language (WSIL) 1.0 specification
- Web Services Description Language (WSDL) 1.1 documents
You should also have access to one of the three WebSphere Studio Tools V5 products (Application Developer, Site Developer, or Express) and an Internet connection.
WSIL and Web Service Discovery Overview
WSIL provides a decentralized Web service discovery model. It also provides a way to loosely tie together services offered by different service providers to form a network of Web services. WSIL defines Web services at their point of offering. Businesses have control of what is put into their WSIL document. This allows them to control the quality of the Web services that they expose. For example, they can add information only for the services associated with business partners. Discovery through WSIL then gives them direct access to these services. In contrast to UDDI, this saves them from having to process large volumes of entries. Moreover, they do not have to worry about whether services found in the UDDI registries are truly owned by their business partners rather than someone pretending to own them.
In addition to providing a decentralized Web service discovery model, WSIL also forms a network of Web services through WSIL links. WSIL links are pointers to other WSIL documents. Businesses can reference WSIL documents of their business partners through the use of WSIL links. For example, a WSIL document owned by a car insurance company can have pointers to WSIL documents of all its recommended body shops.
WSIL is not a replacement of UDDI, and it has less functions than UDDI. You may ask why do we need another specification for the Web service discovery model? WSIL is complementary to UDDI and it addresses some of the limitations of UDDI. The UDDI registries today are far from complete. For example, if you search the public UDDI registries today, many of the services returned to you are invalid. Either the service is no longer available, or it points to malformed WSDLs. The large volumes of out-of-date and duplicate entries in the UDDI registries are other reasons why it is difficult to find legitimate services. Suppose you do find a service, how can you be sure that the service provider is who he or she claims to be? This also raises other issues, such as security, reliability, availability, and so on. All of these limitations drive the need for WSIL.
To use the Web Services Explorer for WSIL discovery, you need to know the location of a valid WSIL document. This section helps you setup a WSIL document on your local WebSphere Studio test environment.
Go to the Download section and download
the sample WSIL document, inspection.wsil, to your file system. Create
a WebSphere unit test application server to host this WSIL document.
- In the WebSphere Studio workbench, select main menu item File => New => Other... to bring up the list of New wizards dialog.
- In the left pane of the dialog, select Server. In the right pane, select Server and Server Configurations and then click Next.
- Enter
server1andServersin the Server name: and Folder: fields, respectively. - For the Server type:, choose a
WebSphere version 5.0 based test environment (for example, Express Test Environment)
and then click Next. See Figure 1.
Figure 1. Creating a WebSphere unit test server environment
- On the next page, enter a
portfor this server. Remember this port and then click Finish to create the server configuration.
Create a Web project to host this WSIL document.
- Open the list of New wizards dialog. In WebSphere Studio workbench, select main menu item File => New => Other...
- In the left pane of the dialog, click Web. In the right pane, click Web Project and then click Next to proceed to the Web project wizard.
- Enter
webProjectin the Project name: field and click Next. - Enter
DefaultEARas the name of the enterprise application project and click Finish.
Add the DefaultEAR enterprise application project to the WebSphere unit test application server.
- Open the list of perspectives dialog by clicking Window => Open Perspective => Other.
- In this dialog, select Server and then click OK to open the Server perspective.
- If the Server Configuration pane is not present in the perspective, bring it up by selecting main menu item Window => Show View => Server Configuration. In the Server Configuration pane, expand the Servers tab if necessary.
- Right click on server1 under the Servers node and select
popup menu item Add => DefaultEAR. See Figure 2.
Figure 2. Adding an enterprise application project to a WebSphere unit test server
- Copy and paste or import the WSIL document to the Web Content subdirectory of webProject.
- If the Servers pane is not present, make it visible by selecting main menu item Window => Show View => Servers. In this view, select the server1 server and click the Start the server button in the toolbar.
You are now ready to test the WSIL page in the Web Services Explorer.
Launch the Web Services Explorer by clicking on the
Launch the Web Services Explorer icon
(
) in the
workbench toolbar. Switch to the WSIL page by clicking on the
WSIL page icon (
)
The WSIL page allows you to discover Web
service entities that are defined in a WSIL document. It also permits you to
work with these Web service entities.
Web service entities that are defined in the WSIL 1.0 specification include WSDL Web services, UDDI businesses, UDDI services, and WSIL links. This section describes how to:
- Open a WSIL document in the WSIL page.
- Find your way through a WSIL document.
- Work with the Web service entities contained in a WSIL document.
Use the WSIL document that you served up in the
Getting Started section. The URL is http://localhost:<server port>/webProject/inspection.wsil.
To open this WSIL document:
- Click on the WSIL Main node in the navigator pane to bring up the Open WSIL Form.
- Enter http://localhost:<server port>/webProject/inspection.wsil in the URL to WSIL document text field.
- Click Go to explore the WSIL document.
Figure 3 shows the Open WSIL Form.
Figure 3. Open WSIL Form

After the WSIL document is opened, a WSIL node representing the WSIL document is created in the navigator pane. A status message in the status pane indicates the operation is successful.
There are seven operations associated with a WSIL document:
WSIL details
List all WSDL services
List all UDDI services
List all UDDI businesses
List all WSIL links
Import WSIL to file system
Add WSIL to favorites
You can invoke each of these operations by clicking on their associated icons in the Actions pane toolbar. By default, the WSIL details operation is selected. Details include the URL and abstracts of the WSIL document. Figure 4 shows the WSIL Details Form.
Figure 4. WSIL Details Form

Now
that you have opened a WSIL document in the WSIL page, you want to see all the
WSDL Web services that are contained within it. Click
on the List all WSDL services icon (
)
to bring up the List All WSDL Services Form.
Figure 5 shows the List All WSDL Services Form. It has a table of all the
WSDL Web services that are contained in this WSIL document.
Figure 5. List All WSDL Services Form

We will generate a proxy and a test client to invoke the TemperatureService. Click on the link to the left of http://www.xmethods.net/sd/2001/TemperatureService.wsdl (Item #5). The Actions pane and its toolbar are updated with the operations for a WSDL Web service. This is the WSDL Web service view, as shown in Figure 6.
Figure 6. WSDL Web Service View

Operations for a WSDL Web service include:
WSDL service details
Import WSDL to workbench
Import WSDL to file system
Launch Web service wizard
Add WSDL to favorites
Exit view
The concept of a view is also applied to other operations for a WSIL document, such as:
- List all UDDI businesses operation

- List all UDDI services operation

- List all WSIL links operation

To invoke this WSDL Web service, launch the Web service client wizard to generate a proxy and a test client.
- In the WSDL Web service view, click on the Launch web service wizard icon
(
). - Select the Web Service Client radio button and click Go.
Figure 7 shows the result of launching the Web service client
wizard from the WSDL Web service view.
Figure 7. Launching the Web service client wizard from the WSDL Web service view
- In the Web Services page, check the Test the generated proxy checkbox and then click on Next.
- In the Web Service WSDL File Selection page, the WSDL URL text field should be pre-populated with http://www.xmethods.net/sd/2001/TemperatureService.wsdl. Click Next.
- In the Web Service Binding Proxy Generation page, choose webProject in the Project
drop-down and then click Finish. Figure 8
shows the Web Service Binding Proxy Generation page.
Figure 8. Web Service Proxy Binding Generation page
After the Web service client wizard finishes, a proxy and a test client are generated and launched. The default test client is the Web service JSP sample, as shown in Figure 9. - Th TemperatureService takes in an US zip code and returns the temperature in that region.
Click on the getTemp(java.lang.String) method in the Methods section,
enter 90210 as the zipcode, and click Invoke.
Figure 9. Invoking a WSDL Web service
Launching the Web Service Skeleton wizard
Besides the Web Service Client wizard, you can also launch the Web Service Skeleton wizard to generate a JavaTM bean skeleton for this WSDL Web service.
- Select the Web Service Skeleton radio button and click Go to launch the Web service skeleton wizard. The wizard guides you through the generation of a Java bean skeleton.
- To save this WSDL Web service for later use, you
can import its WSDL document into a workbench project or into the file
system. Click on the Import WSDL to workbench icon (
)
or the Import WSDL to File System icon (
)
to invoke each operation, respectively. - Alternatively, instead of importing the physical WSDL document, you can also
add this WSDL Web service to favorites by clicking the Add WSDL to favorites icon
(
). - Finally, to work with other Web service entities contained in the WSIL document, you must first exit from the WSDL Web service view.
- Click on the
Exit view icon (
)
to return to the List All WSDL Services
Form (refer to Figure 5).
For a list of UDDI services, click on the
List all UDDI services
icon (
).
Figure 10 shows the List All UDDI Services
Form.
Figure 10. List All UDDI Services Form

There are two UDDI services listed in Figure 10. Notice how the first UDDI service differs from the second UDDI service. The first UDDI service is available and you can work with it by clicking its name or the link under the Item # column. The second UDDI service is tagged as unavailable for one of the following reasons:
- The UDDI registry is currently unavailable
- The UDDI service was deleted by its owner
- A malformed WSIL document
Although the second UDDI service is unavailable at this moment, it may be available again at a later time. The Refresh action allows you to poll the status of the service.
- Select the unavailable service by clicking on its checkbox.
- Click on the Refresh button on the List All UDDI Services Form. See Figure 11.
Figure 11. Refreshing an UDDI service
An error message is displayed in the status pane:
IWAB0340E Service 4FA28580-5C39-11D5-9FCF-BB3200333F79 not found. Make sure both the registry and the service are available. |
The above error is expected because this service is purposely created as an invalid UDDI service. Do not confuse the refresh operation for a WSIL document with the refresh operation for an UDDI service. The refresh operation for a WSIL document is located in the navigator pane toolbar. The refresh operation for an UDDI service is accessed on the List All UDDI Services Form through the Refresh button. Refreshing the entire WSIL document has the effect of refreshing an UDDI service. However, it is usually not desirable to refresh the entire WSIL document because this incurs more network traffic than just refreshing an UDDI service.
In the List All UDDI Services Form, click on the Temperature Service link to enter into the UDDI service view. There are eight operations defined for an UDDI service:
UDDI service details
Import WSDL to workbench
Import WSDL to file system
Launch web service wizard
Add UDDI service to UDDI page
Add UDDI service to favorites
Refresh UDDI service
Exit view
Most of these operations should be familiar. The operation specific to an UDDI service
is the Add UDDI service to UDDI page
operation (
).
For a definition of a page content, see
Part 1: Overview, UDDI, and Favorites.
Pages are tightly integrated allowing Web service entities
discovered in one page to be imported into another.
For example, to add an UDDI service to the UDDI page, click on the
Add UDDI service to UDDI page icon
(
).
Figure 12 shows the result of this operation. The Web Services Explorer's page content is switched from the WSIL page to the UDDI page and a new UDDI service node is created in the navigator. You can now perform UDDI specific operations on the UDDI service. For information on how to use the UDDI page of the Web Services Explorer, see Part 1: Overview, UDDI, and Favorites.
Figure 12. Add UDDI Service to UDDI page operation in action

Return to the UDDI service view by clicking the WSIL Page icon
(
)
on the Web Services Explorer toolbar.
To exit the UDDI service view, click on the
Exit view icon (
).
This brings you back to the List All UDDI Services Form.
For a list of UDDI businesses,
click on the List all UDDI businesses icon
(
).
Figure 13 shows the List All UDDI Businesses Form that contains all the UDDI businesses
listed in the currently opened WSIL document.
Figure 13. List All UDDI Businesses Form

As you can see in Figure 13, there is one UDDI business tagged as unavailable. An UDDI business is refreshed the same way as an UDDI service. Click on the Sybase Portal link to enter the UDDI business view. Figure 14 shows the UDDI Business Details Form.
Figure 14. UDDI Business Details Form

UDDI business details
Add UDDI business to UDDI page
Add UDDI business to favorites
Refresh UDDI business
Exit view
All the operations above work in the same manner as those of an UDDI service.
We will not go into details for each of them. Click on the Exit view
icon (
)
to return to the List All UDDI Businesses Form.
To see WSIL links contained in this WSIL document, click on the
List all WSIL links icon (
).
To explore the WSIL document referenced by a WSIL link:
- Select a WSIL link by clicking on its checkbox.
- Click the Add To Navigator button on the List All WSIL Links Form. A new WSIL node is added to the navigator. Figure 15 shows the result.
Figure 15. List All WSIL Links Form

Alternatively, you can also open a WSIL link from the WSIL link view.
- Enter the WSIL link view by clicking on the link to the left of http://www.xmethods.com/inspection.wsil (Item #1).
- Click on the Open WSIL link icon
(
). See Figure 16.
Figure 16. WSIL link view

Finally, when you are finished with a WSIL document, you can remove it from the
WSIL page. Use the Clear node operation
(
)
located at the navigator pane toolbar.
Alternatively, if you want to save this WSIL document, use the
Add WSIL to favorites operation
(
).
Make sure you are not inside a view when you click on the
Add WSIL to favorites icon
(
).
Otherwise, you will be adding the view item (WSDL Web service, UDDI service, UDDI business, WSIL link)
to Favorites instead.
This article discussed how to use the WSIL page of the Web Services Explorer in IBM WebSphere Studio Tools V5. It covered navigating through a WSIL document and working with the Web service entities. Using the tool significantly simplifies the discovery for WSIL.
| Name | Size | Download method |
|---|---|---|
| Download file inspection.wsil | .004 MB | FTP |
Information about download methods
- The WebSphere Studio Services
Explorer - Part 1: Overview, UDDI, and Favorites
-
UDDI 2.0 specification
-
WSIL 1.0 specification
- WSDL 1.1 specification
Jeffrey Liu is a software developer on the Web Services Tools Team at the IBM Toronto Lab. He is responsible for development of the Web Services Explorer. You can reach Jeffrey at jeffliu@ca.ibm.com .
Yen Lu is an advisory software developer on the Web Services Tools Team at the IBM Toronto Lab. He was one of the developers of the UDDI Explorer and is the architect of the Web Services Explorer. You can reach Yen at yenlu@ca.ibm.com .
Comments (Undergoing maintenance)





