23
C Copyright © 2009, Oracle. All rights reserved. Appendix C: Service-Oriented Architectures

C Copyright © 2009, Oracle. All rights reserved. Appendix C: Service-Oriented Architectures

Embed Size (px)

Citation preview

CCopyright © 2009, Oracle. All rights reserved.

Appendix C: Service-Oriented Architectures

Copyright © 2009, Oracle. All rights reserved.C - 2

Objectives

After reading this appendix, you should be familiar with:

• Publishing Warehouse Builder objects as Web services

• Creating Web services based on a URL

• Executing Web services

• Using Web services in mappings

• Using Web services as activities in process flows

• Using Secure Sockets Layer (SSL) to access Web services securely

Copyright © 2009, Oracle. All rights reserved.C - 3

Topics

• Introduction to Web services

• Publishing Warehouse Builder objects as Web services

• Creating Web services based on a URL

• Executing Web services

• Using Web services in mappings

• Using Web services as activities in process flows

• Using Secure Sockets Layer (SSL) to access Web services securely

Copyright © 2009, Oracle. All rights reserved.C - 4

What Are Services?

• Services are:– Building blocks for an SOA-enabled application– Functionality-described standard interface and message

structure definitions– Accessed using standard protocols (the glue) to enable

interoperability from decoupled functions

• A Web service is a software component that is capable of being accessed via standard network protocols. – Defined by a set of technologies that provide platform-

independent protocols and standards used for exchanging data between applications

• OWB supports Web services in two primary areas: – Expose and publish OWB processing objects (mappings,

transformations, and so on) as Web services– Able to model and use Web services in process flows

Copyright © 2009, Oracle. All rights reserved.C - 5

Service-Oriented Architecture

• Building solutions based on Web services is commonly called Service-Oriented Architecture (SOA).

• Web services generally interact using two XML-based standards:– Simple Object Access Protocol (SOAP), a protocol for

exchanging XML-based messages over a computer network, normally using HTTP. It is used to send Web service requests and to receive Web service responses.

– The Web Services Description Language (WSDL), an XML-based service description on how to communicate using the Web service.

The SOA approach, reframing applications as collections of loosely-coupled software services communicating using open standards like SOAP and HTTP, is a new model for application architecture in the age of the Web.

Copyright © 2009, Oracle. All rights reserved.C - 6

Topics

• Introduction to Web services

• Publishing Warehouse Builder objects as Web services

• Creating Web services based on a URL

• Executing Web services

• Using Web services in mappings

• Using Web services as activities in process flows

• Using Secure Sockets Layer (SSL) to access Web services securely

Copyright © 2009, Oracle. All rights reserved.C - 7

Full Support for SOA

• Warehouse Builder fully supports service-oriented architectures for data integration.

• OWB 11g R2 can be used to:– Publish OWB objects as a Web

service:— ETL and data quality mappings— Process flows— Transformations— Data auditors

– Consume an existing Web service• The new Application Server module

is introduced to support Web services.– Two types of Application Server

modules: Public and Private

Copyright © 2009, Oracle. All rights reserved.C - 8

Publishing a Web Service

You can create a new private Application Server module that contains the Web Services node.

All the Web services that you create or publish are added under this node.

You can right-click a match-merge mapping and choose to create it as a Web service and then place it in a location for deployment (like any object in OWB). OWB generates a Web Services Description Language (WSDL) file for the Web service.

Copyright © 2009, Oracle. All rights reserved.C - 10

Topics

• Introduction to Web services

• Publishing Warehouse Builder objects as Web services

• Creating Web services based on a URL

• Executing Web services

• Using Web services in mappings

• Using Web services as activities in process flows

• Using Secure Sockets Layer (SSL) to access Web services securely

Copyright © 2009, Oracle. All rights reserved.C - 11

The name of the Web service—derived automatically from the WSDL file—can be edited.

Click Browse to specify the path of the WSDL file. The URL address can be the path of a local file or the URL address of a remote file accessible across a network. The WSDL file contains the definitions of the existing Web service.

