© 2002 progress software corporation1 simplify your business

63
© 2002 Progress Software Corporation 1 Simplify your business Simplify your business

Upload: rudolf-flynn

Post on 28-Dec-2015

218 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation1Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

Page 2: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation2Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

D I S C L A I M E R

““Products Under Development”Products Under Development”Technical PreviewTechnical Preview

This talk includes information about potential future products and/or product enhancements.

What I am going to say reflects our current thinking, but some information contained herein is preliminary and subject to change. Any future products we ultimately deliver may be materially different from what is described here.

In other words - you can’t believe everything I’m going to say.

Page 3: © 2002 Progress Software Corporation1 Simplify your business

The Web Services The Web Services Development ToolkitDevelopment Toolkit

J. Espen [email protected] Services Manager, Norway

Page 4: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation4Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

AgendaAgenda

Architecture Transformation

Introduction OpenEdge, Web Services

WSTK Architecture

Developing & Deployment with the WSTK

Connection Management

Open Client Object Model

Demo.....

That's All Folks…

Page 5: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation5Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

ProgressProgress OpenEdge OpenEdge : : EnkeltEnkelt, , IntegrertIntegrert, , ÅpentÅpent

Progress Dynamics™

SonicMQ • SonicXQ

Web Services Dev. Toolkit

AppServer

WebSpeed Transaction Server

RDBMSDataServers

WebClient

WebSpeed

Open ClientGUI/ChUI

Progress4GL

ActuateCorVu

Report BuilderQuery/Results

Fa

tho

mT

M

Pro

Vis

ion

TM

Web

Sp

eed

W

ork

sho

p

Applications

Page 6: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation6Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

Architecture TransformationArchitecture Transformation

ClientServerClientServer

HostCentricHost

Centric

DistributedDistributed

AppServer

Client

Architecture Evolution

Application development and application architectures have had an interesting and sometimes painful evolution

Application development and application architectures have had an interesting and sometimes painful evolution

Process-OrientedApplications

Process-OrientedApplications

Business Process

Business Process

Business Process

• Service-Oriented Architecture (SOA) is the next-generation interoperation methodology

• Technologies such as Web services are a means to that end

• Service-Oriented Architecture (SOA) is the next-generation interoperation methodology

• Technologies such as Web services are a means to that end

Page 7: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation7Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

Development TransformationDevelopment Transformation

ClientCentricClient

CentricHost

CentricHost

Centric

DistributedDistributed

AppServer

Client

Interface Drives the ProcessProcess Drives the Interface

• Process-centric applications require new methods of development

• Processes (procedures) are services to and from any client, server, or application

• Process-centric applications require new methods of development

• Processes (procedures) are services to and from any client, server, or application

• Traditional application development is from “outside in”

• Integration and service orientation require process-centric logic

• Traditional application development is from “outside in”

• Integration and service orientation require process-centric logic

Process-OrientedApplications

Process-OrientedApplications

Business Process

Business Process

Business Process

Page 8: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation8Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

The ApplicationsThe Applications

Process-OrientedApplications

Business Process

Business Process

Business Process

Application ModuleToo Large

Data Update LogicToo Small

Business ProcessJust Right

Coarse-grained, loosely-coupled business processes

Page 9: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation10Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

An Application RequiresAn Application Requires

3 Strategic Elements

ESBEnabled

User Interface Freedom

User Interface Freedom

Logic Platform

Process-centric design

Page 10: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation11Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

User Interface Freedom• to deploy the interface of choice• to construct or define user interfaces• to respond to competitive pressures• to operate without a user interface!

User Interface FreedomUser Interface Freedom

Open Client Tools

.NET Integration

Web Services

Progress ChUI, GUI, Web

Access to applications

Page 11: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation12Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

• Support for Web Services • Support for SonicXQ• Fast Development of New Services

ESB EnabledESB Enabled

Web Services ToolKit (WSTK)

XML to 4GL / XML to Storage

4GL to Web Services Integration

XQ Service Container

OpenEdgeOpenEdgeApplicationApplication

J2EE J2EE ApplicationApplication

.NET .NET ApplicationApplication

Dynamics for SOA

