1 Web Services Overview
Web services support interoperable machine-to-machine interaction over a network. Web services are APIs that can be accessed over a network, and run on a remote system hosting the requested services. Web service operations are described by the Web Service Definition Language (WSDL).
This chapter provides introductory information about the Oracle Communications Unified Inventory Management (UIM) Web Services.
Note:
Throughout this guide, the UIM_Home placeholder represents the directory where you installed UIM. For a typical UIM installation, UIM_Home is opt/Oracle/Middleware/user_projects/domains/domain_name/UIM, where domain_name is the domain name you supplied when installing UIM.
Note:
When working with UIM web services or developing custom web services, read the UIM Developer's Guide for more information about extending UIM and using Design Studio.
About UIM Web Service Standards and Specifications
Table 1-1 lists the UIM web service standards and specifications.
Table 1-1 UIM Web Service Standards and Specifications
Standard and Specification | Version Release | Description | Compliance |
---|---|---|---|
JAX-RPC |
1.1 |
XML <--> Java binding specification |
Compliant. |
JSR-181 |
NA |
Java web service annotations |
Deprecated. Uses basic annotations for inter operability. |
SOAP |
1.1 |
Simple Object Access Protocol (Also referred to as Service Orientated Architecture Protocol.) |
Compliant. Uses XML/SOAP/HTTP and XML/SOAP/JMS. |
Transport Protocols |
HTTP 1.0, HTTPS 1.0 (HTTP 1.1), JMS 1.1 |
NA |
NA |
WSDL |
1.1 |
Web Service Definition Language |
Compliant. |
XML |
1.1 |
NA |
Compliant. Uses XML/SOAP/HTTP and XML/SOAP/JMS. |
About the UIM Web Services Framework
Figure 1-1 shows the different paths traveled by a call originating from the UIM UI client, and a call originating from outside UIM that is then processed by the web service client.
The path of the web service includes:
-
Web Service Client
This represents the web service user (client, web service client, or customer). Web service operations are called by sending SOAP messages over HTTP or HTTPS, or by posting SOAP messages on a UIM-defined JMS message queue. See "About Message Queues" for more information.
-
Web Service Module
This represents all the sub-modules required for implementing a web service, including the web service, the web service framework, WSDL interfaces, and WSDL implementations. The web service module is deployed as a WAR file.
See "About the UIM Web Service Module" for more information.
-
UIM business logic
This represents all the sub-modules required for attaining business functionality. This includes the Java API, the Java API framework, business logic, and persistence framework.
Details of the UIM business logic are not within the scope of this document.
About the UIM Web Service Module
Figure 1-2 shows the web service module in more detail.
The web service module includes:
-
Platform-provided Web Services Framework
This represents the web service framework provided by Java EE platforms, such as Oracle WebLogic Server.
-
Web Service Operations
This represents the Java web service implementation class. This is the entry point to a UIM web service. The web service operations are Java representations of the WSDL.
-
Adapters
The web service operations layer calls the adapters, which direct the calls and collect data from the appropriate UIM API managers. Transaction handling is performed in the adapters.
-
Mappers
Mapper classes convert data from XML to Java, and from Java to XML. Specifically, data elements of an incoming XML request are converted to data attributes of a Java class so the data can be processed. When processing is done, the data attributes of the Java class are converted to data elements of an outgoing XML response. Mapper classes are typically called by the adapter code.
-
Workers
Worker classes assist the working logic of the adapters.
The web service operations, adapter, mapper, and worker classes are further explored in "Developing Custom Web Services".
About Message Queues
The UIM installation provides the following message queues to use when calling the Inventory Web Services, which includes the UIM Service Fulfillment Web Service and the Network Resource Management Web Service, both of which are packaged in the InventoryWS.war file:
-
inventoryWSQueue
-
inventoryWSQueueAlternate
Two message queues are provided for efficient processing of web service calls. For example, you may have all web service operation calls except ProcessInteraction use inventoryWSQueue, and have ProcessInteraction use inventoryWSQueueAlternate because the ProcessInteraction operation takes longer to run than the other operations.
About Message Queues for Custom Web Services
The UIM installation also provides the following message queue to use when calling custom web services packaged in the provided custom.ear file:
-
inventoryCustomWSQueue
Note:
If you package your custom web service in an EAR file other than the provided custom.ear file, you must create your own message queue, create a custom listener class, and configure the class to listen to the queue. See "Packaging the WAR File in the EAR File" for more information.
About Transaction Handling
The adapter layer performs transaction handling. Transactions are started only if the thread is not already within a transaction.
About UIM Web Services
UIM provides the following web services:
-
The Service Fulfillment Web Service defines operations that enable you to create and modify business interactions, through which you can create and modify services, service configurations, and service configuration items. See "Working with the Service Fulfillment Web Service" for more information.
-
The Network Resource Management Web Service defines operations that enable you to create, find, update, and delete various entities in UIM. The web service also enables you to reserve and unreserve various resource entities, and also update reservations. Lastly, the web service enables you to import and export various entities into and out of UIM. See "Working with the Network Resource Management Web Service" for more information.
-
UIM also provides a way for you to develop, build, and deploy custom web services. The UIM Reference Web Service defines a single operation to create a Logical Device. This web service serves as an example to reference when developing custom web services. See "Developing Custom Web Services" for more information.
Note:
The deprecated Reference Web Service operations are removed. The Service Fulfillment Web Service operations replace these deprecated operations. See "Working with the Service Fulfillment Web Service" for more information.
-
The Cartridge Management Web Service defines various operations that support deploying cartridges. The Cartridge Deployer Tool and Oracle Communications Design Studio use this web service to manage cartridges. The Cartridge Management Web Service is deployed as an installation step and is displayed on the Oracle WebLogic Server Administration Console.
-
The NFV Orchestration RESTful APIs define operations that enable you to create, implement, and manage the life cycles of network services and their deployment as interconnected virtual network functions (VNFs) on virtual resources. Refer to the UIM NFV Orchestration Implementation Guide for more information.