Top-Down Web Service Design Approach

Copyright © 2009, Oracle. All rights reserved.C - 12

Topics

• Introduction to Web services

• Publishing Warehouse Builder objects as Web services

• Creating Web services based on a URL

• Executing Web services

• Using Web services in mappings

• Using Web services as activities in process flows

• Using Secure Sockets Layer (SSL) to access Web services securely

Copyright © 2009, Oracle. All rights reserved.C - 13

Executing Web Services

• You can execute Web services by using:– The Control Center Manager– A Web browser

• To execute Web services, you must be signed in as a J2EE user who is granted the OWB_J2EE_EXECUTOR role. – When you use the OC4J server embedded within

Warehouse Builder, this role is already created for you. – Use one of the following methods to assign this role to a

J2EE user:— The Manage J2EE User Accounts option in the Repository

Assistant— The J2EE User Management option under the Tools menu of

the Design Center

Copyright © 2009, Oracle. All rights reserved.C - 14

Topics

• Introduction to Web services

• Publishing Warehouse Builder objects as Web services

• Creating Web services based on a URL

• Executing Web services

• Using Web services in mappings

• Using Web services as activities in process flows

• Using Secure Sockets Layer (SSL) to access Web services securely

Copyright © 2009, Oracle. All rights reserved.C - 15

Methods for Creating a Mapping That Uses Web Services

Use one of the following methods to create a mapping that uses Web services as sources or targets:• Use the UTL_HTTP package.• Use the JPublisher utility to interface SQL to the Web

service.• Use the UTL_DBWS package to consume Web services.

– Depending on the version of Oracle Database, you may need to download and install the DBWS utility to perform these tasks.

• Use the use_webservice_in_mapping.tcl script located in the OWB_ORACLE_HOME/owb/misc/mappingWS directory to create an expert that you can use to consume Web services in mapping.

Copyright © 2009, Oracle. All rights reserved.C - 16

Topics

• Introduction to Web services

• Publishing Warehouse Builder objects as Web services

• Creating Web services based on a URL

• Executing Web services

• Using Web services in mappings

• Using Web services as activities in process flows

• Using Secure Sockets Layer (SSL) to access Web services securely

Copyright © 2009, Oracle. All rights reserved.C - 17

A Web Services Definition Language (WSDL) file contains the definition of a Web service.

Using the WSDL URL, you can import the Web services’ metadata.

Consuming a Web Service

You can import existing Web services provided by external sources into the Public Application Servers module.

Copyright © 2009, Oracle. All rights reserved.C - 18

Public Web Services Can Be Used by OWB Process Flows

• You can use or call an existing Web service from a process flow.

Copyright © 2009, Oracle. All rights reserved.C - 19

Topics

• Introduction to Web services

• Publishing Warehouse Builder objects as Web services

• Creating Web services based on a URL

• Executing Web services

• Using Web services in mappings

• Using Web services as activities in process flows

• Using Secure Sockets Layer (SSL) to access Web services securely

Copyright © 2009, Oracle. All rights reserved.C - 20

Accessing Web Services Securely

Web servicein a

process flow

Change default locationto URI location

Secure access tothe Web service

Copyright © 2009, Oracle. All rights reserved.C - 21

J2EE Roles for Java Runtime Security

OWB 11g R2 allows J2EE users who are granted the OWB_J2EE_EXECUTOR role to execute Web services through a browser. Two ways to assign role:

1 2

Copyright © 2009, Oracle. All rights reserved.C - 22

Demonstration Viewlet

• Follow instructor directions to view the demonstration of Warehouse Builder support for Service-Oriented Architecture.

Copyright © 2009, Oracle. All rights reserved.C - 23

Summary

In this appendix, you should have become familiar with:

• Publishing Warehouse Builder objects as Web services

• Creating Web services based on a URL

• Executing Web services

• Using Web services in mappings

• Using Web services as activities in process flows

• Using Secure Sockets Layer (SSL) to access Web services securely

Copyright © 2009, Oracle. All rights reserved.C - 24