Title: An Effective Dynamic Invocation System for Web Service
1 An Effective Dynamic
Invocation System for
Web Service
- BAI 2004
- 26 March 2004
- Takashi KOSHIDA
- Matsue National College of Technology
- Nara Institute of Science and Technology
2The content of my presentation
- Introduction
- Some background/Problems
- 2. System model
- About WSIF, an overview of this system
- Implementation
- 3. Experimental Results
- Sample program
- Our system
- 4. Conclusion
31.Introduction
- The B2B system is now widely used.
- But it is limited to regular transactions.
- However, SOAP,UDDI and WSDL has enabled
world-wide dynamic business transactions. But, we
think, not enough. - Because , there are three problems.
- It is difficult
- to discover the Web Service that we want to use?
- to know how to use it?
- and to make a client program for executing a Web
Service.
4- So, in this paper, we focused on the 3rd problem.
- And to solve it, we used WSIF.
-
- 3. and to make a client program for executing a
Web Service.
5The make up of the Web Service
- Web Service is the distributed processing
technology on Web. - XML is used for data exchange.
62. System model
- About WSIF (Web Services Invocation Framework)
- It makes stub-less dynamic invocation possible.
- It requires WSDL description of Web Service.
- But,for execution, it is required to specify
correctly the WSDLs URL, Web Services name,
method name, input-and-output parameter name and
type. - These are complex procedures.
- More easily and automatically!
7An overview of our system
- Automatic parameter setup and execution
- First, the system retrieves and discovers the
WSDLs URL from the UDDI registry. - And downloads and analyzes the WSDL.
- Then, setup the Web Services name, method name
and input-and-output parameter name and type. - Finally,executes a Web Service.
- This system is applied to primitive type data as
an output. - However, it is applicable also to complex
(user-defined) type data now.
8A part of WSDL description
.. ltmessage
name"getRateRequest"gt ltpart
name"country1" type"xsdstring"/gt ltpart
name"country2" type"xsdstring"/gt
lt/messagegt ltmessage name"getRateResponse"gt
ltpart name"Result" type"xsdfloat"/gt
lt/messagegt ltportType name"CurrencyExchangePort
Type"gt ltoperation name"getRate"gt
ltinput message"tnsgetRateRequest" /gt ltoutput
message"tnsgetRateResponse" /gt
lt/operationgt lt/portTypegt
The system compares the name of these portions
and distinguishes the parameter name of an input
and an output.
9Workflow
tModel name, tModelKey, Input parameter value
tModel name, tModelKey and input parameter value
extract
URL of WSDL file
WSDLs URL
retrieval
UDDI Registry
Web Service Server
download
WSDL file
analyze and extract
Web Service name, method name and
input-and-output parameter name and type
setting
Figure 1.
103.Experimental Results
- We used the IBM UDDI registry for testing.
tModelkey
11Result of sample program
The sample program appended to WSIF has the
structure of specifying
D\WSIF\wsif-src-2.0\wsif-2.0\build\samplesgtjava
clients.DynamicInvoker http//services.xmethods.ne
t/soap/urnxmethods-delayed-quotes.wsdl
getQuote IBM Reading WSDL document from
'http//services.xmethods.net/soap/urnxmethods-d
elayed-quotes.wsdl' Executing operation
getQuote Result Result91.01 Done!
Therefore, a user needs to know URL of a WSDL
file, and the method name of Web Service
beforehand.
12On the other hand, our system specifies
Results of our system1
D\WSIF\wsif-src-2.0\wsif-2.0\build\samplesgtjava
IBMFindtModelGetWSDLaWSIF3 StockQuote
UUIDF24269F0-3426-11D8-B936-000629DC0A53
IBM IBM test-UDDI check program.
tModelNameStockQuote tModeleKeyUUID362
EC6E0-BA21-11D5-A5FE-0004AC49CC1E
WSDL---URLhttp//192.168.10.36/StockQuote/StockQu
oteService.wsdl tModelNameStockQuote
tModeleKeyUUID62B655E0-A2C6-11D7-9CD6-000629DC0A
53 WSDL---URLhttp//www.cise.ufl.edu/lnarasim
/Quote.wsdl tModelNameStockQuote
tModeleKeyUUIDF24269F0-3426-11D8-B936-000629DC0A
53 WSDL---URLhttp//services.xmethods.net/soap/u
rnxmethods-delayed-quotes.wsdl Reading WSDL
document from 'http//services.xmethods.net/soap/
urnxmethods-delayed-quotes.wsdl' Return 93.14
13Results of our system2
D\WSIF\wsif-src-2.0\wsif-2.0\build\samplesgtjava
IBMFindtModelGetWSDLaWSIF3 WeatherTemperature
UUID8A0FE2B0-3429-11D8-B936-000629DC0A53 15470
IBM test-UDDI check program.
tModelNameWeatherTemperature
tModeleKeyUUID8A0FE2B0-3429-11D8-B936-000629DC0A
53 WSDL---URLhttp//www.xmethods.net/sd/2001/Te
mperatureService.wsdl Reading WSDL document from
'http//www.xmethods.net/sd/2001/TemperatureServic
e.wsdl' Return 36.0
14Results of our system3
D\WSIF\wsif-src-2.0\wsif-2.0\build\samplesgtjava
IBMFindtModelGetWSDLaWSIF3 CurrencyExchangeRate
UUIDE39408B0-342A-11D8-B936-000629DC0A53 JAPAN
USA IBM test-UDDI check program.
tModelNameCurrencyExchangeRate
tModeleKeyUUIDE39408B0-342A-11D8-B936-000629DC0A
53 WSDL--- URLhttp//www.xmethod
s.net/sd/2001/CurrencyExchangeService.wsdl Reading
WSDL document from 'http//www.xmethods.net/sd/2
001/CurrencyExchangeService.wsdl' Return 107.58
154.Conclusion
- We developed an automatic dynamic invocation
system starting from the UDDI registry. - Feature
- Retrieval of WSDLs URL from the UDDI registry
- Automatic data extraction and setting from the
WSDL description of Web Service - Stub-less execution using WSIF
- Output type is restricted to the primitive data
type. - However, for complex(user-defined) data type, we
already developed as the same system also.
16- The UDDI registry is the core of Web Service
technology. - But in practice, it is difficult to quickly
discover necessary Web Services from the UDDI
registry.
Important !
- We have to enable it to find easily the Web
Service which a user needs.