Developer Tools
JDeveloper
An Oracle JDeveloper How To Document
Written by Susan Duncan
March, 2004
Updated by Kate Heap
September 2006
Introduction
Install Test Tools
Test the WSDL description of a service
Test the messages of a running service
Test the discovery of a service via a UDDI registry
Troubleshooting
Conclusion
The Web Services-Interoperability Organization (WS-I) was formed by Oracle and other industry leaders to promote the interoperability of web services technologies across a variety of platforms, operating systems, and programming languages. JDeveloper provides tools that allow you to test the interoperability of web services by checking that the services conform to the WS-I Basic Profile (currently Version1.1).
WS-I analyzes web services for interoperability across four areas:
A set of test assertions is used to test a web service for conformity across these areas.
This How To document describes the steps to analyze a service for conformance to the Basic Profile using JDeveloper's integrated WS-I testing environment. The HTTP Analyzer is used to monitor and log running web services and you can use any WS-I conformant analyzer and test assertions (called the testing tools) to check conformance with the Basic Profile. In this document, you use the tools provided by WS-I.
Using JDeveloper a tested web service can be:
This How To shows you how to analyze each of these types of service.
This How To uses an Oracle J2EE web service as an example. You can also generate an Apache SOAP web service and a JAX-RPC web service using the JAX-RPC extension available from OTN. It is outside the scope of this How To to provide a detailed description of publishing and running a web service.
public class HelloWorld
{
public HelloWorld()
{
}
public String sayHello(String name)
{
return "Hello " + name;
}
}
To test the HelloWorldService you run it using the embedded OC4J in JDeveloper and generate a Java proxy client to call it. It is outside the scope of this How To to provide detailed steps on achieving this, but if you need guidance on how to do these steps, refer to the OBE tutorials, Developing Contract-Driven Web Services Using JDeveloper and Developing, Deploying and Managing Web Services Using JDeveloper and Oracle Application Server on OTN.
In this release of JDeveloper you can test the WSDL file of a web service from a UDDI registry entry. You cannot use JDeveloper to analyze the Discovery portion of the Basic Profile that checks conformance of the UDDI Registry entry itself.
| Problem | Possible Solution |
| Message Assertions all have Missing Input | You are running a WSDL analysis only so only the Description assertions are tested |
|
The machine name and port no. captured in the wsi-report.html do not correspond to the name and port being returned 'over the wire'. This is most likely to occur when you are running the service in the embedded OC4J. Check that the port number is 8988 (in the WSDL file) before you start to run the TCP Packet Monitor. Also, try changing the machine name to the IP_address or the hostname (in lower case). See the JDeveloper online Help topic Analyzing Web Services Running in the Embedded Server for more details |
|
| Service Name and Port No. of WS-I Analyze Web Service Wizard are blank | The web service is not running. Deploy and start the service or use the embedded OC4J |
| The machine name and port no. do not correspond (see above) | |
| HTTP Analyzer does not capture request and response data | Check your proxy settings. If you have problems making connections from JDeveloper you may need to change the proxy server settings you use. For example, if you are connecting to an IP address behind a proxy server, and your machine is also behind the same proxy server, then make sure that JDeveloper's web proxy preferences exclude the IP address you are trying to connect to. For more information see JDeveloper online Help topic Proxy Settings and the HTTP Analyzer |
| Expanding UDDI Registry and XMethods node gives a 'Failed to Find Business Entites' message | As above, you need to check your proxy settings. If you have problems making connections from JDeveloper you may need to change the proxy server settings you use. For example, if you are connecting to an IP address behind a proxy server, and your machine is also behind the same proxy server, then make sure that JDeveloper's web proxy preferences exclude the IP address you are trying to connect to. |
| Discovery section of wsi-report.html has missing inputs | JDeveloper does not test the Discovery assertions of WS-I Basic Profile 1.0 |
| Search by Category of IBM/Microsoft Public registry does not return enough rows | Sometimes providers place restrictions on the number of rows that are returned by a Category search. There is now way to get round this. Category searching is most effective when used for private UDDI instances. |
JDeveloper seamlessly integrates the testing of web services against WS-I Basic Profile 1.1. You can test both the description and messages of services. It is up to the user to decide whether failure to meet a specific Basic Profile assertion will impact the interoperability of a particular service in their environment.
| Further Information |
| WS-I |
| JDeveloper JAX-RPC Extension |
| OTN Web Services Technology Centre |