User guide

WSDL SOAP Implementation
12-3
AlliedView NMS Administration Guide (Northbound Interface)
Note: With a standard northbound interface, the higher level NMS would not have to implement different clients
to communicate with NMS/EMS from different vendors. However, specific interfaces may be more useful
to the client because operations will be specific to clients' needs.
12.2.2 WSDL
WSDL is a language used to describe the services published by an interface. When publishing Axis web services, the server
will include interfaces and implementations and publish the WSDL file which will include descriptions of all available oper-
ations, parameters and return types.
Note: The WSDL in Axis/SOAP is considered equivalent of the IDL in CORBA.
On the client side the implementation can start by looking at the WSDL file to determine available services, generate stub
code from WSDL then implement the client to use the services. As an alternative client implementation can skip client code
generation and manually implement client code that calls Axis directly (this can be complicated if the developer is not famil-
iar with Axis/SOAP core classes). There are tools already available that can be used to parse WSDL files and generate stubs
and skeleton code for different language implementations.
For the WSDL path for AlliedView NMS, use
http://<nmsserver-IP>:9090/axis/services
Client programs intended for performing operations on NMS using this interface can be implemented in any language that
supports SOAP; however languages that do not support HashMaps will be limited to operations that do not take a HashMap
as a parameter or return it as results. The WSDL file provided contains all operations available and the client program devel-
oper will need to use it to get the correct syntax of operations and details provided here will be useful explaining object con-
tents.
12.2.3 Web Services
Web services are essentially application interfaces available for communication with other programs that can be done
through the web (HTTP server). The northbound interface in NMS will be available through the web server and can be exe-
cuted from anywhere if the server is accessible from the internet. The APIs and features exposed will also be referred to as
web services.
The following figure shows how Axis/Soap clients fit into the client/server model. Among other processes running in the
NMS server are the web server and servlet container which are used to service Axis requests. Axis/SOAP client communi-
cates with the web server which forwards the request to Tomcat container and returns the results for the operation from the
container to the Axis client. Other clients also use Apache and Tomcat i.e. Java clients use HTTP server and servlets to
launch WebStart and Applet clients and HTML clients use the HTTP server for HTML pages and Tomcat container to pro-
cess JSP requests.
Axis/SOAP transports data using XML sent over HTTP. SOAP converts the client requests to XML and sends it to the HTTP
server, which forwards the request to Tomcat container. The response is also converted to XML from the container before
returned to client and the client converts it back from XML to objects expected by the client