Cheap N Fast Web Service Sandeep Anantharaman Mahim Lakhani.

Slides:



Advertisements
Similar presentations
Welcome to Middleware Joseph Amrithraj
Advertisements

Apache Struts Technology
4.01 How Web Pages Work.
Languages for Dynamic Web Documents
DT228/3 Web Development Introduction to Java Server Pages (JSP)
Introduction To System Analysis and Design
Server-Side vs. Client-Side Scripting Languages
Liang, Introduction to Java Programming, Seventh Edition, (c) 2009 Pearson Education, Inc. All rights reserved Chapter 42 Web Services.
15 Chapter 15 Web Database Development Database Systems: Design, Implementation, and Management, Fifth Edition, Rob and Coronel.
Slide 1 EE557: Server-Side Development Lecturer: David Molloy Room: XG19 Mondays 10am-1pm Notes:
Layers & Tiers Umair Javed Lec - 41.
TRAVEL RESERVATION SYSTEM USING WEB SERVICES COMPOSITION LANGUAGE
1 CS6320 – Why Servlets? L. Grewe 2 What is a Servlet? Servlets are Java programs that can be run dynamically from a Web Server Servlets are Java programs.
Topics in this presentation: The Web and how it works Difference between Web pages and web sites Web browsers and Web servers HTML purpose and structure.
Introduction 2: Internet, Intranet, and Extranet J394 – Perancangan Situs Web Program Sudi Manajemen Universitas Bina Nusantara.
Application Architectures Vijayan Sugumaran Department of DIS Oakland University.
Based on slides by David Schuff. Review: N-Tier Architectures  A “tier” is a software layer that serves as a component of a larger solution  Here’s.
Session-01. Layers Struts 2 Framework The struts 2 framework is used to develop MVC-based web application. Struts 1.0 was released in June The.
1 Java Server Programming zLecture 1 focuses on: yIntroduction to web services y Web Services using Axis y The bigger Picture: Introduction to J2EE y Java.
Web services A Web service is an interface that describes a collection of operations that are network-accessible through standardized XML messaging. A.
L EC. 01: J AVA FUNDAMENTALS Fall Java Programming.
Quick Tour of the Web Technologies: The BIG picture LECTURE A bird’s eye view of the different web technologies that we shall explore and study.
UNIT-V The MVC architecture and Struts Framework.
Java Server Pages (JSP) Presented by: Ananth Prasad & Alex Ivanov May 10, 2001.
Web server and web browser It’s a take and give policy in between client and server through HTTP(Hyper Text Transport Protocol) Server takes a request.
J2EE Web Fundamentals Lesson 1 Introduction and Overview
CSCI 6962: Server-side Design and Programming Course Introduction and Overview.
Architecture Of ASP.NET. What is ASP?  Server-side scripting technology.  Files containing HTML and scripting code.  Access via HTTP requests.  Scripting.
Samuvel Johnson nd MCA B. Contents  Introduction to Real-time systems  Two main types of system  Testing real-time software  Difficulties.
XForms: A case study Rajiv Shivane & Pavitar Singh.
INDIAN AGRICULTURAL STATISTICS RESEARCH INSTITUTE, NEW DELHI NATIONAL INFORMATION SYSTEM ON LONG TERM FERTILIZER EXPERIMENTS (NISLTFE)
Chapter 16 The World Wide Web Chapter Goals Compare and contrast the Internet and the World Wide Web Describe general Web processing Describe several.
SednaSpace A software development platform for all delivers SOA and BPM.
C Copyright © 2009, Oracle. All rights reserved. Appendix C: Service-Oriented Architectures.
Web application architecture
Movie Manager by Patrick Wesley and Chris Grey Internet Database Project for CS 8630 – Summer 2004 Dr. Guimaraes.
JSP Java Server Pages Softsmith Infotech.
M1G Introduction to Database Development 6. Building Applications.
Lecturer: Prof. Piero Fraternali, Teaching Assistant: Alessandro Bozzon, Advanced Web Technologies: Struts–
LOGO 2 nd Project Design for Library Programs Supervised By Dr: Mohammed Mikii.
AUTOMATION OF WEB-FORM CREATION - KINNERA ANGADI – MS FINAL DEFENSE GUIDANCE BY – DR. DANIEL ANDRESEN.
XML Registries Source: Java TM API for XML Registries Specification.
J2EE Overview Web Programming CSCI J2EE multi-tier architecture Servlet: Java class loaded into Web server JSP page: enhanced HTML page that is.
The Client/Server Database Environment Ployphan Sornsuwit KPRU Ref.
Project Overview Graduate Selection Process Project Goal Automate the Selection Process.
1 Geospatial and Business Intelligence Jean-Sébastien Turcotte Executive VP San Francisco - April 2007 Streamlining web mapping applications.
Java Web Development with NetBeans IDE -- Kai Qian Chapter 5 JavaServer Faces (JSF) Technology.
Chapter 2 An Overview of Servlet and JSP Technology.
B. RAMAMURTHY Developing Applications with SaaS (Software as a Service) 11/4/
240-Current Research Easily Extensible Systems, Octave, Input Formats, SOA.
Model View Controller Architecture of Java Web Applications Dr. M V S Peri Sastry, Ph.D.[BITS-Pilani]
ASP (Active Server Pages) by Bülent & Resul. Presentation Outline Introduction What is an ASP file? How does ASP work? What can ASP do? Differences Between.
Producing a high-impact web experience by integrate Macromedia Flash and ASP By Katie Tuttle CS 330: Internet Architecture and Programming Project.
Java for networking Module Introduction Data Communications Communication architecture Application.
CS562 Advanced Java and Internet Application Introduction to the Computer Warehouse Web Application. Java Server Pages (JSP) Technology. By Team Alpha.
© FPT SOFTWARE – TRAINING MATERIAL – Internal use 04e-BM/NS/HDCV/FSOFT v2/3 JSP Application Models.
1 Copyright © 2004, Oracle. All rights reserved. Oracle Application Development Framework.
REST By: Vishwanath Vineet.
JDBC Chapter 1 JDBC Introduction
JSP / Servlets and Beans
Expense Tracking System Developed by: Ardhita Maharindra Muskan Regmi Nir Gurung Sudeep Karki Tikaprem Gurung Date: December 05 th, 2008.
Service Oriented Architecture CS 507 Term Project Shop in 1 By Swanand A Naravane Pranay Singh 3/17/2016.
Apache Struts Technology A MVC Framework for Java Web Applications.
1 College Automation Software Arifa Tehseen Ara(509) Farzana Begum(512) Syeda Fatima(513) Firdous Sameena(514) Tahmina Jabeen(556)
Web Programming Developing Web Applications including Servlets, and Web Services using NetBeans 6.5 with GlassFish.V3.
Chapter 1 Introduction to Computers, Programs, and Java
Enterprise Application Architecture
Database Driven Websites
Java Server Pages (JSP)
SO-Architectural Roadmap
Presentation transcript:

Cheap N Fast Web Service Sandeep Anantharaman Mahim Lakhani

Introduction Sending home a gift for Christmas? Sending your resume to an employer? You should be really tired of looking up various websites to find the cheapest option. That is why we have come up with this web service called Cheap N Fast. You can check the prices of services offered by all the companies on a single website. Sounds Exciting!! Lets explore it further…

A Deeper Look.. UPS, DHL and USPS Instead of checking each website, compare all the prices on a single website. Get the best deal by choosing the fastest and cheapest option to send your package. Very advantageous to the people who use the internet to check the prices of package delivery services and request for a pick online. First website to offer such a service.

Objectives  Provide data entry facility for inputs to the system.  Fetch the data based on weight and dimensions of the package.  Allow the user to enter the source and destination of the package.  Display the prices of services offered by the three companies on the same page for the given source and destination.  Provide a link to access the selected service directly from the results page.  Display the contents of the webpage in a printable format if required by the user.

Design Features Process Enabled SOA has light weight frontends, which generally should be the case while developing web applications. A simple front end ensures that complexity at front end is minimum, which should be the case for application specific services. A Process Enabled SOA hides business complexities, which is going to be the case with the project since the business complexities are present inside server and handled by the client only by web services. Hence abstraction and encapsulation are also supported to a large extent. Lastly, since the project uses web services from different organizations, using a Process Enabled SOA would ease out the difficulties that might arise due to the integration of independent services on one platform.

Architecture Diagram

The various services provided by the application can be shown in this way. Every process in a layer refers to services in its immediate lower layer, hence doing proper justice with the Process Enabled SOA.

Architectural Model

The Architectural model shows the highest level view of the flow of data. It also shows the interaction with the databases.

SOA Architecture

Figure shows the SOA architecture of the PackageDeliveryService The service runs inside the Java EE 5 container as shown in the above diagram. It serves two clients, the web browser and WSDL/SOAP based consumer The WSDL/SOAP based consumer is some application that interprets the WSDL and communicates using SOAP The PackageDelivery provides SOAP and WSDL web services to handle these consumers and at the same time the PackageDelivery also consumes the web services

Technology Used The entire application is developed using Web Services. The programming language used is JAVA. The J2EE Application Server 9 has been used. The IDE used for the development of the application is NetBeans. WSDLs have been taken from an online resource.

Why this Technology? Java was chosen as the language to develop the application because of its effective class features which makes the implementation effective. Another prime reason for choosing Java is that both the developers are very familiar to this language compared to the other languages. NetBeans was the IDE used to implement the code because of its effective integration of the build tools required and the easy availability of resources to get familiar with the environment.

Implementation Details The project is going to one client known as the project client which would have the implementation of all the web services calls. The client contains the WSDL of all the services in different packages. After all the service WSDLs are added the client is going to compile and generate the class files in the directory build/WEB-INF/classes/ (package structure).

Details Contd… The services are tested individually for each of the companies. As in DHL, UPS and USPS are tested individually. A JSP for each service is used to test the functionality and working of the service. The front end of the application is a java servlet known as ProjectServlet.java. This java servlet would call all the methods that are needed to be called thru the web service in the client application.

Error Handling Error code obtained from the web service shown in case of invalid data. Separate errors shown for all the three web services.

Integration Project Servlet DHL Web Service FedEx Web Service DHL Web Service UPS Web Service Result JSP

Integration Details A few web pages are designed to serve as the front end of the application. The first page contains the input fields with which the user would like to query the service for desired results. The fields will be the source, destination and weight of the package that the user would like to send. Another JSP page will be used to display the results of the query. This will enable the user to compare the prices offered by various services for providing the same service.

Details Contd… The client calls the methods for UPS, USPS and DHL for comparing the prices of shipment based on size, weight, source and destination addresses. The client would then give the comparison of all the prices to the user. This comparison would be shown on the results JSP page.

Problems Encountered javax.xml.ws.soap.SOAPFaultException: BEA : ALSB Validate action failed validation. java.lang.reflect.InvocationTargetException Invalid SSL Handshake Error.

Project Demo Let us watch the project demo now.

References SOA using JAVA Web Services by Mark D. Hansen Enterprise SOA : Service Oriented Architecture Best Practices by Krafzig, Banke and Slama.

References Special thanks to Dr. Bina Ramamurthy for her guidance during the entire course of the project.