250 likes | 475 Views
TRAVEL RESERVATION SYSTEM USING WEB SERVICES COMPOSITION LANGUAGE. Pratik K Kadakia Adviser: Dr. Haiping Xu CIS Department, UMass Dartmouth. Web Service Roles. Service Registry. Find. Publish. Service Consumer. Service Provider. Communicate.
E N D
TRAVEL RESERVATION SYSTEM USING WEB SERVICES COMPOSITION LANGUAGE Pratik K Kadakia Adviser: Dr. Haiping Xu CIS Department, UMass Dartmouth
Web Service Roles Service Registry Find Publish Service Consumer Service Provider Communicate CIS Dept., UMass Dartmouth
The Functions of the Travel Reservation System • Search for Flights by entering source and destination cities. • Search for Hotels by entering city name. • Search for rent-a-car companies. • Allow users to book flight, hotel as well as car. CIS Dept., UMass Dartmouth
Architecture for the Travel Reservation System CIS Dept., UMass Dartmouth
Software Tools • Java Server Pages (JSP – used as the front end) • J2SE v1.5.0_06 SDK (used as a development environment) • Mysql 4.0.21-win. (used as the back end database) • Java Web Services Developer Pack v 1.6 ( used for developing and deploying web services)(jwsdp-1.6) • Tomcat Server tomat50-jwsdp (used as the server and also serves as a container for jwsdp-1.6 ) CIS Dept., UMass Dartmouth
Home Page of Travel Application CIS Dept., UMass Dartmouth
Snapshot - 1 • After login, user can select one of the web services. CIS Dept., UMass Dartmouth
Snapshot - 2 • The WSDL (Web Service Definition Language) of the hotel web service. CIS Dept., UMass Dartmouth
Snapshot - 3 • Web services result is returned to the travel agent. CIS Dept., UMass Dartmouth
Travel Reservation System using Web Service Composition Language Web Services Composition • Is the task of combining and linking existing Web services to create new Web processes. • It adds value to the collection of services, by combining them according to the requirements of the problem. CIS Dept., UMass Dartmouth
Advantages of using Web Services Composition Language • The logic for composition of web services is modularized and is separated from the rest of the application. • This logic can be re-used by different applications. • Any changes to the business logic can be directly made in the module without varying the other parts of the application. CIS Dept., UMass Dartmouth
Examples of Web Service Composition Languages • BPEL BPEL is an XML language that supports process oriented service composition. Developed by BEA, IBM, Microsoft, SAP, and Siebel. • Semantic Web (OWL-S) The Web Ontology Language for Services OWL-S (previously known as DAML-S) is a ontology that enables automatic service discovery, invocation, composition, interoperation, and execution monitoring. CIS Dept., UMass Dartmouth
Business Process Execution Language for Web Services (BPEL4WS) • It stands for Business Process Execution Language for Web Services. • It provides a language for the formal specification of business processes and business interaction protocols. • It enables efficient integration of existing Web Services. CIS Dept., UMass Dartmouth
Some Terminologies in BPEL4WS • In BPEL, participating services are called partners. • Message exchange or intermediate result transformation is called an activity. • The composition result is called a process. • A process consists of a set of activities. CIS Dept., UMass Dartmouth
How to Define a Process To define a process, we use • a BPEL source file (.bpel), which describes activities; • a process interface (.wsdl), which enables a process to interact partner services. • an optional deployment descriptor (.xml), which contains the partner services’ physical locations CIS Dept., UMass Dartmouth
ActiveBPEL 2.0 • The ActiveBPEL engine is an Open Source implementation of a BPEL engine. • It reads BPEL process definitions (and other inputs such as WSDL files) and creates BPEL processes. • The ActiveBPEL engine runs in any standard servlet container such as Tomcat. CIS Dept., UMass Dartmouth
Introduction to ActiveBPEL 2.0 • There are three main areas in the architecture of the ActiveBPEL engine: the engine, processes, and activities. • The ActiveBPEL engine coordinates the execution of one or more BPEL processes. • Processes are in turn made up of activities, which may in turn contain or link to further activities. • The ActiveBPEL engine creates a process from a BPEL process definition (an XML file) and then executes this process CIS Dept., UMass Dartmouth
A Snapshot of the ActiveBPEL • The Active BPEL engine requires an installed and properly configured servlet container like tomcat. CIS Dept., UMass Dartmouth
Architecture for the Travel Reservation System Using BPEL4WS CIS Dept., UMass Dartmouth
An Example BPEL Pseudo Code If (Hotel provides shuttle service to airport) Then Invoke Car Services with criteria to sort results according to cost. Else Invoke Car Service with criteria to sort results according to nearest to airport CIS Dept., UMass Dartmouth
Conclusions • Our approach offers value-added integrated services by combining existing web services. • It supports reuse and extension of existing services. • It is scalable in terms of increasing number of online services. CIS Dept., UMass Dartmouth
Future Work • Show the feasibility of this approach using more complicated case studies. • Model web services composition using formal languages such as Petri nets to support formal verification. • Use agent technique to automate the web services composition process. CIS Dept., UMass Dartmouth
References • http://java.sun.com/webservices/docs/1.6/tutorial/doc/index.html • http://www.activebpel.org/ • Current Solutions for Web Service Composition, by Nikola Milanovic and Miroslaw Malek • Humboldt University, Berlin • http://www.zurich.ibm.com/pdf/ebizz/icaps-ws.pdf CIS Dept., UMass Dartmouth
Thank You QUESTIONS? CIS Dept., UMass Dartmouth