Application components as services

Page 12: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation13Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

Logic Platform

Business Logic PlatformBusiness Logic Platform

Progress 4GL

Business Logic Platform

Dynamic Business Logic

Business Process Logic

Transaction Logic

Data Logic

Progress Dynamics

Faster assembly of new functionality

Page 13: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation14Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

An Application RequiresAn Application Requires

3 Strategic Elements

ESBEnabled

User Interface Freedom

User Interface Freedom

Logic Platform

Process-centric design

Page 14: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation15Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

AgendaAgenda

Introduction OpenEdge, Web Services

WSTK Architecture

Developing & Deployment with the WSTK

Connection Management

Open Client Object Model

Demo.....

That's All Folks…

Page 15: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation16Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

OpenEdge IntegrationOpenEdge Integration

SonicMQ & SonicXQ

Web Services Development Toolkit

“Using Web services will help reduce costs and improve the efficiency of IT projects by 30 percent.”

Daryl Plummer

Sr. VP, Gartner Group

Page 16: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation17Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

One definition of a Web ServiceOne definition of a Web Service

An application that can be accessed over the Web or any network from another application using RPC style calls encoded

using SOAP over HTTP where the interface can be described using WSDL.

“Web Services is the

telephone for applications.”

How is the weather in Bedford?

Page 17: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation18Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

Web ServicesWeb Services

Service Producer (Server)– Develops, publishes & deploys the Web Service

Service Registry – Directory of Web Services

Service Consumer (Client)– Locates & uses Web Services

“Logical Model”

Page 18: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation19Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

Web Services StandardsWeb Services Standards

HTTP Hypertext Transfer Protocol– Protocol for sending data over the Web

XML eXtensible Markup Language– Standard way to represent & exchange data

SOAP Simple Object Access Protocol– XML based messaging protocol (eg. RPCs)– An extensible message format

WSDL Web Service Description Language– XML based language– A Service Description language

UDDI– A standard for Web Service registries – A way to discover Web Service providers

Page 19: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation20Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

XML ExampleXML Example

<?xml version="1.0" encoding="UTF-8"?><Customer type=“partner”>

<Custnum>5</Custnum><Name>Go Fishing Ltd</Name><Address2>83 Ponders End Rd</Address2><City>Harrow</City><State>Middlesex</State><PostalCode>HA8 3LU</PostalCode><Balance>14235.14</Balance>

</Customer>

Page 20: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation21Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

SOAPSOAP

SOAP Envelope SOAP Header

– Mechanism for app-specific extensions

SOAP Body– Main business

content– Usually uses SOAP

encoding

SOAP Envelope

SOAP Header

SOAP Body

App-SpecificBody Elements

App-SpecificHeader Elements

Simple Object Access Protocol

Page 21: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation22Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

<?xml version="1.0" encoding="utf-8"?>

<SOAP-ENV:Envelope

SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"

xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"

xmlns:xsd="http://www.w3.org/2001/XMLSchema"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

<SOAP-ENV:Body>

<getQuote xmlns="http://some-site.com">

<symbol xsi:type="xsd:string">qadi</symbol>

</getQuote>

</SOAP-ENV:Body>

</SOAP-ENV:Envelope>

SOAP ExampleSOAP ExampleSOAP ExampleSOAP ExampleStock Quote Web Service – Request Message

Page 22: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation23Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

<?xml version="1.0" encoding="utf-8"?>

<SOAP-ENV:Envelope

SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"

xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"

xmlns:xsd="http://www.w3.org/2001/XMLSchema"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

<SOAP-ENV:Body>

<getQuoteResponse "xmlns="http://www.some-site.com/">

<getQuoteResult xsi:type="xsd:float">99.8503</getQuoteResult>

</getQuoteResponse>

</SOAP-ENV:Body>

</SOAP-ENV:Envelope>

SOAP ExampleSOAP ExampleSOAP ExampleSOAP ExampleStock Quote Web Service – Reply Message

Page 23: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation24Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

WSDLWSDL

What can it do? How do I invoke it? Where does it reside?

Web Service Description Language

Page 24: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation25Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

WSDLWSDL

