• Siebel Web Services March,29 2007 Siebel Web Services From INFOKEYS INC
• Siebel Web Services
March,29 2007
Siebel Web Services
From
INFOKEYS INC
• Siebel Web Services - Agenda
- Introduction• Basic Evolution• Web Service Components
– SOAP– WSDL– UDDI
- Siebel - WebServices• Inbound Web Service (Exposing BS/WF as a WS)• Outbound Web Service (Publish external.wsdl in Siebel e.g.. Google.wsdl)
- SOA • What is SOA?• Difference between OOP & SOA• Relation between SOA & Web Services
Siebel Web Service - Introduction
• Web Services evolved from previous technologies that served the same purpose such as DCOM , CORBA,JAVA RMI
• Web Services were intended to solve these problems:– Interoperability
– Firewall traversal & Proprietary protocols
– Complexity
Siebel Web Service - Evolution Reasons.
• Interoperability– DCOM applications - Windows operating System– RMI - Java Programming language
• Firewall and Proprietary protocols– Distributed systems such as CORBA and DCOM used non-standard
ports– CORBA uses IIOP which is not practical for Inter-enterprise Integration– Web services use HTTP as a transport protocol and most of the
firewalls allow access through port 80(HTTP)
• Complexity– we can implement web service with our existing language and existing
operating system.
• What is a Web Service?Web Services is a software system designed to support
interoperable Machine to Machine interaction over a network.
Web services are frequently just Web APIs that can be accessed
over a network, such as the Internet, and executed on a remote
system hosting the requested services.
Siebel Web Service - Definition
Web Service Components.– SOAP: An XML-based, extensible message envelope format, with
"bindings" to underlying protocols (e.g., HTTP, SMTP and XMPP).
WSDL: An XML format that allows service interfaces to be described, along with the details of their bindings to specific protocols. Typically used to generate server and client code, and for configuration.
UDDI: A protocol for publishing and discovering metadata about Web services, to enable applications to find Web services, either at design time or runtime.
WS-Security: Defines how to use XML Encryption and XML Signature in SOAP to secure message exchanges.
WS-ReliableMessaging: A protocol for reliable messaging between two Web services.
WS-Reliability: An OASIS standard protocol for reliable messaging
between two Web services.
Siebel Web Service - Components
• SOAP.– SOAP - Simple Object Access Protocol
– An XML envelope for XML messaging , Header + Body
– SOAP is an XML Vocabulary standard to enable programs on separate computers to interact across the network.
– SOAP is not bound to any particular protocol such as HTTP , SMTP or even TCP/IP.
• Structure of SOAP. – A required envelope element that identifies the XML document as a SOAP message.
– An optional Header element that contains Header Information.
– A request Body element that contains call and response information.
– An optional Fault element that provides information about errors that occurred while processing the message.
Siebel Web Service - SOAP
Siebel Web Service - SOAP Request
• Example of SOAP request. <xml? Version=“1.0”?>
<soap:Envelope xmlns:soap=“http://www.w3.org/2001/12/soap-envelope” soap:encodingstyle=http://www.w3.org/2001/12/”soap-encoding”> <soap:Body xmlns:m=“http://www.weather.com/wr”> <m:GetWeather> <m:postalcode>44087></m:postalcode> </m:GetWeather> </soap:Body></soap:Envelop>
Siebel Web Service - SOAP response
• Example of SOAP response.
<xml? Version=“1.0”?> <soap:Envelope xmlns:soap=“http://www.w3.org/2001/12/soap-envelope” soap:encodingstyle=http://www.w3.org/2001/12/”soap-encoding”> <soap:Body xmlns:m=“http://www.weather.com/wr”> <m:GetWeatherResponse> <m:Degree>-5</m:Degree> </m:GetWeatherResponse> </soap:Body></soap:Envelop>
Siebel Web Service - WSDL
• WSDL– WSDL stands for Web Service Description Language.– WSDL is an XML vocabulary to describe Web Service and their capabilities , in a
standard manner.– WSDL specifies what a request message must contain and what the response message
will look like in unambiguous notation.– In additional to describing message contains , WSDL defines where the service is
available and what communication protocol is used to talk to service.
• WSDL example <message name=“GetWeatherRequest”> <part name=“postal code” type =“xs:string”/><message><message name=“GetWeatherResponse”> <part name=“Degree ” type =“xs:string”/><message><portType name=“Weather”> <operation name=“GetWeather”> <input message=“GetWeatherRequest”/> <output message=“GetWeatherResponse”/> </opertion></portType>
Siebel Web Service - UDDI
• UDDI
– UDDI stands for Universal Description , Discovery &Integration.
– A project to encourage interoperability and adoption of webservices.
– Similar to a Universal phone book.
– Specification to publish and discover web services in the web.
– Shared Distributed registry on the web.
– Enables three basic functions.
• Publish function(how a web service registers)
• Find Function (how a client finds a web service)
• Bind Function (how the client connects and interacts with a web service)
Siebel Web Service - Defined As
• Web Service• Now we come to our new definition to describe
the web service as
– An application component that
• Communicates via open protocols (HTTP,SMTP , etc)
• Processes XML messages frames using SOAP.
• Describe its messages using XML schema
• Describe itself using WSDL.
• Find and bound using UDDI.
Siebel Web Service - Architecture
Siebel Web Services - Inbound Web Service
• Inbound: Enable an external system to access Siebel data, business services, and workflow processes
• Siebel application as a service (called by an external system)
• Typical Siebel Inbound webservice works as follows.
Siebel Application
External System
WBI
WBI
Siebel Web Services - Inbound Web Service
Exposing a Siebel Business Service/WF as a Web Service
– Login to Client. – Click View -> Site Map -> Web Services Administration ->
Inbound Web Services.– In the Inbound Web Services list applet , Create an Inbound
web services record :• Enter the namespace for your organization's web services.• Enter the name of the web services in the name column.• Select the ‘Active’ in the status field.
– Create an Inbound service port record in the service portlist Applet.
• Click New and enter the name of the port in the Name Column.• Pick the type of object published.• Enter the address appropriate for the transport chosen.• Select the protocol or transport that will publish the web service.
– In the Operations List Applet ,create a new operation recordfor the new service port you created
• Enter the name of the web service operation.• Select the name of the business service method in the method
Display name column.• Select the authentication type from the drop-down list.
– Generate .wsdl file.
Siebel Web Service - Outbound
Step For Siebel Web Services - Outbound communication
• Import the WSDL file in Siebel tools.
– Start Siebel tools.
– Choose File > New Object to display the New Object Wizards.
– Select the EAI tab, select the Web service icon, and click OK.The WSDL import Wizard appears.
• Setup the Outbound Webservice definition
– you have to import the runtime information generatedin the .xml file though the WSDL Import Wizard.(OR)
– In the Siebel client, navigate to the Web Services Administration view via Site Map.
– Select Outbound Web services from the Web ServicesAdministration view.
– Click Import to display the EAI Web Service Import dialog box and specify the export file (.xml) createdfrom the WSDL Import Wizard in step.Click Import.
– Check that the Service Ports section in the Outbound Web Services view is populated from the export file.
– Make sure Web service status is Active
Siebel Web Service - SOA
• What is SOA ?
– Service - Oriented Architecture (SOA)
• Agents (Software or human)• Emphasis on actions• Agents - to - agent interaction through message exchange.
– A Service is a set of actions that form a coherent whole from the point of view of service providers and service requesters.
– Service-Oriented Architecture are more suitable for loosely coupled distributed applications (Web service Architecture)
– Object - Orientation encourages closely coupled distributed applications( I.e., CORBA,DCOM,etc.)
Siebel Web Service - SOA
OOPS
SOA
Siebel Web Service - SOA
• What is relation between SOA & Web Services?
– Service - Oriented Architecture are
• Loosely coupled pieces of application functionality – published– consumed
• can be combined with other applications over a network.
– Web Services
• Stack of emerging standards.• Define protocols.• Create a loosely coupled framework for programmatic communication
among disparate systems.
Siebel Web Service - Q & A
Q?& Aemail : [email protected]