IBM®
Skip to main content
    United States change      Terms of use
 
 
Select a scope:    
     Home      Products      Services & industry solutions      Support & downloads      My account     
alphaWorks  >  SOA and Web services  >  

IBM Generic Web Services Client Tool

A generic client written in PHP and capable of secure and non-secure calls for use in testing Web services.


Date Posted: May 23, 2006
Overview Requirements DownloadFAQsForum Reviews

1. Why do I need the variety of options that the tool supplies for calling Web service methods?
2. How can I control the default list of available Web services that the tool includes in the pull-down menu?
3. Why do some of the Web services that are included in the default installation work while others fail to even display the list of available methods?
4. Why do I get old values in the method arguments' form?
5. Is it possible that a Web service call, to the same end-point where the actual Web service resides, will work when this tool is installed on one operating system, but fail when it is installed on another?
6. Tell me more about the tool's features.


1. Why do I need the variety of options that the tool supplies for calling Web service methods?

The maturity level of the generic tool, using the available SOAP infrastructure, is less than optimal: For some services and methods, only direct method calls will work, and for others, only low-level calls; the success or failure of any given combination of call method and parameters may be different across different platforms and operating systems. Because of these limitations, the tool supplies all call options, so you may test each and select the one that best works for your operating system and Web service
Back to top Back to top

2. How can I control the default list of available Web services that the tool includes in the pull-down menu?

Modify the WSDLsToUse.txt file. The WSDLs that are included in the pull-down menu are as follows: WSDL files that reside on your local disk and are listed in this file, WSDL files that reside in directories listed in this file, and external WSDLs, whose URLs are listed in this file.
Back to top Back to top

3. Why do some of the Web services that are included in the default installation work while others fail to even display the list of available methods?

The WSDLsToUse.txt consists of the URLs of publicly-available Web services that were working properly at the time this tool was released. They may have stopped working since then. You can change your WSDLsToUse.txt file to include only working Web services.
Back to top Back to top

4. Why do I get old values in the method arguments' form?

Because the Auto-assignment of recently-used values feature is turned on. You can use the tool's set-up (accessible from main page) to disable this feature or to reset the repository of the recently-used values.
Back to top Back to top

5. Is it possible that a Web service call, to the same end-point where the actual Web service resides, will work when this tool is installed on one operating system, but fail when it is installed on another?

Unfortunately, yes. Web service technology in PHP is not yet stable. Try calling the method with another call option (for example, nuSOAP instead of the SOAP extension, or indirect low-level instead of direct call) to see whether you can get better results.
Back to top Back to top

6. Tell me more about the tool's features.

The tool's features are as follows:
  • Configuration: There are three configuration parameters, all accessible from the tools main page:
    • The Web services that are accessible with this tool: These are specified in the WSDLsToUse.txt file. You may put there full names of WSDL files on your disk, paths to directories containing WSDL files, or external URLs. All accessible WSDLs listed this way will be included in the tool's pull-down menu for Web service selection. The tool also includes the option of manual specification of a WSDL.
    • Whether the tool should include basic WS-security in each call: If this option is enabled, each method call form will include optional insertion of user name and password.
    • Whether the tool should activate the Auto-assignment of recently-used values feature and/or reset the repository of recently-used values (see description below).
  • Basic WS-security: The tool is capable of adding a basic WS-security header to the method call. When this option is selected and user credentials are entered, a security header is added to the call. If these arguments are left empty, basic WS-security will not be used. WS-security is limited to low-level, SOAP extension calls only.
  • Auto-assignment of recently-used values: The tool can automatically insert the most recently-used value for each argument in method calls if this argument was previously used (either in previous calls of the same method, other methods, or even other Web services). Arguments are identified according to their name (tag) in the WSDL. This feature is useful when methods are tested repeatedly with minor changes in arguments.
  • Control of the number of occurrences of an argument within a method call: A Web service method may define an argument to appear once, many times, or even not at all (for example, in this argument definition line in the WSDL: <xsd:element name="theArg" type="xsd:string" minOccurs="0" maxOccurs="unbounded"/>). The default form created by this tool will include a single occurrence for each argument. You can, however, control this number by selecting the Modify instances button (below the Method Arguments selection form). This selection will display another form where you can select, for each argument, its number of occurrences.
  • Selection of the type of method call to use: Once the Web service and method are selected and the method arguments inserted, you may control the type of method call by selecting either PHP5's SOAP extension or the nuSOAP module as the PHP client creation infrastructure. For each of these options, you may then choose to execute a direct call (for example: for method Foo with arguments a1 and a2, using client->Foo(a1,a2);) or a low-level "raw" call (for example: client->call(Foo, Foo's Signature);, where the signature is created by the tool).
  • Rich display of results: The tool displays the call result, or it displays exceptions and faults data when the call fails. In addition, the data structures used for the actual call (such as security headers, method signature, nuSAOP request and response, etc.) are also displayed when applicable.

Back to top Back to top
Download now Download now

Related technologies

For platform(s):
Linux, Windows

For topics:
SOA (Service-Oriented Architecture), WSDL (Web Services Description Language), Apache, WS-Security, PHP, LAMP, WS-Client


 

    About IBM Privacy Contact