Specifies interface– Business methods that can be invoked

(“operations”)

– Message structure for each method Data fields, types

– Bindings for the operations eg. SOAP over HTTP

Identifies network address of Web Service

Web Service Description Language

Page 25: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation26Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

Machine B

CreditChk

UDDI Registry

GetWeather

2. Web service made available to public, by publishing its WSDL to a UDDI registry

Web ServicesWeb Services

How is the weather in Bedford?Machine A

GetWeatherWS

GetWeatherWS

1. Web service is built and deployed, ready to be published.

Machine C

Client

3. Client searches for available weather services

4. Client finds access info about GetWeather

5. Client makes info request directly to service

6. Service sends result back to client

Page 26: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation27Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

AgendaAgenda

Web Services

WSTK Architecture

Developing & Deployment with the WSTK

Connection Management

Open Client Object Model

That's All Folks…

Page 27: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation28Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

Web Services Toolkit RoadmapWeb Services Toolkit Roadmap

Phase 1– Web Service-enabled AppServer

– Web Service Client is another Open Client

Phase 2– 4GL to a Web Service

– It’s just like calling another AppServer, e.g.

RUN foo on SERVER web-service-hdl.

Page 28: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation29Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

Web Services ToolkitWeb Services Toolkit

Generate a WSDL file for an AppServer-based application based on the Open Client programming model

Runtime infrastructure so that an AppServer can be accessed as a Web Service

Phase 1

Page 29: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation30Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

Web Services Toolkit ComponentsWeb Services Toolkit Components

Web Services Adapter (WSA) WSTK enhanced ProxyGen WSTK enhanced Progress Explorer

Page 30: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation31Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

Web Services Toolkit Web Services Toolkit Runtime ArchitectureRuntime Architecture

HT

TP

L

iste

ner

Web

Ser

vice

s A

dap

ter

Web Server (JSE)

AppServers

WSDLFiles

WSADs

ubroker.properties

POST(Soap)Web

Service Client Response(Soap)

Page 31: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation32Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

Web Services AdapterWeb Services Adapter

Progress provided Java Servlet Can use any Web Server and JSE that

supports the JSE V2.2 specification Manages all communications between a

Web Service client and an AppServer Converts a SOAP request to an AppServer

request using a Web Service Application descriptor (WSAD)

One WSAD deployed for each application Configured using Progress Explorer

Page 32: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation33Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

WSADWSAD

One WSAD per application identified by XML namespace

Conceptually similar to Open Client proxies

Includes:– Application service to use– 4GL procedure to call for each SOAP

request– Parameter and datatype information

Deployed to a WSA and maintained persistently

Page 33: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation34Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

AgendaAgenda

Web Services

WSTK Architecture

Developing & Deployment with the WSTK

Connection Management

Open Client Object Model

That's All Folks…

Page 34: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation35Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

Development Site

Deployment Site

WSM

ProxyGen

4GL

ProgressExplorer

WSM

Web Server Site

WSM

WSDLs

Web Services Adapter

WSADs

HTTP Listener

Soa

p

Req

ues

t/R

esp

onse

GE

T W

SD

L

? ?

Deploying an ApplicationDeploying an ApplicationDeploying an ApplicationDeploying an Application

Page 35: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation36Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

ProxyGen

Development Site

Business logic

Proxies

4GL .r files

Java classes

ActiveX

Web Services Mapping File

Page 36: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation37Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

Development SiteDevelopment Site

Using ProxyGen – Create ProxyObjects

AppObject (One) SubAppObjects (Optional – many) ProcObjects (Optional – many)

– Initiate generation of Web Service Mapping (WSM) file

– Specify whether application is session managed or session free – more on this later

Package the AppServer application for deployment including the WSM file

Step 1: Prepare Application For Deployment

Page 37: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation38Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

Web Server SiteWeb Server Site

Install JSE at Web Server as required Install Web Services Adapter (WSA) within

JSE Configure WSA by editing

ubroker.properties or using Progress Explorer– Log file– URL of WSA instance– Controlling NameServer

Step 2: Configure WSA for access

Page 38: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation39Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

Deployment SiteDeployment Site

