Scale Up Access to your 4GL Application using Web Services

Download Report

Transcript Scale Up Access to your 4GL Application using Web Services

Scale Up Access to your 4GL Application using Web Services David Lund

Sr. Training Program Manager, Progress

Session Focus

Implementing Progress 4GL Web Services

Identification of the best places to use web services

Choosing web service standards and technologies

Sample implementation of Progress 4GL Web Service

2 © 2005 Progress Software Corporation Progress 4GL Web Services

Agenda

Progress 4GL Web Services

Getting started

Standards

Web service provider

Deployment

Web service consumer

3 © 2005 Progress Software Corporation Progress 4GL Web Services

How Does This Relate to SOA

 

Service Oriented Architecture (SOA)

logic concept behind the physical implementations One type of physical implementation is web services Provider Communications

4

Service Oriented

© 2005 Progress Software Corporation Progress 4GL Web Services

The Value of Web Services

Connects applications together through agreed upon standards

Share information between applications without writing a customized interface

Application can be written in any language

Provides an alternative method to access existing applications

For example: Access business logic of a client server application over the web

5 © 2005 Progress Software Corporation Progress 4GL Web Services

Common Business Logic

The basics

OpenEdge ® AppServer™ = Center of the business logic

universe

Ways to access business logic

.NET

™ Open Client

– – – – – –

4GL Client Java ™ Open Client Web services WebClient ™ WebSpeed ® OpenEdge Adapter for SonicMQ ®

6 © 2005 Progress Software Corporation Progress 4GL Web Services

Configuration

Server (Provider) Client/ Server Clients OpenEdge Application Server Web Service Client (Consumer)

7 © 2005 Progress Software Corporation Progress 4GL Web Services

Sorting out the Acronyms

Standards Provider Deployment

8 © 2005 Progress Software Corporation

Consumer

Progress 4GL Web Services

Agenda

Progress 4GL Web Services

Getting started

Standards

Web service provider

Deployment

Web service consumer

9 © 2005 Progress Software Corporation Progress 4GL Web Services

SOAP

Protocol for message exchange

Lightweight & XML-based

Independent

Encoding

– – –

Transport Language Platform

Extensible

Extra context via headers

Supports

message typing

– –

strong typing structured data

10 © 2005 Progress Software Corporation

Standards

Progress 4GL Web Services

WSDL Web Service Description Language

Standards

This is the service contract

Data type mapping

– –

SOAP message format How to call the Web service

XML Document

Created by

Web service provider

Used by

Web service consumer

11 © 2005 Progress Software Corporation Progress 4GL Web Services

XML Schema

Comprise of a set of agreed upon rules

Structure, Content, Semantics

A means for defining for XML Documents

Used to define formats for SOAP and WSDL messages

Maps 4GL data types Standards

12 © 2005 Progress Software Corporation Progress 4GL Web Services

OpenEdge WSDL Style/Use

RPC/Encoded

Messages use remote procedure call (RPC) model

Data format uses SOAP data model

Document/Literal

Messages use XML Document model

– 

Defined as complex types in Types section Data format conforms to standard XML schema

13 © 2005 Progress Software Corporation

Standards

Progress 4GL Web Services

Web Services is Defined by Standards

Web Services

A set of standards that comprise a platform for building distributed, interoperable applications

Progress 4GL Web Services utilizes W3C standards

– – –

WSDL 1.1 (W3C Note – de facto standard) SOAP 1.1 HTTP Binding 2001 XML Schema

14 © 2005 Progress Software Corporation Progress 4GL Web Services

Agenda

Progress 4GL Web Services

Getting started

Standards

Web service provider

Deployment

Web service consumer

15 © 2005 Progress Software Corporation Progress 4GL Web Services

Open Client Object Model

  

Always one Establishes connection External procedures

  

Zero or more Shares connection Internal procedures/UDFs

  

Zero or more Shares connection External procedures

16 © 2005 Progress Software Corporation

Provider

Progress 4GL Web Services

WSM Web Service Mapping File

Lists

Objects

Operations

Identifies Session Model

Initializes deployment information

Created by ProxyGen Provider

17 © 2005 Progress Software Corporation Progress 4GL Web Services

ProxyGen Tool

4GL Business Logic (r-code) App Object Proc Object Sub AppObj Project file (.xpxg) Web Services Mapping file (.wsm)

