1. Trang chủ
  2. » Công Nghệ Thông Tin

Web Services Tutorial phần 3 pptx

11 298 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 11
Dung lượng 749,72 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

VW Web Services Toolkit• Provides support in – creating XML to object binding from a schema – marshaling/unmarshaling XML types in to Smalltalk object and visa versa – creating classes f

Trang 1

Currently Supported Protocols

Trang 2

VW Web Services Toolkit

Provides support in

creating XML to object binding from a schema

marshaling/unmarshaling XML types in to Smalltalk object and visa versa

creating classes from XML to object binding

building and deploying Web services from an existing

application

creating classes from a WSDL schema and accessing Web

services

searching and publishing Web services in UDDI registry

Trang 3

Web Services Invocation

Trang 4

Loading WSDL Schema

– loads and register a WSDL schema

– creates Wsdl configuration

– serves as a repository of WSDL schemas

WsdlBinding

loadWsdlBindingFrom: self wsdlSpecification readStream

Trang 5

How to access Web Services

– quick and easy way to invoke a service

– doesn’t create any classes

– create client classes to invoke a service

– can create Opentalk server and client and service

classes

– GUI tool available in vw 73

Trang 6

• Creates default binding to dictionaries

client := WsdlClient

url: ‘http://www.xmethods.net/sd/2001/CurrencyExchangeService.wsdl' rate := client

executeSelector: #getRate

Trang 7

WsdlClassBuilder

• Creates XML to object binding and classes from it

• Creates client, server and service classes

builder := WsdlClassBuilder readFrom:

'http://www.xmethods.net/sd/2001/CurrencyExchangeService.wsdl' asURI.

builder package: 'CurrencyExchange'

Trang 8

Creating WSDL Client Class

clientClass := builder createClientClasses first.

- derived from WsdlClient

- created for each WSDL port

Smalltalk defineClass: #CurrencyExchangePortClient

superclass: #{WebServices.WsdlClient}

#getRateCountry1: aString country2: aString1

#initialize

super initialize.

self setPortNamed: 'CurrencyExchangePort'.

#class wsdlSchema

WSDL schema with XML to object binding Port is registered in WsdlPort.PortRegistry

Trang 9

Testing WSDL Client

client := clientClass new.

client createScript inspect.

rate := client

getRateCountry1: ‘usa’

country2: ‘canada’

Trang 10

Creating Service Class Stub

serviceClass := builder createServiceClasses first

Smalltalk defineClass: #CurrencyExchangeBinding

superclass: #{Core.Object}

getRateCountry1: aString country2: aString1

<operationName: #getRate >

<addParameter: #country1 type: #String >

<addParameter: #country2 type: #String >

<result: #Float >

^self "Add implementation here"

Trang 11

Creating Opentalk Client

clientClass := builder createOpentalkClientClasses first

Smalltalk defineClass: #OpentalkClientCurrencyExchangePort

superclass: #{Core.Object}

instanceVariableNames: 'client proxy ‘

#getRateCountry1: aString country2: aString1

^proxy getRateCountry1: aString country2: aString1

#serverUrl

^'http://services.xmethods.net:80/soap‘

#class wsdlSchema

"(WebServices.WsdlBinding

loadWsdlBindingFrom: self wsdlSchema readStream.)"

.

Request Broker Remote Object

WSDL schema with XML

to Object Binding

Ngày đăng: 14/08/2014, 19:20