Specify:– WSA instance to use– Location of WSM– WSDL Generation Info

Target namespace WSDL Encoding

– Application Service of corresponding AppServer Results in:

– WSM being sent to WSA instance along with WSDL generation info

– WSDL and WSAD being generated by WSA instance

– WSAD being loaded so application is available for access

Step 3: Run Progress Explorer to Deploy Application

Page 39: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation40Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

Web Services Communication ModelWeb Services Communication Model

Web Web Service Service ClientClient

BusinessBusinessLogicLogic

AppAppServersServers

Web Server

DatabaseDatabaseServerServer

.NETJavaPerl

WSADs

WS

AW

SA

HT

TP

Lis

ten

erH

TT

P L

iste

ne r

““ Op

en C

lien

t

Op

en C

lien

t

Ru

nt i

me ”

Ru

nt i

me”

WSDLs

HTTP PostHTTP Post

HTTP ResponseHTTP Response

Page 40: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation41Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

Web Services Web Services Communication Model, cont.Communication Model, cont.

Client sends a SOAP request to the WSA The WSA maps the request to a procedure

on the AppServer using the WSAD The WSA asks the AppServer to run the

procedure The WSA creates a SOAP response or

fault and sends it to the client

Remember - No Progress code on the client!!

Page 41: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation42Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

AgendaAgenda

Web Services

WSTK Architecture

Developing & Deployment with the WSTK

Connection Management

Open Client Object Model

That's All Folks…

Page 42: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation43Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

Connection ManagementConnection Management

Session Managed– State-aware

– State-reset

– Stateless Session Free

Specified via ProxyGen

Page 43: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation44Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

ApplicationApplicationServerServer

ApplicationApplicationServerServer

StatelessStatelessStatelessStateless

Application Application BrokerBroker

AppServer

WSAWSAWSAWSA

Web Web ServicesServices

ClientClientConnect

ConnectConnect

Web Web ServicesServices

ClientClient

Page 44: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation45Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

ApplicationApplicationServerServer

ApplicationApplicationServerServer

StatelessStatelessStatelessStateless

Application Application BrokerBroker

AppServer

WSAWSAWSAWSA

Web Web ServicesServices

ClientClient

Web Web ServicesServices

ClientClientRUN PartRUN Part RUN Part

RUN cust

RUN cust

RUN cust

Integration

Page 45: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation46Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

ApplicationApplicationServerServer

ApplicationApplicationServerServer

StatelessStatelessStatelessStateless

Application Application BrokerBroker

AppServer

WSAWSAWSAWSA

Web Web ServicesServices

ClientClient

Web Web ServicesServices

ClientClient

Page 46: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation47Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

ApplicationApplicationServerServer

ApplicationApplicationServerServer

Session FreeSession FreeSession FreeSession Free

Application Application BrokerBroker

AppServer

WSAWSAWSAWSA

Web Web ServicesServices

ClientClient

Web Web ServicesServices

ClientClientRUN PartRUN Part RUN Part

RUN cust

RUN cust

RUN cust

Page 47: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation48Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

ApplicationApplicationServerServer

ApplicationApplicationServerServer

Session FreeSession FreeSession FreeSession Free

Application Application BrokerBroker

AppServer

WSAWSAWSAWSA

Web Web ServicesServices

ClientClient

Web Web ServicesServices

ClientClient

Page 48: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation49Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

AgendaAgenda

Web Services

WSTK Architecture

Deploying an Application with the WSTK

Connection Management

Open Client Object Model

That's All Folks…

Page 49: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation50Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

Open Client Object ModelOpen Client Object Model

Object types:– ApplicationObjects (AppObjects)

– Sub-ApplicationObjects (Sub-AppObjects)

– ProcedureObjects (ProcObjects)

Objects are used to:– Provide access to the 4GL logic running on

the AppServer

– Provide runtime context (if necessary)

ApplicationApplicationObjectObject

ProcedureProcedureObjectObject

Sub-Sub-AppObjectAppObject

Page 50: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation51Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

AppServer Session ModelAppServer Session Model

Session Managed– Connection is established by the client– Connection is dedicated by the WSA to the

