Web Services. Seminar on Semantic Web & Web Services. - W3C Finland - 6th May Suresh Chande,
|
|
|
- Jonathan Blake
- 10 years ago
- Views:
Transcription
1 Web Services Seminar on Semantic Web & Web Services - W3C Finland - 6th May 2003 Suresh Chande, Software Technology Laboratory Nokia Research Center, [email protected] Acknowledgements: Markku Laitkorpi / Esa Eerola / Eero Kukko 1 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande Overview Core Web Service Technologies Web Services for Mobile Domain Standardization Conclusion Presentation Outline 2 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande
2 Overview Web Evolution Web Services Overview Web Services in a Nut shell Initial Hype 3 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande Web Evolution Web: The universe of network-accessible information available through your network enabled devices [W3C]. Direct human consumable information accessible using User Agents such as browsers (HTML/WML) Static information resources (HTML) Articles and Information resources Corporate\Portal information distribution media Semi-dynamic Information resources CGI, Perl Script, JavaScript, Applets Dynamic content for human consumption: Ubiquitous access to Web Content and wide spread utilization of web technologies led to robust tools and technologies to make dynamic content over the web: Perl ASP JSP, Servlets 4 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande
3 Web Evolution Success of Web attracted the distributed computing systems, to reap the ubiquitous benefits of the Web and utilize the web for services oriented applications B2B B2C EAI / EDI Commercialization of the Web content required distributed systems to be integrated and exposed to the internet, which resulted in technologies such as: J2EE /.NET DCOM CORBA Problem with the inter-operability between various deployment platforms lead to seek solutions in a platform neutral manner by using XML as the core technology. Web Services XML, XMLSchema, XML Namespace, SOAP, WSDL 5 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande Web Services Overview - Definition Web Services are the means of exposing an organizations services to its consumers or partners over the Web utilizing open Web-based standards, which are agnostic to development platform used, vendor tools and the underlying implementation specifics. "A Web service is a software system identified by a URI, whose public interfaces and bindings are described using XML. Its definition can be discovered by other software systems. These systems may then interact with the Web service in a manner prescribed by its definition, using XMLbased messages conveyed by Internet protocols." [W3C] 6 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande
4 Web Services Overview - Benefits Allows loose coupling between systems willing to communicate and collaborate. Removes platform dependencies between the communicating systems Introduces rapid application development Reduces Integration costs and speedens the integration process Low entry barrier Enable wider utilization of the services as it does not dictate a platform specific requirements on the consuming clients. Continue to utilize legacy systems 7 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande Web Services in a Nut Shell The next wave of web development - Programmatic access to the Web Resources. Programmatic access enabled via a set of XML related horizontal Frameworks : Data Encapsulation (XML, XML Schemas). Message Framework (SOAP). Description Framework (WSDL). Security Framework (WS-Security). Discovery Framework (UDDI/ Local WSIL). Transaction (WS-Transaction). Assertions & Authorization (SAML). Choreography & Workflows (BPEL4WS, WSCI) Reliability (WS-Reliability) SOAP is the Central building block of these set of frameworks!! 8 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande
5 Web Services - SOAP based Framework Choreography/ Orchestration Transaction Security Framework Description Framework Message Framework Data Encapsulation Framework SMTP Transport Framework WEB HTTP XML SOAP WSDL WS-Security WS-Transaction BPEL XMLSchema WSCI 9 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande Web Services - an initial Hype (2001) Automatic Business Integration: A Piece of software will automatically discover, access, integrate and invoke new services from unknown companies dynamically without the need for human intervention. Easily discover the required services and integrate into existing solutions. "Silver bullet", solves all the integration problems that we ever faced in distributed and heterogeneous systems. Is ready and available for immediate system development Inter-operable and a light weight protocol Simple and easy to utilize 10 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande
6 Overview Core Web Service Technologies Web Services For Mobile Domain Standardization Conclusion 11 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande Core Web Services technologies Web Services Architectures Core Web Service Protocols SOAP WSDL Other Crucial Web Services Technologies Web Services Choreography Web Services Security Web Services & REST 12 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande
7 Web Services Architecture The basic Web Service Architecture is defined around three main roles for its participants Web Services Client (WSC): The Web Service(WS) consuming client system. Web Services Providers (WSP): are participants who desire to publish their service as a Web Service Web Services Brokers (WSB): Provide WSC a discovery mechanism to find the required service and at the same time provided WSP means of publish and manage the description about the hosted WS. 13 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande Web Services Architecture Web Service Brokers UDDI / EBXML / Local FS /etc Find and Discover Service Description Interpret WSDL HTTP WWW HTTP Publish & Manage Service Description HTTP/SMTP Web Service Consumer FETCH WSDL WSDL Document Web Service Providers SOAP Message Intermediaries WSDL Document 14 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande
8 W3C's Complete Web Services Stack 15 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande Reference : W3C's Web Services Architecture Key Web Service technologies XML Utilized to encapsulate Data in a platform neutral format XML Schema Utilized as XML based data modeling and typing systems SOAP An XML Message exchange protocol for application-service communication and exchange of messages WSDL A XML based Service description protocol, which defines the service operations one could invoke by exchanging XML based messages (SOAP). 16 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande
9 SOAP 17 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande What is SOAP (formerly known as Simple Object Access Protocol)? Definition : Simple messaging framework for transferring information specified in the form of an XML infoset between an initial SOAP sender and an ultimate SOAP receiver. SOAP does not define application semantics but defines a mechanism to express application semantics. SOAP defines a simple and lightweight mechanism for exchanging structured and typed information between peers over the web in a decentralized, distributed environment using XML. Focus: SOAP looks at the WEB to enable : Invocation of software functionality over the internet Communication between heterogeneous systems Exposure of OO or component based systems Exchange of inter-application messages EDI / B2B over the internet It is centered around the RPC model, though it also supports the document oriented usage of the framework. 18 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande
10 SOAP Terminology Node: Enforcing the rules that govern the exchange of SOAP messages. It accesses the services provided by the underlying protocols through one or more SOAP bindings. Role: A SOAP node's expected function in processing a message(next, none, ultimate Receiver) Binding: Formal set of rules for carrying a SOAP message within or on top of another protocol (underlying protocol) for the purpose of exchange Feature: Extension of the SOAP messaging framework Module: Specification that contains the combined syntax and semantics of SOAP header blocks MEP: Exchange of SOAP messages between SOAP nodes enabled by one or more underlying SOAP protocol bindings SOAP Application: software entity that produces, consumes or otherwise acts upon SOAP messages in a manner conforming to the SOAP processing model Message Path: Set of SOAP nodes through which a single SOAP message passes 19 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande SOAP Message Structure (1.2) Envelope: This is top level root element of a SOAP Message, which contains the Header and Body element. Header:A collection of zero or more SOAP header blocks each of which might be targeted at any SOAP receiver within the SOAP message path. Body:A collection of zero or more element information items targeted at an ultimate SOAP receiver in the SOAP message path SOAP Message SOAP Envelope SOAP Header Header Block#1 Header Block#N SOAP Body Body Block #1 Body Block #N SOAP Fault Code [Value,SubCode[*]] Reason Node Role Detail 20 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande
11 SOAP Message Structure (1.2) Fault:A SOAP element information item which contains fault information generated by a SOAP node Code: contains a highlevel code classifying the nature of the fault Reason: Intended for human readable text Node:SOAP node on the SOAP message path caused the fault Role:The role the node was operating in at the point the fault Detail:intended for carrying application specific error information All the above SOAP1.2 Message elements must be defined by the Namespace : SOAP Message SOAP Envelope SOAP Header Header Block#1 Header Block#N SOAP Body Body Block #1 Body Block #N SOAP Fault Code [Value,SubCode[*]] Reason Node Role Detail 21 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande Example: SOAP Request Message <?xml version=1.0 encoding="utf-8"?> <env:envelope xmlns:env=" <env:header> <m:authetication xmlns:m=" env:role=" env:mustunderstand="true"> <m:username>suresh</m:username> <m:password>password</m:password> </m:authetication> </env:header> <env:body> <d:sendmessage xmlns:d=" <d:message> <d:id>uuid:093c9kpa2-c b-ws6q-eggg63et9n2f</d:id> <d:recipients> <d:msisdn> </d:msisdn> <d:msisdn> </d:msisdn> <d:msisdn> </d:msisdn> <d: >[email protected]</d: > </d:recipients> </d:message> </d:sendmessage> </env:body> </env:envelope> SOAP Request SOAP Message SOAP Envelope SOAP Header Header Block#1 Header Block#N SOAP Body Body Block #1 Body Block #N SOAP Fault Code [Value,SubCode[*]] Reason Node Role Detail 22 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande
12 Example: SOAP Response Message <?xml version=1.0 encoding="utf-8"?> <env:envelope xmlns:env=" <env:header> <m:acknowledgement xmlns:m=" env:role=" env:mustunderstand="true"> <m:receipt>1w12le34-1y9w42-13ws-3w2432</ m:receipt> </m:acknowledgement> </env:header> <env:body> <d:messagedeliveredresponse xmlns:d=" <d:message> <d:refid>uuid:093c9kpa2-c b-ws6q-eggg63et9n2f</d:refid> <d:recipients> <d:msisdn> </d:msisdn> <d:msisdn> </d:msisdn> <d:msisdn> </d:msisdn> </d:recipients> </d:message> </d:messagedeliveredresponse> </env:body> </env:envelope> SOAP Response SOAP Message SOAP Envelope SOAP Header Header Block#1 Header Block#N SOAP Body Body Block #1 Body Block #N SOAP Fault Code [Value,SubCode[*]] Reason Node Role Detail 23 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande Example: SOAP Fault Response Message <?xml version=1.0 encoding="utf-8"?> <env:envelope xmlns:env=" <env:body> <env:fault> <env:code><env:value>env:sender</env:value> <env:subcode> <env:value>m:messagetimeout</env:value> </env:subcode> </env:code> <env:reason>sender Timeout</env:Reason> <env:detail> <d:messagedeliveryfailure xmlns:d=" <d:message> <d:refid>uuid:093c9kpa2-c b-ws6q-eggg63et9n2f</d:refid> <d:failedrecipients> <d:msisdn> </d:msisdn> <d:msisdn> </d:msisdn> </d:failedrecipients> </d:message> </d:messagedeliveryfailure> </env:detail> </env:fault> </env:body> </env:envelope> SOAP Message SOAP Envelope SOAP Header Header Block#1 Header Block#N SOAP Body Body Block #1 Body Block #N SOAP Fault Code [Value,SubCode[*]] Reason Node Role Detail SOAP Fault Response 24 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande
13 SOAP Invocation Styles SOAP specification supports two styles of handling the SOAP messages received at the Nodes, namely RPC and Document style Remote Procedural Call (RPC) Style: This enables the SOAP engine to directly invoke the underlying software system, without any major efforts from the developer in translating the message to underlying system specifics Document Style: This enables the SOAP engine to deliver the Message to the corresponding Message Handler. The developer takes the responsibility to handle the messages accordingly within such handlers. Note: The closer the system is to the Message structure the better the overall performance. If it needs further transformation or translation it will affect the overall system performance. 25 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande SOAP - Document Style POST /Delivery/v1.0/deliver HOST: Content-Type; application/soap+xml; charset="utf-8" Content-Length:nnnn SOAP - Document Style <?xml version=1.0> <env:envelope xmlns:env=" <env:header> <m:authetication xmlns:m=" env:role=" env:mustunderstand="true"> <m:username>suresh</m:username> <m:password>mypassword</m:password> </m:authetication> </env:header> <env:body> <d:message xmlns:d=" <d:id>uuid:093c9kpa2-c b-ws6q-eggg63et9n2f</d:id> <d:recipients> <d:msisdn> </d:msisdn> <d:msisdn> </d:msisdn> <d:msisdn> </d:msisdn> <d: >[email protected]</d: > </d:recipients> </d:message> </env:body> </env:envelope> 26 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande
14 POST /Delivery/v1.0/deliver HOST: Content-Type; application/soap+xml; charset="utf-8" Content-Length:nnnn 27 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande SOAP - RPC Style SOAP - RPC Style <?xml version=1.0> <env:envelope xmlns:env=" <env:header> <m:authetication xmlns:m=" env:role=" env:mustunderstand="true"> <m:username>suresh</m:username> <m:password>mypassword</m:password> </m:authetication> </env:header> <env:body> <d:sendmessage xmlns:d=" <d:message> <d:id>uuid:093c9kpa2-c b-ws6q-eggg63et9n2f</d:id> <d:recipients> <d:msisdn> </d:msisdn> <d:msisdn> </d:msisdn> <d:msisdn> </d:msisdn> <d: >[email protected]</d: > </d:recipients> <d:message> </d:sendmessage> </env:body> </env:envelope> Will invoke a sendmessage() RPC on the ultimate Recipient SOAP Processing Model Determine the set of roles in which the node is to act. The contents of the SOAP envelope,soap header blocks and the SOAP body are inspected in making such determination. Identify all header blocks targeted at the node that are mandatory. If one or more of the SOAP header blocks identified are not understood by the node then generate a single SOAP fault with the Value of Code set to "env:notunderstood". If such a fault is generated, any further processing MUST NOT carry on. Process all mandatory SOAP header blocks targeted at the node and, in the case of an ultimate SOAP receiver, the SOAP body. A SOAP node MAY also choose to process non-mandatory SOAP header blocks targeted at it. 28 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande
15 Envelope Header SOAP - Intermediaries Envelope Header Envelope Body SOAP Client S O A P E N G I N E Body Envelope Header S O A P E N G I N E Ultimate Recipient Envelope Header Envelope Body Body Intermediaries 29 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande WSDL 30 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande
16 Web Services Description Language (WSDL) Originally submitted to W3C on 15 Mar 2001 by the Ariba, Microsoft and IBM and WSDL1.2 is currently a Working draft at W3C WSDL provides an XML based grammar to define web services as a collection of the communication end points capable of exchanging messages (procedural or document oriented) which follow a specified message structures in order to satisfy the functioning of a software system over a networked environment. The description is modeled into Abstract : containing end points and messages Concrete parts : binds these endpoints and messages to a concrete network deployment and data format bindings In principle this split in the service description promotes multiple deployment models of the baseline service definitions. 31 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande WSDL1.2 Document Structure Definitions: WSDL Root element which contains the complete service definition Documentation: Optional sub element used for documentation which is human readable Types: Data type definitions (XML Schema data types) Messages:Abstract definition of the data being transmitted PortType: Set of Abstract Operations, Operation : each operation refers to Input, Output and Faults Input Output Fault Documentation Types XML Schema Message Part Binding Operation Input Output Fault WSDL Document Definitions PortType Operation Input Output Fault Service Port 32 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande
17 WSDL1.2 Document Structure Binding: Specifies concrete protocol and data format specifications for the operations and messages defined by a particular porttype. Operation Input Output Fault Service: Utilized to aggregate a set of related ports Port: Specifies an address for a binding Documentation Types XML Schema Message Part Binding Operation Input Output Fault WSDL Document Definitions PortType Operation Input Output Fault Service Port 33 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande WSDL Bindings WSDL Provides 3 different bindings currently, namely: SOAP An indication that a binding is based on SOAP 1.2 protocol. Address specification for SOAP endpoints. A SOAP Action URI basically ending up as an HTTP header for the HTTP binding of SOAP. Header, Body and Fault definitions HTTP 1.1 GET and POST Bindings Non -SOAP based binding Specify the base URI as a port ( and the specific functionality to be invoked executed in the operations (/services/delivery/deliver) MIME Binding Allows the specification of multipart content being either part of input/output/fault. Relies on either SOAP or HTTP binding as defined above. 34 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande
18 Example: WSDL with SOAP Binding - Delivery WSI <?xml version="1.0" encoding="utf-8"?> <definitions 35 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande xmlns:http=" xmlns:soap=" xmlns:xs=" xmlns:m=" xmlns:d=" xmlns:soapenc=" xmlns:mime=" targetnamespace=" xmlns=" <documentation> </documentation> <types> </types> <message> </message> <message> </message> N <porttype> </porttype> <porttype> </porttype> N <binding> </binding> <binding> </binding> <binding> </binding>... N <service> <port> </port> < port> </port> N </service> </definitions> Example: WSDL with SOAP Binding - Delivery Web Services Interface [Contd..] <types> <xs:element name="sendmessage"> <xs:complextype> <xs:annotation><xs:documentation> </xs:documentation></xs:annotation> <xs:sequence> <xs:element name="message" type="d:messagetype"/> </xs:sequence> </xs:complextype> </xs:element> <xs:element name="messagetype"> <xs:complextype> <xs:annotation><xs:documentation> </xs:documentation></xs:annotation> <xs:sequence> <xs:element name="id" type="m:uuidtype"/> <xs:element name="recipients" type="d:recipientlisttype" /> </xs:complextype> </xs:element> <xs:element name="reciepientlisttype"> <xs:complextype> <xs:sequence> <xs:element name="msisdn" type="m:msidtype"minoccurs="0" maxoccurs="10"/> <xs:element name=" " type="xs:string" minoccurs="0" maxoccurs="10"/> </xs:sequence> <xs:complextype>.. </types> 36 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande
19 Example: WSDL with SOAP Binding - Delivery Web Services Interface [Contd..] <message name="sendmessagein"> <part name="parameters" element="d:sendmessage"/> </message> <message name="messagedeliveredresponseout"> <part name="parameters" element="d:messagedeliveredresponse"/> </message> <message name="messagedeliveryfailureout"> <part name="parameters" element="d:messagedeliveryfailure"/> </message> <porttype name="deliveryservice"> <operation name="sendmessage"> <documentation>.</documentation> <input message="d:sendmessagein"/> <output message="d:messagedeliveredresponseout"/> <fault name="deliveryfailed" message="d:messagedeliveredresponseout"/> </operation> </ porttype > 37 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande Example: WSDL with SOAP Binding - Delivery Web Services Interface [Contd..] <binding name="deliveryservicesoapbinding" type="d:deliveryserviceport"> <soap:binding transport=" style="document" /> <operation name="sendmessagerequest"> <soap:operation soapaction=" <input> <soap:body use="literal" encodingstyle=" </input> <output> <soap:body use="literal" encodingstyle=" </output> <fault> <soap:body use="literal" encodingstyle=" </fault> </operation > </binding> <service name="deliveryservice"> <port name="deliveryservicesoap" binding="d:deliveryservicesoapbinding"> <soap:address location=" </port> </service> </definitions> 38 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande
20 WSDL Modular Extensions Data Types Binding XML Schema based data types PortType Operation XSD type Operation Message Operation Custom Data types Derived Datatypes Message Part Part Port IP addr Service Types Abstract Interface Concrete Interface 39 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande WSDL definition Reusability WSDL through its "import" element construct enables reusability Helps writing clean and manageable service descriptions in a modular fashion separating the definitions according to their level of abstraction. It increases the ability to reuse definitions from a common set of service definitions. This is particularly beneficial when considering a family of WSI specification which are related to a particular industry domain. Enables definition of reusable Web Services Core libraries which address issues such as: Security, Reliability, Authorization & Authentication, many more 40 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande
21 WSDL Reusability - Enables definition of core WS Libraries Primitive Data Types XML XML Schema Schema dataatypes XML Schema datatype datatype XML Schema XML Schema dataatypes XML Schema datatype datatype Custom complex data types Custom Custom Datatype Custom Datatype Custom Datatype Datatype Custom Custom Datatype Custom Datatype Custom Datatype Datatype Common Datatypes WSDL Common Messages Message part Message part part Message part part Message part part part Message part Message part part Message part part Message part part part Services Services Interface Services Interface Abstract Definitions Interface Definitions Services Interface Definitions Definitions PortType Bindings WSDL WSDL interface interface WSDL WSDL definition interface definition interface definition definition Service 41 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande Other Crucial Web Services Standards WS-Choreography / Orchestrations [W3C <-> OASIS TC] WS-Security [OASIS TC] / WS-Reliability [OASIS TC] Web Services and REST 42 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande
22 Web Services Choreography / Orchestration A Web Services technology which enables the definition of a composite Web Service (or referred to as Business Process definition), which can utilize existing static WS specifications (WSDL) and allow the consumption of them in a (semi-)dynamic fashion. This is done so by providing additional syntactic and semantic definitions to specify the consumption patterns. The specification will allow choreograph the pattern of consumption of a set of WSI's, by providing a mechanism to specify the following features: Order of execution of individual WSI's, Exception Handling, Correlation between the messages exchanged Map between the messages and service interfaces Invoke WSI's on behalf of the client of this choreography Handle and manage different roles between the WSIs Maintain a state and session during the execution of the Choreography 43 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande Web Services Choreography / Orchestration Two different activities in this direction : Web Services Choreography [W3C->WSCI+others] Working group was created January 2003 and work has started here. Web Services Orchestrations [OASIS->WSBPEL TC / BPEL4WS] : Formed on 29th April, first meeting on 16th May NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande
23 Gaps in the Core Web Service technologies Web Service Web Service Provider Web Service Provider Provider Web Service Web Service Provider WSI WSI WSI Provider INTERNET WSI WSI Transaction handling Order of execution Not all issues are required to Error Handling Message Correlation be addressed for the non business critical Composition of interactions Interrelation between services, interfaces Some are Exceptions addressed & Compensations by : Automised Utilization of interfaces Developer Guides Simplified interfaces (Composite Services) Message Level Conventions Status of the asynchronous request Conversation State\ Context management Some are missing Some not required 45 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande Benefits Choreography adds to Web Services Enables the exposure of a process oriented model to Web Service Interfaces Provide a simplified interface to a set of interfaces, Facilitate simplified packaging of a set of interfaces. WS with choreography defined can be better managed when compared to current WSIs, specially when there exists inter-dependent set of WSIs (Payment, Profile, Delivery & Presence). Provides a clear usage model for a set of WSIs. Allows creation of composite services Enables specify design patterns depicting the best practices of using a set of WSI's Allows Provisioning of an execution environment which can guarantee execution of the complex/composite service invocation with compensations etc(for e.g. Delivery & Payment) 46 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande
24 Benefits Choreography adds to Web Services [Contd..] Provides a good environment for Long running middleware infrastructure. Where there can be pre-defined set of operations that need to be performed over a period of time(even Scheduled). This will simplify the client interactions with the WSIs, but in turn needs to interact with the process to manage and monitor the status of such execution. The most important factor is also that it helps define a coarse grained interfaces to the existing granular interfaces (RPC / Document style), reducing the interactions between the WSC and Choreography provider. Helps monitor that status of the request and even manage the lifecycle of the process 47 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande When not to use WS Choreographies? The WSPs provide a standalone sets of interfaces which do not need any correlation between each other Each of the Web Service Provider (WSP) handles all the conversational aspects in its own internal model Each WSP hides the complexity of the composite WSI utilization The WSC explicitly handles the complexity of exceptions and correspondingly manages the compensation handling However: For a set of industry standardized WSIs, WS Choreography might serve inter-operability purposes across multi-vendor implementations of these WSIs. 48 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande
25 An Example: Mobile Web Services Choreography Delivery Server Notification Server Presence Server Payment Server WSI WSI Use case : Web Services choreography consumer needs to deliver content to End Users only at specific time, while they are online to their preferred terminal. In case of a failure, the End User is to be notified. After a successful operation, the End User is charged by a payment transaction and notified about the complete transaction. WSI Profile Server Choreography based WSI business process can be initiated by sending a simple message with the content, which will WSI trigger the whole process. The rest of the interaction is handled by the choreography middleware. Process Client 49 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande Choreography \ Orchestration - Key features Process : A construct is available to represent a Business process (a complete choreography) Atomic/Composite Activities : These are individual steps involved in the execution of a choreographed business process Correlation : Allows correlation between the messages exchanged within the execution of a business process Transitions Loop: Allows iterative execution of each of the steps involved within a process Parallel :Allows parallel execution of process or sub process within a process Conditional : Allows a conditional execution of a set of steps involved within a process Sequential : Allows sequential execution of each of the steps involved within a process. 50 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande
26 Choreography \ Orchestration - Key features Property: This functionality allows alter and refer the values of the property in context of the execution of the Business process Transactions : Provides the transactional support within a Process Exception Handling : Handling of error conditions during the execution of the Business Process Steps Compensation Behavior: Enables compensate the affects of transaction once it has as successfully executed. Fault Triggers : Allows to raise a fault condition during the execution of the Business Process Multiple Service Interactions : Enables the definition of the interconnection between the different Services (operations within as well ) Service Lookup : Facilitates dynamic lookup to identify the next activity within the execution of the Business Process 51 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande Web Services Security 52 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande
27 Basic WS security requirements Authentication: who is requesting the service (client authentication), who is providing the service (server authentication) Authorization/Access control: who is allowed to do what Confidentiality: protect information against eaves-dropping Integrity: protect information against modification and replay Audit trail and non-repudiation: prevent denial of legally binding transactions Key management: distribute, locate and validate public keys (certificates) Availability: protect service against denial-of-service Correctness: proper operation against malfunction and attack NOTE: this is usually an implementation level issue! 53 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande Three generations of Web Services security (0. None) Transport level security: SSL/TLS with HTTP authentication current technology sits about here Message-based security: WITHOUT a reusable security context Message-based security: WITH a reusable security context 54 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande
28 Transport security vs. message security Transport security Between two communication endpoints Point-to-point security contexts Secured path ends when the message exits the transport channel Intermediate nodes can read the whole message Intermediate nodes must re-establish the secure communication when forwarding the message Message security Message-level security structures decoupled from the comms infra End-to-end security contexts Secured path continues even when the message exits the transport channel Intermediate nodes can read only those parts of the message that are targeted to them Secure messaging is guaranteed even if intermediate nodes do not participate in security mechanism Possibility of multiple security context in one message 55 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande Node1 Node1 Security context Node2 Security context Node2 Security context (Security context ) (Security context ) Node3 Node3 WS-Security IBM, Microsoft & Verisign specification 05 April 2002 Submitted to OASIS July 2002 A framework specification Defines a standard set of SOAP extensions as message headers that can be used to implement Web Services integrity and confidentiality How to use XML Signatures in SOAP messages (integrity) How to use XML Encryption in SOAP messages (confidentiality) How to attach or reference security tokens in SOAP messages How to carry security context for potentially multiple actors How to associate signatures with security tokens Encoding format for the following binary security tokens: X.509 certificates Kerberos tickets 56 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande
29 Web services and REST 57 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande Web Services and REST (web) Principles REpresentational State Transfer(REST) is a term coined by Roy Thomas Fielding in his PhD Thesis [ REST is an architectural style and not a standard Web consists of addressable resources, which is an item of interest. When a user utilizing an applications selects a specific address(url) a specific representation of that resource is returned over the Web. This representation places the client application into a specific state. On accessing another URL gets another representation to client application and in turn transferring the state from the current to the new state. "Representational State Transfer is intended to evoke an image of how a well-designed Web application behaves: a network of web pages (a virtual state-machine), where the user progresses through an application by selecting links (state transitions), resulting in the next page (representing the next state of the application) being transferred to the user and rendered for their use."(roy T Fielding) 58 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande
30 REST principles Stateless Conversation: All the requests originating from a client and server should contain all the required context for the communication and can not take advantage of any stored data. Cacheable Representations: Resource representations should be able to be flagged as cacheable/non-cacheable in order to improve the network efficiency. Resource Addressability: The resources are addressable using URL's and are in turn interconnected via URLS Intermediaries: There could be several intermediaries introduced between the client and the ultimate resource, such as proxies, gateways, for caching, security, performance, etc Resource Discovery: Standardized manner of discovering using distributed naming authorities(dns) and referring to resources (URI) 59 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande REST Guidelines View any web based system as a set of resources addressable as URLs Use URIs to refer to specific resources (refer to resources as nouns and not as verbs) Noun example: Verb Example: X Prefer an URI which are logical instead of physical Logical: Physical: Minimize the use of Query Strings Utilize the appropriate generic operations to perform the resource manipulation GET for simple read operations POST for modifying the state of the resource 60 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande
31 REST Guidelines Represent resources using schemas with inbuilt capability for extension included. Servers and Intermediaries should be stateless Clients need to maintain the state and state transitions 61 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande Overview Core Web Service Technologies Web Services For Mobile Domain Standardization Conclusion 62 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande
32 Rational behind Web Services for Mobile Domain The Role of Mobile content is ever growing High costs and low development cycle in deploying content Mobile, due to : Fragmentation of frameworks and interfaces Different technologies in web and mobile domains High integration costs ( billing etc) 3rd party content and services strongly contributes to operator revenues and complements operators own services Ability to charge 3rd party service and content provider for unique mobile assets such as MMS, micro payment, delivery of Java etc Faster integration work and lower costs Easier access to more users / new revenues via operator partnerships 63 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande Web services in mobile industry: Opportunity to lower integration costs between operators and content partners Application Servers Network Servers Terminals SDKs, APIs, toolkits etc. Application server Web server : W S I W S I Web Services Interfaces (WSI) W S I W S I W S I W S I MMSC Terminal management Presence Server Micropayment : GPRS GSM CDMA SDKs, APIs, toolkits etc. The key opportunity of Web Services in the mobile context lies in open standard server-to-server interfaces enabling more efficient service and content deployment 64 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande
33 Web services are most useful for fast, simple and flexible low cost integration Web services: Optimized for mass partnering, simple low cost integration of different systems / can be build on top of existing systems Tightly coupled architectures: Optimized for internal operations or limited number of close high volume partners Complexity Integration cost Optimization Number of partners Web services Loosely coupled interfaces and protocols XML, SOAP, WSDL, HTTP Tightly coupled architectures Platform dependent interfaces Enterprise Application Integration CORBA, RMI, OSA/Parlay 65 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande Nokia is committed to making Web services happen in the mobile industry Nokia s focus now is to demonstrate the viability of the approach and gather learning(s) for Web services standardization in OMA Therefore Nokia has now announced the 1st Web services interfaces (WSI) in it's server product portfolio Once OMA Web services standards are ready Nokia is planning to implement these throughout the server portfolio Nokia's 1st Web services Interface (WSI) Announcements Nokia MMSC MM7 WSI Nokia Terminal Management Server WSI Nokia Presence Server WSI 66 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande
34 Overview Core Web Service Technologies Web Services For Mobile Domain Standardization Conclusion 67 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande Web Service Standardization Efforts W3C Core Web Services Technologies OASIS Web Services Security, Reliable Messaging, Business Process Execution Language, OMA Open and Inter-operable Mobile Web Services Liberty Single Signon and Web Services Identify framework WS-I Web Services Inter-operability 68 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande
35 W3C Web Services Standardization Web Services Co-ordination Group Coordinate deliverables and dependencies between WG/ Creation and Dissolution of Working Groups/ Manage crises/ Gather and forward requests for additional requirements to the appropriate WG(s). Suggest/propose items relating to architecture to the Web Services Architecture Working Group for its consideration. Web Services Architecture Working Group. XML Protocol Working Group. Web Services Description Working Group. Web Services Choreography Working Group. 69 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande W3C SOAP1.2 is in candidate recommendation WSDL1.2 is working draft currently Nokia is active in the development of SOAP 1.2, WSDL 1.2, and Web Services architecture related standards 70 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande
36 OASIS OASIS tries to complement the work of standard bodies OASIS is participating Web Service standardizations, specifically in the areas of : Web Services Security TC (Nokia Participates in this) Web Services Business Process Execution Language TC Web Services Reliable Messaging TC (Nokia Participates in this) Others being: Web Services Distributed Management TC Web Services Interactive Applications TC Web Services Remote Portal TC 71 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande Open Mobile Alliance (OMA) Drives Open standards for inter-operable Mobile Services Mobile web services working group within OMA will create guidelines on how the interfaces should be specified The Mobile Web Services group is addressing : A specification Suite that will aid developer to apply Web Services : Web Services Discovery Access & Leverage Service enablers with OMA Framework OMA mobile Web Services framework standardisation How to use Web Service technologies and specifications in the mobile domain Use existing specifications and work as much as possible (don t reinvent the wheel) Actual specification done in other forums (e.g. WS-I and W3C) Nokia is an active member in the OMA mobile Web Services framework standardisation 72 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande
37 Liberty Alliance Project Specifies an Identity Web Services Framework (Nokia takes an active role here) Based on SOAP1.1, WSDL1.1, SAML and WS-Security Three distinct Liberty Identity efforts : Federation Framework (ID-FF) Provides core protocols, schemata and profiles. This allows implementers to create standardized, multi-vendor identity federation network. Web Services Framework (ID-WSF) Provides a set of protocols, schemata and profiles to provide a basic framework of identity services, such as: Identity Service discovery and invocation. Service Instance Specification Utilize the ID-FF and ID-WSF to provide network Identity services, such as contacts, presence detection or wallet services that depend on networked identity. Ref: 73 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande WS-I Assist in creations and deployment of inter-operable Web Services Development of common best practices for Web Services usage in the development, deployment and integration of business applications Deliverables for WS-I being : Interoperability Profile Testing tools Sample Applications The Basic Profile1.0 consists of SOAP1.1, WSDL1.1, UDDI2.0 WS-I and OMA do complementary work in mobile web services IOP area Nokia is active in the use cases and scenarios work, interoperability testing tool definitions, and sample application work 74 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande
38 Overview Core Web Service Technologies Web Services For Mobile Domain Standardization Wrap-up and Conclusion 75 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande Future Web Services Challenges Mature Standards and proof of interoperability Web Services Reliability Web Services Performance Web Services Management (Lifecycle management) Maintain Interoperability (Surprising!!) Open and Royalty Free Standards Web Services Choreography and Business Process Execution Language interoperability and collaboration between W3C and OASIS. Web Services specifications to extend support for handheld mobile client devices. 76 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande
39 77 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande Conclusion Web services is nothing new to the Web World but it has taken up different tools to address the previously addressed problems. It has taken up XML as the core tool to ensure inter-application/services communication. Web Service technologies will emerge to be more dynamic than it currently exists in the longer term(semantic Web) Web Services will slowly emerge into several industry domains, for instance, we will see the mobile industry embracing this technology. The tools are getting mature and one can expect very soon stable and fully standards complaint tool set available from the market. Several bodies will together play an important role to ensure Web Services promise for inter-operability, which includes both the standards body and as well as the vendors. W3C, OASIS, WS-I, OMA, Liberty, 3GPP, IETF and advocates of the Web have a key role to play here to ensure successful extension of the Web Backup Slides 78 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande
40 References OASIS Web Services Security TC : Liberty : WS-I : Open Mobile Alliance : OASIS's Technical Commitees: W3C's Web Services Activities: Web Services Security : Roy T Fielding's PhD Thesis: Roger L.Costello's REST overview: REST & SOAP overview, DevelopMentor: REST discusson group at Yahoo Groups : 79 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande Web Services Overview- Current Deployment Business Integration solutions Business to Business Integration solutions Enterprise Application Integration Business to Consumers : Yahoo, Google and Amazon in-order to provide basic building block services to business partners. Middleware Solutions: J2EE,.NET Client Solutions Tools Web client solutions (Apache Axis, etc). Mobile device clients: Lightweight clients infrastructure for Handheld devices Integrated Development Environment (IDE's), Automatic code generators WS Interface (WSI) generators from the existing code. 80 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande
41 SOAP Message Framework - Principles Modular encapsulation of information such that it is suitable for : Intermediaries Ultimate Recipient Flexibility through extensibility. Semi-automatically expose the existing infrastructure as a Web service, through the help of tools. (This is achieved by keeping the framework close to the programmatic model such as RPC) Service centric rather then Web Centric: URI is used to locate the service Application functionality is hidden behind the API's, instead of the URI Message's encapsulate the communication intention instead of the underlying protocol (HTTP/SMTP) 81 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande SOAP Message Framework - Principles [Contd.] Utilizes Web as transportation SOAP message contains all the application interpretable information Web and protocols below SOAP are meant for transportation purposes. Bindings can be altered without major effect on the functionality Addressing is done at the message level and is application controlled. Not tightly integrated to the transport binding protocols + Can support wider transport protocols with minimal efforts (SMTP,HTTP, SIP, FTP,others.) - Could cause inefficient utilization of the transport and the general infrastructure if not applied properly. 82 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande
42 SOAP Message Framework - Principles [Contd.] Developer friendly Programmatic representation makes it developer friendly due to similarity to the deployed environment's programming model. RPC style : + Removes the need for additional code to interpret the XML documents + Directly invokes the components or legacy system (this is usually generated automatically). - too granular. - expose the complexity to the client implementation. 83 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande SOAP Message Framework - Disadvantages The application level API complexity is exposed to the client system. Any header that needs to be interpreted requires parsing of the entire message at each intermediary level Performance relies on the number of intermediaries and message complexity. Does not utilize the underlying protocols and relevant infrastructure to its fullest extent. 84 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande
43 Java Community Process JSR-172: Web Services for Mobile Devices Is based on the JAX-RPC technology, but for the J2ME java platform for mobile devices. Provides tools such as : XML Parsing APIs WSDL to java mapping, API to support generated stubs, Investigation of a suitable and compact encoding mechanism for XML based RPC messages 85 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande Changes in SOAP 1.2 from 1.1 SOAP1.2 is on a candidate recommendation SOAP 1.2 does not permit any element after the body. SOAP 1.2 does not allow the env:encodingstyle attribute to appear on the SOAP env:envelope SOAP 1.2 defines the new env:notunderstood header element for conveying information on a mandatory header block which could not be processed, The env:mustunderstand attribute in header elements takes the (logical) value "true" or "false" SOAP 1.2 replaces the attribute env:actor with env:role SOAP 1.2 defines a new attribute, env:relay, for header blocks to indicate if unprocessed header blocks should be forwarded. 86 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande
44 Changes in SOAP 1.2 from 1.1 SOAP 1.2 provides a hierarchical structure for the mandatory SOAP env:code sub-element in the env:fault element, and introduces two new optional subelements, env:node and env:role. In SOAP1.2 the HTTP header "soapaction" does not exists any more, but The contents of the former SOAP Action HTTP header are now expressed as a value of an (optional) "action" parameter of the "application/soap+xml" media type that is signaled in the HTTP binding. 87 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande SOAP1.2 - Message Exchange Patterns Must provide a URI to name the MEP Describe the life cycle of a message exchange conforming to the pattern Describe the relationships of multiple messages exchanged in conformance with a particular pattern (for e.g. responses follow requests and are sent to the originator of the request.) Describe the normal and abnormal termination of a message exchange conforming to the pattern 88 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande
45 SOAP1.2 Fault Headers Blocks When a SOAP node generates a fault under the below two conditions it should provide the corresponding header blocks along with the general faults in the response : VersionMismatch (upgrade) and MustUnderstand (notunderstood). For example: In the case of the VersionMismatch : Body should contain the following fault : <env:fault> <env:code><env:value>env:versionmismatch</env:value></env:code> <env:reason>version Mismatch</env:Reason> </env:fault> in addition to the following header entry: <env:upgrade> <env:supportedenvelope qname="ns1:envelope" xmlns:ns1=" <env:supportedenvelope qname="ns2:envelope" xmlns:ns2=" </env:upgrade> 89 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande Web Services Development Model Top Down Approach A. WSDL Creation: Identify & define the data types to be used(custom as well as from the XML Schema DT base) Define the interfaces to be used Define the different operations & their bindings B. Utilize tool to create stubs : Run through tool to create required automatically generated parts of the code C. Implementation: Complete the implementation to receive the SOAP requests, process and deliver a Response incase required to do so. D. Deploy the WS: Utilize the tools to deploy and host the WS Publish the WS into a registry like using UDDI, WSIL (optional) 90 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande
46 Web Services Development Model Bottom Up Approach (Implementation exists) A. Implementation If not already existing Develop a system using Java, C++ or any other programming language. B. Create WSDL : Define the WSDL Manually and then map the SOAP requests to the API calls using the standard APIs or then Run through tool to create required automatically generated parts of the WSDL and the bindings (for examplejava2wsdl, ApacheAxis). Integrate the generated parts C. Deploy the WS Utilize the tools to deploy and host the WS Publish the WS into a registry like using UDDI, WSIL (optional) 91 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande Most important mobile Web services interfaces to standardize from business perspective MMS Delivery (downloading Java, polyphonic ring tones etc) Payment Location Presence Device management Authentication 92 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande
47 Good start in Web services standardization for the mobile industry Promising 1st steps to standardize how to apply Web services technology in mobile 3GPP in MMS: MM7 Mobile Web Services Group in Open Mobile Alliance (OMA) started in August 2002 Nokia views that the Open Mobile Alliance (OMA) is well positioned to lead Web Services standardization in the Mobile Industry Over 220 member companies representing the whole value chain needed for mobile services Cooperation between OMA and other key forums is crucial (3GPP, W3C, OASIS, Liberty etc) 93 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande XML Signature W3C Recommendation 12 February 2002 Detection of message tampering partial or full signing of a message multiple signatures for a single message nonce & recipient can be included for nonrepudiation Detection of forgery certificate chain validation Support for multiple encryption algorithms Minimal canonicalization required make equivalent documents equal at byte level before signature creation and validation Verifying a signature binding of document-to-key (signature validation against the doc) binding of key-to-identity (certificate) verifying the current validity of key-to-document binding 94 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande
48 XML Encryption W3C Candidate Recommendation 02 August 2002 Message confidentiality partial or full encryption of a message Support for multiple encryption algorithms Encryption key can be further encrypted useful when encryption is done by a randomly generated symmetric key that is in turn encrypted by the recipient s public key Minimal canonicalization required make equivalent documents equal at byte level before signature creation and validation Encrypted data cannot be validated until decrypted If data is signed before encryption, signature should be encrypted as well plain text signature exposes some deciphering vulnerabilities 95 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande XML Key Management Specification (XKMS) W3C Working Draft 18 March 2002 SOAP based PKI operations against some PKI provider Functions Registering (and revoking) public keys with an XKMS-compliant PKI service X-KRSS Key Registration Service Specification Certificate creation and registration Certificate revocation Recovery of public (and optionally private) keys Locating or validating a public key already registered with an XKMS-compliant PKI service X-KISS Key Information Service Specification Location and retrieval of public keys Certificate validation Used in conjunction with XML Encryption and XML Digital Signature For example, a signature containing a certificate could be sent to an XKMS service to extract the public key 96 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande
49 The Liberty Alliance Project Ref: 97 NOKIA Introduction2WebServices /06.May.2003 / Suresh Chande
Principles and Foundations of Web Services: An Holistic View (Technologies, Business Drivers, Models, Architectures and Standards)
Principles and Foundations of Web Services: An Holistic View (Technologies, Business Drivers, Models, Architectures and Standards) Michael P. Papazoglou (INFOLAB/CRISM, Tilburg University, The Netherlands)
T-110.5140 Network Application Frameworks and XML Web Services and WSDL 15.2.2010 Tancred Lindholm
T-110.5140 Network Application Frameworks and XML Web Services and WSDL 15.2.2010 Tancred Lindholm Based on slides by Sasu Tarkoma and Pekka Nikander 1 of 20 Contents Short review of XML & related specs
Research on the Model of Enterprise Application Integration with Web Services
Research on the Model of Enterprise Integration with Web Services XIN JIN School of Information, Central University of Finance& Economics, Beijing, 100081 China Abstract: - In order to improve business
Service-Oriented Architectures
Architectures Computing & 2009-11-06 Architectures Computing & SERVICE-ORIENTED COMPUTING (SOC) A new computing paradigm revolving around the concept of software as a service Assumes that entire systems
EAI OVERVIEW OF ENTERPRISE APPLICATION INTEGRATION CONCEPTS AND ARCHITECTURES. Enterprise Application Integration. Peter R. Egli INDIGOO.
EAI OVERVIEW OF ENTERPRISE APPLICATION INTEGRATION CONCEPTS AND ARCHITECTURES Peter R. Egli INDIGOO.COM 1/16 Contents 1. EAI versus SOA versus ESB 2. EAI 3. SOA 4. ESB 5. N-tier enterprise architecture
Service Oriented Architecture
Service Oriented Architecture Charlie Abela Department of Artificial Intelligence [email protected] Last Lecture Web Ontology Language Problems? CSA 3210 Service Oriented Architecture 2 Lecture Outline
Web Services and Service Oriented Architectures. Thomas Soddemann, RZG
Web Services and Service Oriented Architectures, RZG Delaman Workshop 2004 Overview The Garching Supercomputing Center - RZG Diving into the world of Web Services Service Oriented Architectures And beyond
Introduction into Web Services (WS)
(WS) Adomas Svirskas Agenda Background and the need for WS SOAP the first Internet-ready RPC Basic Web Services Advanced Web Services Case Studies The ebxml framework How do I use/develop Web Services?
Introduction to Service Oriented Architectures (SOA)
Introduction to Service Oriented Architectures (SOA) Responsible Institutions: ETHZ (Concept) ETHZ (Overall) ETHZ (Revision) http://www.eu-orchestra.org - Version from: 26.10.2007 1 Content 1. Introduction
Web Services Advanced Topics
Web Services Advanced Topics Where things are now and where they are going Version 9 Web Services Advanced Topics WSAdvanced-2 Enterprise Web Services Industry trends and organizations Security and Reliability
Digital Signature Web Service Interface
1 2 Digital Signature Web Service Interface 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 1 Introduction This document describes an RPC interface for a centralized
4. Concepts and Technologies for B2C, B2E, and B2B Transaction
4. Concepts and Technologies for B2C, B2E, and B2B Transaction 4.4 Exchanging Information within Open Business Communities 4.4.1 Pre-Internet B2B standards: EDI, Interactive EDI, Universal EDI, OpenEDI
Service-Oriented Architecture and its Implications for Software Life Cycle Activities
Service-Oriented Architecture and its Implications for Software Life Cycle Activities Grace A. Lewis Software Engineering Institute Integration of Software-Intensive Systems (ISIS) Initiative Agenda SOA:
Introduction to Web Services
Department of Computer Science Imperial College London CERN School of Computing (icsc), 2005 Geneva, Switzerland 1 Fundamental Concepts Architectures & escience example 2 Distributed Computing Technologies
Introduction to Service-Oriented Architecture for Business Analysts
Introduction to Service-Oriented Architecture for Business Analysts This course will provide each participant with a high-level comprehensive overview of the Service- Oriented Architecture (SOA), emphasizing
Motivation Definitions EAI Architectures Elements Integration Technologies. Part I. EAI: Foundations, Concepts, and Architectures
Part I EAI: Foundations, Concepts, and Architectures 5 Example: Mail-order Company Mail order Company IS Invoicing Windows, standard software IS Order Processing Linux, C++, Oracle IS Accounts Receivable
Run-time Service Oriented Architecture (SOA) V 0.1
Run-time Service Oriented Architecture (SOA) V 0.1 July 2005 Table of Contents 1.0 INTRODUCTION... 1 2.0 PRINCIPLES... 1 3.0 FERA REFERENCE ARCHITECTURE... 2 4.0 SOA RUN-TIME ARCHITECTURE...4 4.1 FEDERATES...
Copyright 2012, Oracle and/or its affiliates. All rights reserved.
1 OTM and SOA Mark Hagan Principal Software Engineer Oracle Product Development Content What is SOA? What is Web Services Security? Web Services Security in OTM Futures 3 PARADIGM 4 Content What is SOA?
Emerging Technologies Shaping the Future of Data Warehouses & Business Intelligence
Emerging Technologies Shaping the Future of Data Warehouses & Business Intelligence Service Oriented Architecture SOA and Web Services John O Brien President and Executive Architect Zukeran Technologies
Service-Oriented Architecture and Software Engineering
-Oriented Architecture and Software Engineering T-86.5165 Seminar on Enterprise Information Systems (2008) 1.4.2008 Characteristics of SOA The software resources in a SOA are represented as services based
Web Services Description Language (WSDL) Wanasanan Thongsongkrit
Web Services Description Language (WSDL) Wanasanan Thongsongkrit WSDL Development History at W3C WSDL 1.1 was submitted as a W3C Note by Ariba, IBM and Microsoft March 2001 WSDL 2.0 Merging 3 previous
WEB SERVICES SECURITY
WEB SERVICES SECURITY February 2008 The Government of the Hong Kong Special Administrative Region The contents of this document remain the property of, and may not be reproduced in whole or in part without
1 What Are Web Services?
Oracle Fusion Middleware Introducing Web Services 11g Release 1 (11.1.1) E14294-04 January 2011 This document provides an overview of Web services in Oracle Fusion Middleware 11g. Sections include: What
Getting Started with Service- Oriented Architecture (SOA) Terminology
Getting Started with - Oriented Architecture (SOA) Terminology Grace Lewis September 2010 -Oriented Architecture (SOA) is a way of designing, developing, deploying, and managing systems it is neither a
Service-oriented architecture in e-commerce applications
Service-oriented architecture in e-commerce applications What is a Service Oriented Architecture? Depends on who you ask Web Services A technical architecture An evolution of distributed computing and
1 What Are Web Services?
Oracle Fusion Middleware Introducing Web Services 11g Release 1 (11.1.1.6) E14294-06 November 2011 This document provides an overview of Web services in Oracle Fusion Middleware 11g. Sections include:
Architectural Requirements for an SOA Based on Web Services. Jim Bole VP, Engineering Infravio, Inc. April 23, 2003
Architectural Requirements for an SOA Based on Web s Jim Bole VP, Engineering Infravio, Inc. April 23, 2003 Agenda! Web s is an integration technology! Web s role in an SOA! Unique Features and Challenges
How To Understand A Services-Oriented Architecture
Introduction to Service Oriented Architecture CSCI-5828 Foundations of Software Engineering Ming Lian March 2012 Executive Summary This Executive Summary gives the straight word to the fresh that have
Grid Computing. Web Services. Explanation (2) Explanation. Grid Computing Fall 2006 Paul A. Farrell 9/12/2006
Grid Computing Web s Fall 2006 The Grid: Core Technologies Maozhen Li, Mark Baker John Wiley & Sons; 2005, ISBN 0-470-09417-6 Web s Based on Oriented Architecture (SOA) Clients : requestors Servers : s
Table of Contents. 1 Executive Summary... 2 2. SOA Overview... 3 2.1 Technology... 4 2.2 Processes and Governance... 8
Table of Contents 1 Executive Summary... 2 2. SOA Overview... 3 2.1 Technology... 4 2.2 Processes and Governance... 8 3 SOA in Verizon The IT Workbench Platform... 10 3.1 Technology... 10 3.2 Processes
What is a Web service?
What is a Web service? Many people and companies have debated the exact definition of Web services. At a minimum, however, a Web service is any piece of software that makes itself available over the Internet
XIII. Service Oriented Computing. Laurea Triennale in Informatica Corso di Ingegneria del Software I A.A. 2006/2007 Andrea Polini
XIII. Service Oriented Computing Laurea Triennale in Informatica Corso di Outline Enterprise Application Integration (EAI) and B2B applications Service Oriented Architecture Web Services WS technologies
Service-Oriented Architecture: Analysis, the Keys to Success!
Service-Oriented Architecture: Analysis, the Keys to Success! Presented by: William F. Nazzaro CTO, Inc. [email protected] www.iconatg.com Introduction Service-Oriented Architecture is hot, but we seem
Oracle SOA Reference Architecture
http://oraclearchworld.wordpress.com/ Oracle SOA Reference Architecture By Kathiravan Udayakumar Introduction to SOA Service Oriented Architecture is a buzz word in IT industry for few years now. What
Service Virtualization: Managing Change in a Service-Oriented Architecture
Service Virtualization: Managing Change in a Service-Oriented Architecture Abstract Load balancers, name servers (for example, Domain Name System [DNS]), and stock brokerage services are examples of virtual
A standards-based approach to application integration
A standards-based approach to application integration An introduction to IBM s WebSphere ESB product Jim MacNair Senior Consulting IT Specialist [email protected] Copyright IBM Corporation 2005. All rights
Service-Oriented Architecture (SOA) vs. Component Based Architecture. Helmut Petritsch
Service-Oriented Architecture (SOA) vs. Component Based Architecture Helmut Petritsch Index Introduction... 3 Definitions... 3 Component-based architecture:... 3 Service-oriented architecture (SOA)...
e-gov Architecture Service Interface Guidelines
1 Introduction... 4 2 Mandatory Standards... 5 2.1 WSDL... 5 2.1.1 Service Definition Layer... 5 2.1.2 Binding Layer... 6 2.2 SOAP... 7 2.3 UDDI... 8 2.3.1 Different types of UDDI registries... 8 2.3.2
BUSINESS PROCESS AND EBXML - WEB SERVICES INTEGRATION PLATFORM, REQUIREMENTS, ARCHITECTURES, SECURITY
1 2 BUSINESS PROCESS AND EBXML - WEB SERVICES INTEGRATION PLATFORM, REQUIREMENTS, ARCHITECTURES, SECURITY 1 Carmen RĂDUŢ, 2 Maria STĂNILOIU 1 Universitatea Constantin Brâncoveanu PITEŞTI 2 Universitatea
WEB SERVICES. Revised 9/29/2015
WEB SERVICES Revised 9/29/2015 This Page Intentionally Left Blank Table of Contents Web Services using WebLogic... 1 Developing Web Services on WebSphere... 2 Developing RESTful Services in Java v1.1...
Service Oriented Architectures
8 Service Oriented Architectures Gustavo Alonso Computer Science Department Swiss Federal Institute of Technology (ETHZ) [email protected] http://www.iks.inf.ethz.ch/ The context for SOA A bit of history
SOA REFERENCE ARCHITECTURE
SOA REFERENCE ARCHITECTURE August 15, 2007 Prepared by Robert Woolley, Chief Technologist and Strategic Planner INTRODUCTION This document is a derivative work of current documentation and presentations
Web Services Implementation Methodology for SOA Application
Web Services Implementation Methodology for SOA Application Siew Poh Lee Lai Peng Chan Eng Wah Lee Singapore Institute of Manufacturing Technology Singapore Institute of Manufacturing Technology Singapore
Developing Java Web Services
Page 1 of 5 Developing Java Web Services Hands On 35 Hours Online 5 Days In-Classroom A comprehensive look at the state of the art in developing interoperable web services on the Java EE platform. Students
How To Create A C++ Web Service
A Guide to Creating C++ Web Services WHITE PAPER Abstract This whitepaper provides an introduction to creating C++ Web services and focuses on:» Challenges involved in integrating C++ applications with
Internationalization and Web Services
Internationalization and Web Services 25 th Internationalization and Unicode Conference Presented by Addison P. Phillips Director, Globalization Architecture webmethods, Inc. 25 th Internationalization
Java Security Web Services Security (Overview) Lecture 9
Java Security Web Services Security (Overview) Lecture 9 Java 2 Cryptography Java provides API + SPI for crypto functions Java Cryptography Architecture Security related core classes Access control and
ITS. Java WebService. ITS Data-Solutions Pvt Ltd BENEFITS OF ATTENDANCE:
Java WebService BENEFITS OF ATTENDANCE: PREREQUISITES: Upon completion of this course, students will be able to: Describe the interoperable web services architecture, including the roles of SOAP and WSDL.
Trusting XBRL: Using the Liberty Web Services Framework to Secure and Authenticate XBRL Documents
Trusting XBRL: Using the Liberty Web Services Framework to Secure and Authenticate XBRL Documents Farrukh Najmi and Eve Maler [email protected], [email protected] Sun Microsystems, Inc. Goals for today's
ActiveVOS Server Architecture. March 2009
ActiveVOS Server Architecture March 2009 Topics ActiveVOS Server Architecture Core Engine, Managers, Expression Languages BPEL4People People Activity WS HT Human Tasks Other Services JMS, REST, POJO,...
Service Computing: Basics Monica Scannapieco
Service Computing: Basics Monica Scannapieco Generalities: Defining a Service Services are self-describing, open components that support rapid, low-cost composition of distributed applications. Since services
Federated Identity in the Enterprise
www.css-security.com 425.216.0720 WHITE PAPER The proliferation of user accounts can lead to a lowering of the enterprise security posture as users record their account information in order to remember
Enterprise Application Designs In Relation to ERP and SOA
Enterprise Application Designs In Relation to ERP and SOA DESIGNING ENTERPRICE APPLICATIONS HASITH D. YAGGAHAVITA 20 th MAY 2009 Table of Content 1 Introduction... 3 2 Patterns for Service Integration...
Integration of Hotel Property Management Systems (HPMS) with Global Internet Reservation Systems
Integration of Hotel Property Management Systems (HPMS) with Global Internet Reservation Systems If company want to be competitive on global market nowadays, it have to be persistent on Internet. If we
Service Oriented Architecture (SOA) Architecture, Governance, Standards and Technologies
Service Oriented Architecture (SOA) Architecture, Governance, Standards and Technologies 3-day seminar Give Your Business the Competitive Edge SOA has rapidly seized the momentum and center stage because
An Oracle White Paper November 2009. Oracle Primavera P6 EPPM Integrations with Web Services and Events
An Oracle White Paper November 2009 Oracle Primavera P6 EPPM Integrations with Web Services and Events 1 INTRODUCTION Primavera Web Services is an integration technology that extends P6 functionality and
Enterprise Reference Architecture
Prepared by Enterprise Planning and Architecture Strategies Team Page 1 of 19 Control Page: Revision History: Version No Revised Date Author Comments 03/18/2011 Anitha Ramakrishnan Initial Version Page
IBM SPSS Collaboration and Deployment Services Version 6 Release 0. Single Sign-On Services Developer's Guide
IBM SPSS Collaboration and Deployment Services Version 6 Release 0 Single Sign-On Services Developer's Guide Note Before using this information and the product it supports, read the information in Notices
Lesson 18 Web Services and. Service Oriented Architectures
Lesson 18 Web Services and Service Oriented Architectures Service Oriented Architectures Module 4 - Architectures Unit 1 Architectural features Ernesto Damiani Università di Milano A bit of history (1)
REST web services. Representational State Transfer Author: Nemanja Kojic
REST web services Representational State Transfer Author: Nemanja Kojic What is REST? Representational State Transfer (ReST) Relies on stateless, client-server, cacheable communication protocol It is NOT
Cloud Computing & Service Oriented Architecture An Overview
Cloud Computing & Service Oriented Architecture An Overview Sumantra Sarkar Georgia State University Robinson College of Business November 29 & 30, 2010 MBA 8125 Fall 2010 Agenda Cloud Computing Definition
A Comparison of Service-oriented, Resource-oriented, and Object-oriented Architecture Styles
A Comparison of Service-oriented, Resource-oriented, and Object-oriented Architecture Styles Jørgen Thelin Chief Scientist Cape Clear Software Inc. Abstract The three common software architecture styles
Service Oriented Architecture 1 COMPILED BY BJ
Service Oriented Architecture 1 COMPILED BY BJ CHAPTER 9 Service Oriented architecture(soa) Defining SOA. Business value of SOA SOA characteristics. Concept of a service, Enterprise Service Bus (ESB) SOA
Network Security. Chapter 10. Application Layer Security: Web Services. Part I: Introduction to Web Services
Network Architectures and Services, Georg Carle Faculty of Informatics Technische Universität München, Germany Part I: Introduction to Web Services Network Security Chapter 10 Application Layer Security:
How To Develop A Web Service In A Microsoft J2Ee (Java) 2.5 (Oracle) 2-Year Old (Orcient) 2Dj (Oracles) 2E (Orca) 2Gj (J
Tool Support for Developing Scalable J2EE Web Service Architectures Guus Ramackers Application Development Tools Oracle Corporation [email protected] www.oracle.com Using All This in Real Life
XML Signatures in an Enterprise Service Bus Environment
XML Signatures in an Enterprise Bus Environment Eckehard Hermann Research & Development XML Integration Uhlandstraße 12 64297 Darmstadt, Germany [email protected] Dieter Kessler Research
Developers Integration Lab (DIL) System Architecture, Version 1.0
Developers Integration Lab (DIL) System Architecture, Version 1.0 11/13/2012 Document Change History Version Date Items Changed Since Previous Version Changed By 0.1 10/01/2011 Outline Laura Edens 0.2
NIST s Guide to Secure Web Services
NIST s Guide to Secure Web Services Presented by Gaspar Modelo-Howard and Ratsameetip Wita Secure and Dependable Web Services National Institute of Standards and Technology. Special Publication 800-95:
Web Services Technologies
Web Services Technologies XML and SOAP WSDL and UDDI Version 16 1 Web Services Technologies WSTech-2 A collection of XML technology standards that work together to provide Web Services capabilities We
Business Process Execution Language for Web Services
Business Process Execution Language for Web Services Second Edition An architect and developer's guide to orchestrating web services using BPEL4WS Matjaz B. Juric With Benny Mathew and Poornachandra Sarang
Service Oriented Architecture (SOA) Architecture, Governance, Standards and Technologies
Service Oriented Architecture (SOA) Architecture, Governance, Standards and Technologies 3-day seminar Give Your Business the Competitive Edge SOA has rapidly seized the momentum and center stage because
Redbook Overview Patterns: SOA Design with WebSphere Message Broker and WebSphere ESB
IBM Software for WebSphere Redbook Overview Patterns: SOA Design with WebSphere Message Broker and WebSphere ESB Presenter: Kim Clark Email: [email protected] Date: 27/02/2007 SOA Design with WebSphere
SOA GOVERNANCE MODEL
SOA GOVERNANCE MODEL Matjaz B. Juric University of Ljubljana, Slovenia [email protected] Eva Zupancic University of Ljubljana, Slovenia Abstract: Service Oriented Architecture (SOA) has become
A Comparison of Service-oriented, Resource-oriented, and Object-oriented Architecture Styles
A Comparison of Service-oriented, Resource-oriented, and Object-oriented Architecture Styles Jørgen Thelin Chief Scientist Cape Clear Software Inc. Abstract The three common software architecture styles
Oracle9i Application Server: Options for Running Active Server Pages. An Oracle White Paper July 2001
Oracle9i Application Server: Options for Running Active Server Pages An Oracle White Paper July 2001 Oracle9i Application Server: Options for Running Active Server Pages PROBLEM SUMMARY...3 INTRODUCTION...3
Oracle Application Server 10g Web Services Frequently Asked Questions Oct, 2006
Oracle Application Server 10g Web Services Frequently Asked Questions Oct, 2006 This FAQ addresses frequently asked questions relating to Oracle Application Server 10g Release 3 (10.1.3.1) Web Services
Software Requirement Specification Web Services Security
Software Requirement Specification Web Services Security Federation Manager 7.5 Version 0.3 (Draft) Please send comments to: [email protected] This document is subject to the following license:
Concept, implementation and performance testing of a mobile Web Service provider for Smart Phones
Ome Srirama Chair of Information Systems LuFG Cooperation Systems Aachen University of Technology Prof. Dr. Wolfgang Prinz Master Thesis Concept, implementation and performance testing of a mobile Web
ISM/ISC Middleware Module
ISM/ISC Middleware Module Lecture 14: Web Services and Service Oriented Architecture Dr Geoff Sharman Visiting Professor in Computer Science Birkbeck College Geoff Sharman Sept 07 Lecture 14 Aims to: Introduce
JVA-561. Developing SOAP Web Services in Java
JVA-561. Developing SOAP Web Services in Java Version 2.2 A comprehensive look at the state of the art in developing interoperable web services on the Java EE 6 platform. Students learn the key standards
Technical Track Session Service-Oriented Architecture
Technical Track Session Service-Oriented Architecture Terry Woods Agenda A little history What is Service-Oriented Architecture? How do you build a Service-Oriented Architecture Solution? What is an Enterprise
WHAT IS BPEL AND WHY IS IT SO IMPORTANT TO MY BUSINESS?
WHAT IS BPEL AND WHY IS IT SO IMPORTANT TO MY BUSINESS? PUBLISHED FEBRUARY 2012 Written by M.W. Cobban Director Operations and Support SoftCare HealthCare Solutions 1-888-SoftCare (1-888-763-8227) www.softcare.com
Creating Web Services in NetBeans
Creating Web Services in NetBeans Fulvio Frati [email protected] Sesar Lab http://ra.crema.unimi.it 1 Outline Web Services Overview Creation of a Web Services Server Creation of different Web Services
Sentinet for BizTalk Server SENTINET
Sentinet for BizTalk Server SENTINET Sentinet for BizTalk Server 1 Contents Introduction... 2 Sentinet Benefits... 3 SOA and APIs Repository... 4 Security... 4 Mediation and Virtualization... 5 Authentication
Strategic Information Security. Attacking and Defending Web Services
Security PS Strategic Information Security. Attacking and Defending Web Services Presented By: David W. Green, CISSP [email protected] Introduction About Security PS Application Security Assessments
A Quick Introduction to SOA
Software Engineering Competence Center TUTORIAL A Quick Introduction to SOA Mahmoud Mohamed AbdAllah Senior R&D Engineer-SECC [email protected] Waseim Hashem Mahjoub Senior R&D Engineer-SECC Copyright
Middleware and the Internet. Example: Shopping Service. What could be possible? Service Oriented Architecture
Middleware and the Internet Example: Shopping Middleware today Designed for special purposes (e.g. DCOM) or with overloaded specification (e.g. CORBA) Specifying own protocols integration in real world
Lesson 4 Web Service Interface Definition (Part I)
Lesson 4 Web Service Interface Definition (Part I) Service Oriented Architectures Module 1 - Basic technologies Unit 3 WSDL Ernesto Damiani Università di Milano Interface Definition Languages (1) IDLs
Web Services Strategy
Web Services Strategy Agenda What What are are Web Web Services? Services? Web Web Services Services --The The Technologies Technologies Web Web Services Services Compliments Compliments Overall Overall
Oracle Service Bus. User Guide 10g Release 3 Maintenance Pack 1 (10.3.1) June 2009
Oracle Service Bus User Guide 10g Release 3 Maintenance Pack 1 (10.3.1) June 2009 Oracle Service Bus User Guide, 10g Release 3 Maintenance Pack 1 (10.3.1) Copyright 2007, 2008, Oracle and/or its affiliates.
Service-Oriented Computing and Service-Oriented Architecture
Service-Oriented Computing and Service-Oriented Architecture Week 3 Lecture 5 M. Ali Babar Lecture Outline Service-Oriented Computing (SOC) Service-Oriented Architecture (SOA) Designing service-based systems
Web Services Trust and XML Security Standards
Web Services Trust and XML Security Standards Date: April 9, 2001 Version: 1.0 Copyright 2001-2003 Entrust. All rights reserved. Entrust is a registered trademark of Entrust, Inc. in the United States
A SOA Based Framework for the Palestinian e-government Integrated Central Database
Islamic University of Gaza Deanery of Higher Studies Faculty of Information Technology Information Technology Program A SOA Based Framework for the Palestinian e-government Integrated Central Database
SOA Myth or Reality??
IBM TRAINING S04 SOA Myth or Reality Jaqui Lynch IBM Corporation 2007 SOA Myth or Reality?? Jaqui Lynch Mainline Information Systems Email [email protected] Session S04 http://www.circle4.com/papers/s04soa.pdf
Service Oriented Computing: SOAP, WSDL and UDDI. Dr. Cristian Mateos Diaz (http://users.exa.unicen.edu.ar/~cmateos/cos) ISISTAN - CONICET
Service Oriented Computing: SOAP, WSDL and UDDI Dr. Cristian Mateos Diaz (http://users.exa.unicen.edu.ar/~cmateos/cos) ISISTAN - CONICET XML family of standards Domain-specific XML-based standards e.g.,