18 © 2005 Progress Software Corporation

Web Service Description Language file (.wsdl) Log file (.log)

Progress 4GL Web Services

ProxyGen Tool

Selecting procedures

AppObj FindEmpByNum.r

ListDeptEmp.r

ProcObj PersistenData.r

19 © 2005 Progress Software Corporation Progress 4GL Web Services

ProxyGen Tool General Tab

Generation Options

AppService Generated Proxy

20 © 2005 Progress Software Corporation Progress 4GL Web Services

ProxyGen Tool Web Services Tab

Generation Options

Namespace URL Session Model Style/Use

21 © 2005 Progress Software Corporation Progress 4GL Web Services

Demonstration

ProxyGen

22 © 2005 Progress Software Corporation Progress 4GL Web Services

Agenda

Progress 4GL Web Services

Getting started

Standards

Web service provider

Deployment

Web service consumer

23 © 2005 Progress Software Corporation Progress 4GL Web Services

HTTP/HTTPS

Communications Protocol

Used to transport SOAP messages

SOAP 1.1 HTTP Binding

Post/Response

HTTPS

SSL

Securely send messages

24 © 2005 Progress Software Corporation

Deployment

Progress 4GL Web Services

JSE Java Servlet Engine

Third party components…

Runs servlets

Progress 4GL Web Services deploys a servlet

JSE’s available from 3 rd party vendors

Examples use Apache Tomcat

Has built in Web Server

Not recommended for production

25 © 2005 Progress Software Corporation

Deployment

Progress 4GL Web Services

Web Server

Third party components…

Required

Accepts HTTP/HTTPS communications

Hosts JSE Deployment

26 © 2005 Progress Software Corporation Progress 4GL Web Services

WSA Web Services Adapter

WSA = Java ™ servlet

Runs in JSE

Administers and provides access to deployed Progress 4GL Web services

Decodes and encodes SOAP messages Deployment

27 © 2005 Progress Software Corporation Progress 4GL Web Services

WSA in JSE on Web Server

HTTP Listener WSA Java Servlet SOAP / HTTP Consumer

28 © 2005 Progress Software Corporation Progress 4GL Web Services

Session Model

Session Managed

State-aware, State-reset, Stateless

Holds resources

Session Free

Does not maintain any state Deployment

29 © 2005 Progress Software Corporation Progress 4GL Web Services

WSAD Web Service Application Descriptor

Deployment

Describes web service to the WSA

Information on how to access AppServer application

30 © 2005 Progress Software Corporation Progress 4GL Web Services

Demonstration

Deployment

31 © 2005 Progress Software Corporation Progress 4GL Web Services

Agenda

Progress 4GL Web Services

Getting started

Standards

Web service provider

Deployment

Web service consumer

32 © 2005 Progress Software Corporation Progress 4GL Web Services

Service Consumer

Calls the web service

Typical Scenarios

Application to Application

 

Business to Business Background

End User

Portions of application available Consumer

33 © 2005 Progress Software Corporation Progress 4GL Web Services

The Client

POST SOAP over HTTP Response SOAP over HTTP Consumer Java™ .NET

Progress Other WSDL

34 © 2005 Progress Software Corporation Progress 4GL Web Services

Putting It All Together

Client (Consumer) HTTP Listener WSA Java Servlet Server (Provider) OpenEdge Application Server

35 © 2005 Progress Software Corporation

POST SOAP over HTTP Response SOAP over HTTP

Progress 4GL Web Services

Demonstration

Calling a Web Service Server (Provider)

36 © 2005 Progress Software Corporation Progress 4GL Web Services

In Summary

Implementing Progress 4GL Web Services

Identify where to use web services solutions

Choose the web service standards and technologies to suit your needs

Use the examples to help in implementing your own web service solutions

37 © 2005 Progress Software Corporation Progress 4GL Web Services

Documentation

OpenEdge Development

Web Services

Progress 4GL Reference

38 © 2005 Progress Software Corporation Progress 4GL Web Services

Questions?

Server Client/ Server OpenEdge Application Server Web Service Clients Client

39 © 2005 Progress Software Corporation Progress 4GL Web Services

Thank you for your time!

40 © 2005 Progress Software Corporation Progress 4GL Web Services

41 © 2005 Progress Software Corporation Progress 4GL Web Services