SiteScope User's Guide


Web Service Test

The Web Service Test is used to check Simple Object Access Protocol (SOAP) enabled Web services for availability, stability or if you just need to see what an actual SOAP response looks like. It is also useful for diagnosing a Web service request failure, or for picking out match strings for use with a specific Web Service Monitor. The Web Service Test sends a SOAP request to the server and checks the HTTP response codes to verify that the service is responding. The actual SOAP response is displayed, but no further verification is done on this returned message.

The Simple Object Access Protocol (SOAP) is a way for a program running under one operating system to communicate with another program running under the same or different operating system (such as a Windows 2000 or Windows 2003 program talking to a Linux based program) The Simple Object Access Protocol uses the Hypertext Transfer Protocol (HTTP) and Extensible Markup Language (XML) for information exchange with services in a distributed environment.

Status

The possible status values returned by the test are:

  • OK
  • unknown host name
  • unable to reach server
  • unable to connect to server
  • timed out reading
  • content match error
  • document moved
  • unauthorized
  • forbidden
  • not found
  • proxy authentication required
  • server error
  • not implemented
  • server busy

Support Levels

The following specification features are currently supported:

  • WSDL 1.2
  • SOAP 1.1
  • Simple and Complex Types based on XML Schema 2001
  • SOAP binding with the HTTP(s) protocol only
  • SOAP with Attachments is not supported

Be advised that SOAP and WSDL technologies are still undergoing evolution. Consequently there can be instances of WSDL documents that SiteScope may not be able to process with complete accuracy. In addition, certain SOAP requests that SiteScope sends may not interoperate effectively with all Web service providers due to inherent specification ambiguities. However, it is our full intent and commitment to continually keep monitor implementations up to date with the latest Web service specifications.

Completing the Web Service Test Form

TIP: A quick way to fill out this form is to first create a Web service monitor for the service you need to test. There in the "Add Web Service Monitor" page, you merely need to specify the WSDL file of the target Web service. SiteScope will parse the WSDL file and present a list of methods to choose from. It will then generate a skeleton parameter list for your selected method, for you to flesh out actual parameter values. Save and create this Web service, which causes SiteScope to send the proper SOAP message to invoke the service method (that may or may not succeed). But once the Web service monitor is created, it should now be listed in your Group monitors display page. Click the "Tools" link for this Web service monitor and you are back in the "Test Web Service" page but this time with the test form filled out properly and sufficiently.

Otherwise, manually complete the items on the Add Web Service Test form as follows. When the required items are complete, click the Web Service Request button.

WSDL Path or URL
Enter the URL or the file path of the WSDL file to be used for this monitor. If a WSDL file path is specified it must be relative to <SiteScope install path>/SiteScope/templates.wsdl/, where ssHome is where SiteScope was installed on your system. In addition, your WSDL files must have an extension of .wsdl.

Web Service URL
Enter the URL of the Web service to be tested.

Method Name
Enter the name of the method to be invoked.

Arguments
Enter the the arguments to the method specified above and their types. Specify simple type parameters in the form:

parm-name(parm-type) = value

where the parameter names and types must match the service method specifications of its WSDL file exactly. The value must of course agree with the parameter data type otherwise the request will fail. Strings with embedded spaces should be enclosed in double quotes. Each parameter must be in a separate line, i.e. you must add a carriage return at the end of each parameter value, as shown in the example parameter list below:

stockSymbol (string) = MERQ
numShares (int) = 10

A complex type parameter must be represented as one long string. An example of a complex type parameter is shown below (line breaks are for readability purposes only):

stocksymbol[COMPLEX] =<stocksymbol xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:fw100="urn:ws-stock"
xsi:type="fw100:getQuote"> <ticker xsi:type="xsd:string">MERQ</ticker></stocksymbol>

SiteScope does not perform any validation on your input parameter lists, so make sure your complex type values are valid and well-formed XML strings. Do not add any carriage returns within a complex type parameter - only at the end.

If the Web service method does not take any parameters, the text box should be left empty.

SOAP Action URI
The SOAP Action URI in the header of the SOAP request to the Web Service. During initial setup this will be extracted from the WSDL file.

Method Namespace
The XML name space for the method in the SOAP request. During initial setup this value will be extracted from the WSDL file.

User Name
If the web service requires a name and password for access, enter the name in this box.

Password
If the web service specified requires a name and password for access, enter the password in this box.

NTLM Domain
If the web service requires NTLM / Challenge Response authentication, a domain name is required as part of your credentials (as well as a user name and password).

Proxy
Optionally, a proxy server can be used to access the web service. Enter the domain name and port of an HTTP Proxy Server including the protocol (e.g. http://www.domain.com:port). If no port is specified, port 80 is assumed.

Proxy User
If the proxy server requires a name and password to access the web service, enter the name here. Technical note: your proxy server must support Proxy-Authenticate for these options to function.

Proxy Password
If the proxy server requires a name and password to access the web service, enter the password here. Technical note: your proxy server must support Proxy-Authenticate for these options to function.

Testing MS .NET web service
Web services based on the .NET platform require a slightly different dialect of SOAP. Check this box to configure this monitor to generate a MS-compatible SOAP request.