AppServer for that client– AppServers today follow this model (state-aware,

state-reset, stateless)

Session Free– No connection required– Pool of network resources in the WSA shared by all

clients– Web Services design center (state-free)

Page 51: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation55Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

Object Relationships at Object Relationships at Runtime: Session ManagedRuntime: Session Managed

Call Connect on AppObject first to establish connection

All objects share single connection

Context information must be managed by client

Connection maintained until all objects released

ApplicationApplicationObjectObject

ProcedureProcedureObjectObject

ProcedureProcedureObjectObject

Sub-Sub-AppObjectAppObject

ProcedureProcedureObjectObject

Method1Method1Method2Method2Method1Method1Method2Method2

MethodXMethodXMethodXMethodX

Proc1Proc1Proc2Proc2FuncXFuncX

Proc1Proc1Proc2Proc2FuncXFuncX

Page 52: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation56Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

Object Relationships at Object Relationships at Runtime: Session FreeRuntime: Session Free

Simply call methods on the AppObject to run non-persistent procedures

No context information for AppObject

Warning: ProcObjects and Sub-AppObjects force connection and context management – Not recommended!

ApplicationApplicationObjectObject

ProcedureProcedureObjectObject

ProcedureProcedureObjectObject

Sub-Sub-AppObjectAppObject

ProcedureProcedureObjectObject

Method1Method1Method2Method2Method1Method1Method2Method2

MethodXMethodXMethodXMethodX

Proc1Proc1Proc2Proc2FuncXFuncX

Proc1Proc1Proc2Proc2FuncXFuncX

Page 53: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation57Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

A Look at ProxyGenA Look at ProxyGen

ProxyGen works the same for Web Services as it does for Java and ActiveX

Define the Objects and generate the proxy for the client (WSM/WSDL)

New deployment step required in Progress Explorer

Page 54: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation58Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

ProxyGen: Select 4GL ProceduresProxyGen: Select 4GL ProceduresSelect the 4GL

procedures for each object

Optionally customize the procedure definition

Page 55: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation59Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

ProxyGen: GenerateProxyGen: Generate

Select Web Services Client

Select Session Model

Page 56: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation60Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

ProxyGen: GenerateProxyGen: GenerateEnter initial

deployment information:

– Namespace– WSA URL– SOAP Action– Test WSDL

Generate the “proxy”

Page 57: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation61Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

Required Information forRequired Information for Web Services Generation Web Services Generation

Namespace– Unique identifier for the Web Service– Must be unique at the WSA instance

WSA URL– URL identifying the location of the WSA

SOAP Action– May be blank, client may need

Test WSDL– Supports a single style/use

Page 58: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation62Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

Generating the “Proxy”Generating the “Proxy”

Proxy Generation for Web Services– Uses the 4GL code to generate a Web Services

Mapping (WSM) file

– Optionally generates a Test WSDL file

Deployment Phase– Done in Progress Explorer or wsaman

– Converts the WSM file to a WSAD

– Deployer can change ProxyGen settings

– WSDL available through the WSAhttp://localhost:8080/wsa/wsa1/wsdl?targetURI=OrderService

Page 59: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation63Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

Web Services options – DeployWeb Services options – Deploy

View of the explorer with a deployed application.

Page 60: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation64Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

Web Services options – ImportWeb Services options – Import

Import screens will look very similar to the deploy screens

Page 61: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation65Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

SummarySummary

Web Service enabled AppServer based on Open Client model

Progress provides the technology you need so you can focus on your business and application requirements

Web Services coming to an application

near you soon

Web Services coming to an application

near you soon

Page 62: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation66Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess

The Interface FreedomThe Interface Freedom

Business Process

loosely-coupled business processes

Process-OrientedApplications

Business Process

Business Process

Business Process

Process-OrientedApplications

Business Process

Business Process

Business Process

Progress, Sonic… .NET, Java…

Just Right for Web Services

ESB, Web Services

Page 63: © 2002 Progress Software Corporation1 Simplify your business

© 2002 Progress Software Corporation67Sim

plify

you

r bu

sin

ess

Sim

plify

you

r bu

sin

ess