Distributed Systems Project 2 Assigned: Tuesday, May 31, 2011 Due: Monday, June 13, 11:59:59 PM

Size: px
Start display at page:

Download "Distributed Systems Project 2 Assigned: Tuesday, May 31, 2011 Due: Monday, June 13, 11:59:59 PM"

Transcription

1 Distributed Systems Project 2 Assigned: Tuesday, May 31, 2011 Due: Monday, June 13, 11:59:59 PM Objectives: First, the student is introduced to TCP sockets, protocol layering, state maintenance, and finite state machines. Second, the student is asked to build a web application that executes a protocol that maintains state for multiple users. Third, the student is introduced to Web Services. Web Services provide a callable interface for applications running on distributed systems. The objective is to give students hands-on experience with both SOAP based web services and REST based web services. The objective of the fourth task is to show another way to maintain state with a RESTFul approach. And finally, as in all projects this semester, this project requires you to answer a series of reflective questions concerning the solutions you have built. Your answers should clearly and accurately address the non-functional characteristics of your solution, demonstrating a nuanced comprehension of course content and explaining the technical aspects in relation to potential real-world applications. You will be asked to reflect and comment on several important characteristics of distributed systems. For this project, the non-functional characteristics that must be considered include message formatting (REST and SOAP), protocol layering and modeling, performance, reliability and interoperability. The reflection questions will be sent to you later this week. For each project task, software documentation is required. The software that you write (HTML files, Java files and so on) must contain comments that describe what each significant piece of code is intended to accomplish. Points will be deducted if code is not well documented. The graders will be asked to follow the rubric found on the course schedule. 1

2 Task 1 Protocol layering and state maintenance are central issues in the study of distributed systems. In project 2, your first task is to experiment with the Knock Knock Joke protocol using Transmission Control Protocol (TCP) sockets and a finite state machine that maintains state. On the course schedule are three Java classes that make up a small client server system. You should study each of these classes and get them running. The client project will be named KnockKnockSocketClientProject and the server will be named KnockKnockSocketServerProject. The KnockKnockProtocol.java file will reside in the server project and is best viewed as a finite state machine. Your task will be to modify the KnockKnockProtocol.java file so that it tracks a simple restaurant protocol rather than a knock knock joke protocol. You should begin by running the knock knock example and studying the knock knock protocol code. You should then draw a finite state machine that models the protocol. Make the necessary changes to the KnockKnockProtocol class so that it implements a simple restaurant protocol. Draw the restaurant protocol with a finite state machine before making modifications to the knock knock protocol class. Here is an example execution of the restaurant protocol: 1) Run RestaurantServer.java Running 2) Run RestaurantClient.java Server: Would you like a menu! What? Client: What? Server: You're supposed to say Yes or No! Try again. Would you like a menu? Yes Client: Yes Server: The menu is steak ($12.43) or pasta ($8.87). Which do you prefer? Donuts Client: Donuts This is from the server once communication is established. This is from the user typing. The client echoes the input. 2

3 Server: You're supposed to say steak or pasta. Which do you prefer? Steak Client: Steak Server: Cake ($1.45) or Ice Cream ($2.0) for desert? Snow cone Client: Snow cone Server: Please choose cake or ice cream Cake Client: Cake Server: Here is your desert and your check. Please pay $13.88 and come again! <return entered by client> Client: Server: Would you like a menu! Yes Client: Yes Server: The menu is steak ($12.43) or pasta ($8.87). Which do you prefer? pasta Client: pasta Server: Cake ($1.45) or Ice Cream ($2.0) for desert? Ice cream Client: Ice cream Server: Here is your desert and your check. Please pay $10.87 and come again! <return> Client: Server: Would you like a menu! No Client: No Server: Bye. 3

4 Each new visitor to the restaurant will have a total price beginning with $0.0. Note that, under this implementation, only one visitor may visit the restaurant at a time. Be sure to include detailed comments in your protocol handling code that convinces the reader that you understand how the finite machine works. Note that no changes need to be made to the client and server only the protocol handler. This exemplifies the important system design principle of separation of concerns. Submit working client and server projects as described below. Task 2 Build a web application project named RestaurantWebAppProject using NetBeans. This web application will contain the files RestaurantServlet.java, RestaurantProtocol.java. The servlet will be accessed by a browser using the URL: port>/restaurantwebappproject/restaurantservlet The RestaurantProtocol.java file will be the exact same file as the one that you built in Task 1. On the initial visit, the servlet will create a new RestaurantProtocol object and add it to an HTTPSession object. See the course slides for an HTTPSession example. The first response will automatically return a session cookie to the browser. You should ensure that this is the case by viewing cookies in your browser. You do not need to create the cookies in your code. Glassfish will generate cookies for you when it sees that you are using HTTPSessions. Experiment and try creating new sessions by clearing old cookies. The HTTPSession object will associate a particular RestaurantProtocol object with a particular cookie. Our restaurant may now have simultaneous visitors each with their own protocol state. The servlet will first respond with the prompt "Would you like a menu?" followed by a text box. The prompt "Would you like a menu?", being sent to the browser, must be retrieved by the servlet from the RestaurantProtocol object associated with this session. When the user responds to the initial Would you like a menu? request, the same servlet is executed again. The RestaurantProtocol object associated with this user session is accessed from the HTTPSession object. This approach allows us to have several visitors at the same time. There will be a separate RestaurantProtocol object for each user. Each of these will track the state of the protocol. 4

5 Error messages will be displayed on the browser as they are generated by the protocol handler. You should experiment with more than one browser using the application at the same time. You will need either two browsers (IE and Firefox for example) or you may wish to visit the web application from a separate machine. In the latter case, you need to be connected to the internet and replace the string 'localhost' with the IP address of the web server. Task 3 The traditional web has had a huge impact on society. It is interoperable, allowing diverse systems to interact. It may be secured with protocols such as SSL. It supports concurrency and has been able to scale. With the advent of Web Service not to be confused with Web Applications, it has shown itself to be extensible. In Task 2 we worked with a web application using HTTP over TCP over IP. In this task we will work with SOAP over HTTP over TCP over IP. Again, we will allow our users to visit our restaurant. In preparation, here is a short tutorial on how we might build a simple web service using Netbeans 6.X.X and Glassfish. The resulting web service uses SOAP and WSDL. 1) File/New Project/Java Web/Web Application/PrjName/Location/ Glassfish V2/Finish 2) Right Click Project Node/New/Web Service/WSName/PkgName/Finish 3) Design/Add Operation/Provide method name, parameter names and types 4) Source/Complete details of method. 5) Right click Project Node/Deploy 6) Expand Web Services node/right Click Service name/test Web Service 7) Use the browser to test and examine input and output messages. 8) View WSDL and copy the WSDL URL to the clipboard. At this point, we can write a web service client. The client might be a stand alone application or a servlet. Here we will write a simple stand alone application. 1) File/New Project/Java/Java Application/PrjName/location/Finish 2) Right click project/new Web Service Client/WSDL URL/paste from clipboard 3) Note the Web Service Reference node in project tree. 5

6 4) Expand Web Service Reference down to desired method. 5) Drag and drop into appropriate source location. On the course schedule, there is a video by Arun Gupta showing this process. His application uses a database and Java's Persistence API. But most of the steps are the same. You might note that in Gupta's video he stops just short of writing a client. He simply tests the service with a tester web application. But since the WSDL is available, he could write a client in the language and platform of his choice. Create a new project named RestaurantWebServiceProject. Within this project create a web service named RestaurantWebService. Write a web service method with the signature: public synchronized String visit(string fromclient, String userid) We may have many simultaneous users visiting. The visit method is marked as synchronized so that only one thread may execute the code at a time. The first parameter will represent the text input from the visitor. A typical input would be "Steak". The second parameter represents the visitor s identification. This will be passed on each call on the visit method. This allows the visit method to track each visitor's progress through the restaurant protocol. In the web application (Task 2), we used cookies to do the same thing. You may assume that each call contains a unique identifier describing the caller. Perhaps this is a screen name or a log in ID. The response from the visit method is a string that represents the protocol handler's response. A typical response would be Cake ($1.45) or Ice Cream ($2.0) for desert?. Behind the scenes, the web service framework will place Cake ($1.45) or Ice Cream ($2.0) for desert? into an XML document (with tags from the SOAP standard) and this document will be placed after the headers in an HTTP response message. This HTTP response message will be written to a TCP socket. The reader is invited to describe a call to the visit method in the same manner as done here with the visit method s response. The visit method makes use of the java.util.treemap class. A TreeMap object holds a set of name value pairs. The name is the userid and the value is the protocol handler associated with the userid. In this way, the service can track simultaneous users. Write a console application in Java that allows users to visit the web service that you developed. This class will have a main routine and will be called RestaurantWebServiceClient. It will live in a project called RestaurantWebServiceClientProject. The console application (not the web service) will be executed with the command 6

7 "java RestaurantWebServiceClient userid". The execution will proceed in the same way as the original socket based solution. In order to establish a command line parameter using Netbeans, right click the project node and select properties. Select run and enter the command line arguments. This is how you can get the userid into your program. Test your solution by running more than one console at a time. Of course, each console application needs to run with its own userid. Task 4 In class, we discussed REpresentational State Transfer (REST). In this task you will rewrite the web application of Task 2 so that it uses a REST architectural style. The interaction will be the same as in Task 2. However, in REST, the application state is maintained by hypermedia. You will not make use of the code that implements the finite state machine. Instead, each state of the finite state machine will be implemented as a resource. When data from a resource (state) is extracted it will include the URI of the next appropriate state. This is the first time that this task has been assigned so it is somewhat experimental. Here are some instructions in building a REST based service: 1) New Project/Java Web/Web Application/Project name 2) Right click Project/New/Other/Web Service/RESTful Web Service from Patterns 3) Choose Simple Root Resource/Enter a package name/path and Class Name 4) In the Rest Resource Configuration wizard, choose Create Default Jersey REST servlet adapter in web.xml (due to a known bug in NB 7). 5) Change MIME TYPE to text/plain and choose defaults. 6) Edit the gettext method so that it reads 7

8 public String gettext() { return "Hello REST"; } 7) Perform a clean and build and deploy. Right click the project node and select Test Restful Web Service. Summary: Copy all your NetBeans task folders for this project and your screenshots into a folder named with your andrew id. Zip that folder, and submit it to Blackboard. The projects will be named as follows: Task 1 RestaurantSocketClientProject Holding one client source file RestaurantSocketServerProject Task 2 Holding the server code and the protocol handler RestaurantWebAppProject Task 3 Holding one servlet and the protocol handler RestaurantWebServiceProject Holding the service and the protocol handler RestaurantWebServiceClientProject Task 4 Holding only one console client RestaurantWebAppWithRESTProject 8

Session 12. RESTful Services. Lecture Objectives

Session 12. RESTful Services. Lecture Objectives Session 12 RESTful Services 1 Lecture Objectives Understand the fundamental concepts of Web services Become familiar with JAX-RS annotations Be able to build a simple Web service 2 10/21/2018 1 Reading

More information

WA2018 Programming REST Web Services with JAX-RS WebLogic 12c / Eclipse. Student Labs. Web Age Solutions Inc.

WA2018 Programming REST Web Services with JAX-RS WebLogic 12c / Eclipse. Student Labs. Web Age Solutions Inc. WA2018 Programming REST Web Services with JAX-RS 1.1 - WebLogic 12c / Eclipse Student Labs Web Age Solutions Inc. Copyright 2012 Web Age Solutions Inc. 1 Table of Contents Lab 1 - Configure the Development

More information

IT6503 WEB PROGRAMMING. Unit-I

IT6503 WEB PROGRAMMING. Unit-I Department of Information Technology Question Bank- Odd Semester 2015-2016 IT6503 WEB PROGRAMMING Unit-I SCRIPTING 1. What is HTML? Write the format of HTML program. 2. Differentiate HTML and XHTML. 3.

More information

Web Services Chapter 9 of Coulouris

Web Services Chapter 9 of Coulouris Web Services Chapter 9 of Coulouris 1! Web Services One of the dominant paradigms for programming distributed systems. Enables business to business integration. (Suppose one organization uses CORBA and

More information

Distributed Systems Project 4 Assigned: Friday March 20 Due: Friday April 3, 11:59pm

Distributed Systems Project 4 Assigned: Friday March 20 Due: Friday April 3, 11:59pm 95-702 Distributed Systems Project 4 Assigned: Friday March 20 Due: Friday April 3, 11:59pm Project Topics: Java RMI and a distributed, Mobile to Cloud application This project has 2 tasks. Task 1 is a

More information

Distributed Systems Project 1 Assigned: Friday, January 26, 2018 Due: Friday, February 9, 11:59 PM

Distributed Systems Project 1 Assigned: Friday, January 26, 2018 Due: Friday, February 9, 11:59 PM 95-702 Distributed Systems Project 1 Assigned: Friday, January 26, 2018 Due: Friday, February 9, 11:59 PM This project has five objectives: First, you are introduced to GlassFish. GlassFish is an open

More information

Module 3 Web Component

Module 3 Web Component Module 3 Component Model Objectives Describe the role of web components in a Java EE application Define the HTTP request-response model Compare Java servlets and JSP components Describe the basic session

More information

Enhydra 6.2 Application Architecture. Tanja Jovanovic

Enhydra 6.2 Application Architecture. Tanja Jovanovic Enhydra 6.2 Application Architecture Tanja Jovanovic Table of Contents 1.Introduction...1 2. The Application Object... 2 3. The Presentation Object... 4 4. Writing Presentation Objects with XMLC... 6 5.

More information

Session 8. Reading and Reference. en.wikipedia.org/wiki/list_of_http_headers. en.wikipedia.org/wiki/http_status_codes

Session 8. Reading and Reference. en.wikipedia.org/wiki/list_of_http_headers. en.wikipedia.org/wiki/http_status_codes Session 8 Deployment Descriptor 1 Reading Reading and Reference en.wikipedia.org/wiki/http Reference http headers en.wikipedia.org/wiki/list_of_http_headers http status codes en.wikipedia.org/wiki/_status_codes

More information

J2EE Development. Course Detail: Audience. Duration. Course Abstract. Course Objectives. Course Topics. Class Format.

J2EE Development. Course Detail: Audience. Duration. Course Abstract. Course Objectives. Course Topics. Class Format. J2EE Development Detail: Audience www.peaksolutions.com/ittraining Java developers, web page designers and other professionals that will be designing, developing and implementing web applications using

More information

How to Install (then Test) the NetBeans Bundle

How to Install (then Test) the NetBeans Bundle How to Install (then Test) the NetBeans Bundle Contents 1. OVERVIEW... 1 2. CHECK WHAT VERSION OF JAVA YOU HAVE... 2 3. INSTALL/UPDATE YOUR JAVA COMPILER... 2 4. INSTALL NETBEANS BUNDLE... 3 5. CREATE

More information

COWLEY COLLEGE & Area Vocational Technical School

COWLEY COLLEGE & Area Vocational Technical School COWLEY COLLEGE & Area Vocational Technical School COURSE PROCEDURE FOR ADVANCED JAVA PROGRAMMING CIS1870 3 Credit Hours Student Level: This course is open to students on the college level in either freshman

More information

Distributed Multitiered Application

Distributed Multitiered Application Distributed Multitiered Application Java EE platform uses a distributed multitiered application model for enterprise applications. Logic is divided into components https://docs.oracle.com/javaee/7/tutorial/overview004.htm

More information

JBoss SOAP Web Services User Guide. Version: M5

JBoss SOAP Web Services User Guide. Version: M5 JBoss SOAP Web Services User Guide Version: 3.3.0.M5 1. JBoss SOAP Web Services Runtime and Tools support Overview... 1 1.1. Key Features of JBossWS... 1 2. Creating a Simple Web Service... 3 2.1. Generation...

More information

Java- EE Web Application Development with Enterprise JavaBeans and Web Services

Java- EE Web Application Development with Enterprise JavaBeans and Web Services Java- EE Web Application Development with Enterprise JavaBeans and Web Services Duration:60 HOURS Price: INR 8000 SAVE NOW! INR 7000 until December 1, 2011 Students Will Learn How to write Session, Message-Driven

More information

ive JAVA EE C u r r i c u l u m

ive JAVA EE C u r r i c u l u m C u r r i c u l u m ive chnoworld Development Training Consultancy Collection Framework - The Collection Interface(List,Set,Sorted Set). - The Collection Classes. (ArrayList,Linked List,HashSet,TreeSet)

More information

Session 9. Deployment Descriptor Http. Reading and Reference. en.wikipedia.org/wiki/http. en.wikipedia.org/wiki/list_of_http_headers

Session 9. Deployment Descriptor Http. Reading and Reference. en.wikipedia.org/wiki/http. en.wikipedia.org/wiki/list_of_http_headers Session 9 Deployment Descriptor Http 1 Reading Reading and Reference en.wikipedia.org/wiki/http Reference http headers en.wikipedia.org/wiki/list_of_http_headers http status codes en.wikipedia.org/wiki/http_status_codes

More information

Chapter 2 Introduction

Chapter 2 Introduction Chapter 2 Introduction PegaRULES Process Commander applications are designed to complement other systems and technologies that you already have in place for doing work. The Process Commander integration

More information

Web Application Architecture (based J2EE 1.4 Tutorial)

Web Application Architecture (based J2EE 1.4 Tutorial) Web Application Architecture (based J2EE 1.4 Tutorial) Dr. Kanda Runapongsa (krunapon@kku.ac.th) Department of Computer Engineering Khon Kaen University 1 Agenda Web application, components and container

More information

This course is intended for Java programmers who wish to write programs using many of the advanced Java features.

This course is intended for Java programmers who wish to write programs using many of the advanced Java features. COURSE DESCRIPTION: Advanced Java is a comprehensive study of many advanced Java topics. These include assertions, collection classes, searching and sorting, regular expressions, logging, bit manipulation,

More information

Middleware and Web Services Lecture 3: Application Server

Middleware and Web Services Lecture 3: Application Server Middleware and Web Services Lecture : Application Server doc. Ing. Tomáš Vitvar, Ph.D. tomas@vitvar.com @TomasVitvar http://vitvar.com Czech Technical University in Prague Faculty of Information Technologies

More information

Aim behind client server architecture Characteristics of client and server Types of architectures

Aim behind client server architecture Characteristics of client and server Types of architectures QA Automation - API Automation - All in one course Course Summary: In detailed, easy, step by step, real time, practical and well organized Course Not required to have any prior programming knowledge,

More information

Using SOAP and Web Services with Caché

Using SOAP and Web Services with Caché Using SOAP and Web Services with Caché Version 5.0.12 16 November 2004 InterSystems Corporation 1 Memorial Drive Cambridge MA 02142 www.intersystems.com Using SOAP and Web Services with Caché Caché Version

More information

GeneSys. Unit Four: Generating Reports. genesysonline.net. psytech.com

GeneSys. Unit Four: Generating Reports. genesysonline.net. psytech.com GeneSys Unit Four: Generating Reports genesysonline.net Unit Four: Objectives Generate Reports From Respondent Results Minimum Requirements for Reporting Credits Report Sets Generating Reports for Individual

More information

RQs + PEs: More Servlets

RQs + PEs: More Servlets RQs + PEs: More Servlets Advanced Topics in Java Khalid Azim Mughal khalid@ii.uib.no http://www.ii.uib.no/~khalid/atij/ Version date: 2006-09-04 ATIJ 1/7 REVIEW QUESTIONS - More Servlets 1. Explain the

More information

Scheduling WebEx Meetings with Microsoft Outlook

Scheduling WebEx Meetings with Microsoft Outlook Scheduling WebEx Meetings with Microsoft Outlook About WebEx Integration to Outlook, page 1 Scheduling a WebEx Meeting from Microsoft Outlook, page 2 Starting a Scheduled Meeting from Microsoft Outlook,

More information

CS506 Web Design & Development Final Term Solved MCQs with Reference

CS506 Web Design & Development Final Term Solved MCQs with Reference with Reference I am student in MCS (Virtual University of Pakistan). All the MCQs are solved by me. I followed the Moaaz pattern in Writing and Layout this document. Because many students are familiar

More information

Error Sending Dav Request. Http Code 400 Status 'bad Request'

Error Sending Dav Request. Http Code 400 Status 'bad Request' Error Sending Dav Request. Http Code 400 Status 'bad Request' HTTP status code 100 means that the server has received the request headers, If the request body is large, sending it to a server when a request

More information

Introduction to JSP and Servlets Training 5-days

Introduction to JSP and Servlets Training 5-days QWERTYUIOP{ Introduction to JSP and Servlets Training 5-days Introduction to JSP and Servlets training course develops skills in JavaServer Pages, or JSP, which is the standard means of authoring dynamic

More information

Project Title REPRESENTATION OF ELECTRICAL NETWORK USING GOOGLE MAP API. Submitted by: Submitted to: SEMANTA RAJ NEUPANE, Research Assistant,

Project Title REPRESENTATION OF ELECTRICAL NETWORK USING GOOGLE MAP API. Submitted by: Submitted to: SEMANTA RAJ NEUPANE, Research Assistant, - 1 - Project Title REPRESENTATION OF ELECTRICAL NETWORK USING GOOGLE MAP API Submitted by: SEMANTA RAJ NEUPANE, Research Assistant, Department of Electrical Energy Engineering, Tampere University of Technology

More information

SECTION II: JAVA SERVLETS

SECTION II: JAVA SERVLETS Chapter 7 SECTION II: JAVA SERVLETS Working With Servlets Working with Servlets is an important step in the process of application development and delivery through the Internet. A Servlet as explained

More information

SERVLETS INTERVIEW QUESTIONS

SERVLETS INTERVIEW QUESTIONS SERVLETS INTERVIEW QUESTIONS http://www.tutorialspoint.com/servlets/servlets_interview_questions.htm Copyright tutorialspoint.com Dear readers, these Servlets Interview Questions have been designed especially

More information

HttpServlet ( Class ) -- we will extend this class to handle GET / PUT HTTP requests

HttpServlet ( Class ) -- we will extend this class to handle GET / PUT HTTP requests What is the servlet? Servlet is a script, which resides and executes on server side, to create dynamic HTML. In servlet programming we will use java language. A servlet can handle multiple requests concurrently.

More information

JAVA COURSES. Empowering Innovation. DN InfoTech Pvt. Ltd. H-151, Sector 63, Noida, UP

JAVA COURSES. Empowering Innovation. DN InfoTech Pvt. Ltd. H-151, Sector 63, Noida, UP 2013 Empowering Innovation DN InfoTech Pvt. Ltd. H-151, Sector 63, Noida, UP contact@dninfotech.com www.dninfotech.com 1 JAVA 500: Core JAVA Java Programming Overview Applications Compiler Class Libraries

More information

BSc. (Hons) Web Technologies. Examinations for 2017 / Semester 1

BSc. (Hons) Web Technologies. Examinations for 2017 / Semester 1 BSc. (Hons) Web Technologies Cohort: BWT/17A/FT Examinations for 2017 / Semester 1 MODULE: NETWORK ESSENTIALS MODULE CODE: CAN 1104C Duration: 2 ½ hours Instructions to Candidates: 1. Answer ALL 4 (four)

More information

Writing Servlets and JSPs p. 1 Writing a Servlet p. 1 Writing a JSP p. 7 Compiling a Servlet p. 10 Packaging Servlets and JSPs p.

Writing Servlets and JSPs p. 1 Writing a Servlet p. 1 Writing a JSP p. 7 Compiling a Servlet p. 10 Packaging Servlets and JSPs p. Preface p. xiii Writing Servlets and JSPs p. 1 Writing a Servlet p. 1 Writing a JSP p. 7 Compiling a Servlet p. 10 Packaging Servlets and JSPs p. 11 Creating the Deployment Descriptor p. 14 Deploying Servlets

More information

Shankersinh Vaghela Bapu Institue of Technology

Shankersinh Vaghela Bapu Institue of Technology Branch: - 6th Sem IT Year/Sem : - 3rd /2014 Subject & Subject Code : Faculty Name : - Nitin Padariya Pre Upload Date: 31/12/2013 Submission Date: 9/1/2014 [1] Explain the need of web server and web browser

More information

How to Publish Any NetBeans Web App

How to Publish Any NetBeans Web App How to Publish Any NetBeans Web App (apps with Java Classes and/or database access) 1. OVERVIEW... 2 2. LOCATE YOUR NETBEANS PROJECT LOCALLY... 2 3. CONNECT TO CIS-LINUX2 USING SECURE FILE TRANSFER CLIENT

More information

Oracle 10g: Build J2EE Applications

Oracle 10g: Build J2EE Applications Oracle University Contact Us: (09) 5494 1551 Oracle 10g: Build J2EE Applications Duration: 5 Days What you will learn Leading companies are tackling the complexity of their application and IT environments

More information

CSC 8205 Advanced Java

CSC 8205 Advanced Java Please read this first: 1) All the assignments must be submitted via blackboard account. 2) All the assignments for this course are posted below. The due dates for each assignment are announced on blackboard.

More information

Servlet Fudamentals. Celsina Bignoli

Servlet Fudamentals. Celsina Bignoli Servlet Fudamentals Celsina Bignoli bignolic@smccd.net What can you build with Servlets? Search Engines E-Commerce Applications Shopping Carts Product Catalogs Intranet Applications Groupware Applications:

More information

Web-APIs. Examples Consumer Technology Cross-Domain communication Provider Technology

Web-APIs. Examples Consumer Technology Cross-Domain communication Provider Technology Web-APIs Examples Consumer Technology Cross-Domain communication Provider Technology Applications Blogs and feeds OpenStreetMap Amazon, Ebay, Oxygen, Magento Flickr, YouTube 3 more on next pages http://en.wikipedia.org/wiki/examples_of_representational_state_transfer

More information

Life Without NetBeans

Life Without NetBeans Life Without NetBeans Part C Web Applications Background What is a WAR? A Java web application consists a collection of Java servlets and regular classes, JSP files, HTML files, JavaScript files, images,

More information

Java.. servlets and. murach's TRAINING & REFERENCE 2ND EDITION. Joel Murach Andrea Steelman. IlB MIKE MURACH & ASSOCIATES, INC.

Java.. servlets and. murach's TRAINING & REFERENCE 2ND EDITION. Joel Murach Andrea Steelman. IlB MIKE MURACH & ASSOCIATES, INC. TRAINING & REFERENCE murach's Java.. servlets and 2ND EDITION Joel Murach Andrea Steelman IlB MIKE MURACH & ASSOCIATES, INC. P 1-800-221-5528 (559) 440-9071 Fax: (559) 440-0963 murachbooks@murach.com www.murach.com

More information

RESTful -Webservices

RESTful -Webservices International Journal of Scientific Research in Computer Science, Engineering and Information Technology RESTful -Webservices Lalit Kumar 1, Dr. R. Chinnaiyan 2 2018 IJSRCSEIT Volume 3 Issue 4 ISSN : 2456-3307

More information

FAU. How do I. Post course content? Folders

FAU. How do I. Post course content? Folders How do I Post course content? Content is made up of folders, files, links, and assessments (this will be covered on page ## or see separate documentation). It is basically anything you want to share with

More information

Real-Time Dashboard Integration Bomgar Remote Support

Real-Time Dashboard Integration Bomgar Remote Support Real-Time Dashboard Integration Bomgar Remote Support 2017 Bomgar Corporation. All rights reserved worldwide. BOMGAR and the BOMGAR logo are trademarks of Bomgar Corporation; other trademarks shown are

More information

CSE 336. Introduction to Programming. for Electronic Commerce. Why You Need CSE336

CSE 336. Introduction to Programming. for Electronic Commerce. Why You Need CSE336 CSE 336 Introduction to Programming for Electronic Commerce Why You Need CSE336 Concepts like bits and bytes, domain names, ISPs, IPAs, RPCs, P2P protocols, infinite loops, and cloud computing are strictly

More information

02267: Software Development of Web Services

02267: Software Development of Web Services 02267: Software Development of Web Services Week 1 Hubert Baumeister huba@dtu.dk Department of Applied Mathematics and Computer Science Technical University of Denmark Fall 2013 Contents Course Introduction

More information

Uniform Resource Locators (URL)

Uniform Resource Locators (URL) The World Wide Web Web Web site consists of simply of pages of text and images A web pages are render by a web browser Retrieving a webpage online: Client open a web browser on the local machine The web

More information

Scheduling WebEx Meetings with Microsoft Outlook

Scheduling WebEx Meetings with Microsoft Outlook Scheduling WebEx Meetings with Microsoft Outlook About WebEx Integration to Outlook, page 1 Scheduling a WebEx Meeting from Microsoft Outlook, page 2 Starting a Scheduled Meeting from Microsoft Outlook,

More information

WWW, REST, and Web Services

WWW, REST, and Web Services WWW, REST, and Web Services Instructor: Yongjie Zheng Aprile 18, 2017 CS 5553: Software Architecture and Design World Wide Web (WWW) What is the Web? What challenges does the Web have to address? 2 What

More information

CHAPTER 7 WEB SERVERS AND WEB BROWSERS

CHAPTER 7 WEB SERVERS AND WEB BROWSERS CHAPTER 7 WEB SERVERS AND WEB BROWSERS Browser INTRODUCTION A web browser is a software application for retrieving, presenting, and traversing information resources on the World Wide Web. An information

More information

Scheduling WebEx Meetings with Microsoft Outlook

Scheduling WebEx Meetings with Microsoft Outlook Scheduling WebEx Meetings with Microsoft Outlook About WebEx Integration to Outlook, on page 1 Scheduling a WebEx Meeting from Microsoft Outlook, on page 2 Starting a Scheduled Meeting from Microsoft Outlook,

More information

HTML5 - INTERVIEW QUESTIONS

HTML5 - INTERVIEW QUESTIONS HTML5 - INTERVIEW QUESTIONS http://www.tutorialspoint.com/html5/html5_interview_questions.htm Copyright tutorialspoint.com Dear readers, these HTML5 Interview Questions have been designed specially to

More information

At the Forge Dojo Events and Ajax Reuven M. Lerner Abstract The quality of your Dojo depends upon your connections. Last month, we began looking at Dojo, one of the most popular open-source JavaScript

More information

KINGS COLLEGE OF ENGINEERING 1

KINGS COLLEGE OF ENGINEERING 1 KINGS COLLEGE OF ENGINEERING Department of Computer Science & Engineering Academic Year 2011 2012(Odd Semester) QUESTION BANK Subject Code/Name: CS1401-Internet Computing Year/Sem : IV / VII UNIT I FUNDAMENTALS

More information

STARCOUNTER. Technical Overview

STARCOUNTER. Technical Overview STARCOUNTER Technical Overview Summary 3 Introduction 4 Scope 5 Audience 5 Prerequisite Knowledge 5 Virtual Machine Database Management System 6 Weaver 7 Shared Memory 8 Atomicity 8 Consistency 9 Isolation

More information

CO Java EE 7: Back-End Server Application Development

CO Java EE 7: Back-End Server Application Development CO-85116 Java EE 7: Back-End Server Application Development Summary Duration 5 Days Audience Application Developers, Developers, J2EE Developers, Java Developers and System Integrators Level Professional

More information

Advanced Java Programming

Advanced Java Programming Advanced Java Programming Length: 4 days Description: This course presents several advanced topics of the Java programming language, including Servlets, Object Serialization and Enterprise JavaBeans. In

More information

Xml Schema Binding Support Is Not Installed >>>CLICK HERE<<<

Xml Schema Binding Support Is Not Installed >>>CLICK HERE<<< Xml Schema Binding Support Is Not Installed Hi, I recently installed pyxb for generating an XML (that conforms to an XSD) using python bindings (created from the XSD). I've followed. First I describe a

More information

Scheduling WebEx Meetings with Microsoft Outlook

Scheduling WebEx Meetings with Microsoft Outlook Scheduling WebEx Meetings with Microsoft Outlook About WebEx Integration to Outlook, page 1 Scheduling a WebEx Meeting from Microsoft Outlook, page 2 Starting a Scheduled Meeting from Microsoft Outlook,

More information

Manipulating Web Application Interfaces a New Approach to Input Validation Testing. AppSec DC Nov 13, The OWASP Foundation

Manipulating Web Application Interfaces a New Approach to Input Validation Testing. AppSec DC Nov 13, The OWASP Foundation Manipulating Web Application Interfaces a New Approach to Input Validation Testing Felipe Moreno-Strauch AppSec DC Nov 13, 2009 felipe@wobot.org http://groundspeed.wobot.org The Foundation http://www.owasp.org

More information

Servlets and JSP (Java Server Pages)

Servlets and JSP (Java Server Pages) Servlets and JSP (Java Server Pages) XML HTTP CGI Web usability Last Week Nan Niu (nn@cs.toronto.edu) CSC309 -- Fall 2008 2 Servlets Generic Java2EE API for invoking and connecting to mini-servers (lightweight,

More information

Alpha College of Engineering and Technology. Question Bank

Alpha College of Engineering and Technology. Question Bank Alpha College of Engineering and Technology Department of Information Technology and Computer Engineering Chapter 1 WEB Technology (2160708) Question Bank 1. Give the full name of the following acronyms.

More information

JVA-563. Developing RESTful Services in Java

JVA-563. Developing RESTful Services in Java JVA-563. Developing RESTful Services in Java Version 2.0.1 This course shows experienced Java programmers how to build RESTful web services using the Java API for RESTful Web Services, or JAX-RS. We develop

More information

1Z Java EE 6 Web Services Developer Certified Expert Exam Summary Syllabus Questions

1Z Java EE 6 Web Services Developer Certified Expert Exam Summary Syllabus Questions 1Z0-897 Java EE 6 Web Services Developer Certified Expert Exam Summary Syllabus Questions Table of Contents Introduction to 1Z0-897 Exam on Java EE 6 Web Services Developer Certified Expert... 2 Oracle

More information

Type of Classes Nested Classes Inner Classes Local and Anonymous Inner Classes

Type of Classes Nested Classes Inner Classes Local and Anonymous Inner Classes Java CORE JAVA Core Java Programing (Course Duration: 40 Hours) Introduction to Java What is Java? Why should we use Java? Java Platform Architecture Java Virtual Machine Java Runtime Environment A Simple

More information

The Text Editor appears in many locations throughout Blackboard Learn and is used to format text. For example, you can use it to:

The Text Editor appears in many locations throughout Blackboard Learn and is used to format text. For example, you can use it to: About the Text Editor The Text Editor appears in many locations throughout Blackboard Learn and is used to format text. For example, you can use it to: Add items to Content Areas, Learning Modules, Lesson

More information

Application Development in JAVA. Data Types, Variable, Comments & Operators. Part I: Core Java (J2SE) Getting Started

Application Development in JAVA. Data Types, Variable, Comments & Operators. Part I: Core Java (J2SE) Getting Started Application Development in JAVA Duration Lecture: Specialization x Hours Core Java (J2SE) & Advance Java (J2EE) Detailed Module Part I: Core Java (J2SE) Getting Started What is Java all about? Features

More information

Pieces of the puzzle. Wednesday, March 09, :29 PM

Pieces of the puzzle. Wednesday, March 09, :29 PM SOAP_and_Axis Page 1 Pieces of the puzzle Wednesday, March 09, 2011 12:29 PM Pieces of the puzzle so far Google AppEngine/GWTJ: a platform for cloud computing. Map/Reduce: a core technology of cloud computing.

More information

Introduction to the Cisco ANM Web Services API

Introduction to the Cisco ANM Web Services API 1 CHAPTER This chapter describes the Cisco ANM Web Services application programming interface (API), which provides a programmable interface for system developers to integrate with customized or third-party

More information

Contents. 1. JSF overview. 2. JSF example

Contents. 1. JSF overview. 2. JSF example Introduction to JSF Contents 1. JSF overview 2. JSF example 2 1. JSF Overview What is JavaServer Faces technology? Architecture of a JSF application Benefits of JSF technology JSF versions and tools Additional

More information

IBM LOT-985. Developing IBM Lotus Notes and Domino(R) 8.5 Applications.

IBM LOT-985. Developing IBM Lotus Notes and Domino(R) 8.5 Applications. IBM LOT-985 Developing IBM Lotus Notes and Domino(R) 8.5 Applications http://killexams.com/exam-detail/lot-985 QUESTION: 182 Robert is adding an editable field called CountryLocation to the Member form

More information

AIM. 10 September

AIM. 10 September AIM These two courses are aimed at introducing you to the World of Web Programming. These courses does NOT make you Master all the skills of a Web Programmer. You must learn and work MORE in this area

More information

Apica ZebraTester. Advanced Load Testing Tool and Cloud Platform

Apica ZebraTester. Advanced Load Testing Tool and Cloud Platform Whether Fortune 100 or the next big startup, Apica s bestin-class load testing and test automation platform helps companies ensure their web and mobile services runs with optimal performance. is an enterprise-level

More information

Specialized - Mastering JEE 7 Web Application Development

Specialized - Mastering JEE 7 Web Application Development Specialized - Mastering JEE 7 Web Application Development Code: Lengt h: URL: TT5100- JEE7 5 days View Online Mastering JEE 7 Web Application Development is a five-day hands-on JEE / Java EE training course

More information

02267: Software Development of Web Services

02267: Software Development of Web Services 02267: Software Development of Web Services Week 1 Hubert Baumeister huba@dtu.dk Department of Applied Mathematics and Computer Science Technical University of Denmark Fall 2016 1 Contents Why Services?

More information

RESTful Services. Distributed Enabling Platform

RESTful Services. Distributed Enabling Platform RESTful Services 1 https://dev.twitter.com/docs/api 2 http://developer.linkedin.com/apis 3 http://docs.aws.amazon.com/amazons3/latest/api/apirest.html 4 Web Architectural Components 1. Identification:

More information

Images and external content can be added to questions and responses of a test in Blackboard provided that the correct options are enabled.

Images and external content can be added to questions and responses of a test in Blackboard provided that the correct options are enabled. Blackboard Faculty Tutorial Adding Images and External Content to a Test Images and external content can be added to questions and responses of a test in Blackboard provided that the correct options are

More information

Project 2 Group Project Implementing a Simple HTTP Web Proxy

Project 2 Group Project Implementing a Simple HTTP Web Proxy Project 2 Group Project Implementing a Simple HTTP Web Proxy Overview: This is a group project. CPSC 460 students are allowed to form a group of 3-4 students (It is ok if you want to take it as an individual

More information

Load Balancing VMware Workspace Portal/Identity Manager

Load Balancing VMware Workspace Portal/Identity Manager Load Balancing VMware Workspace Portal/Identity Manager Overview VMware Workspace Portal/Identity Manager combines applications and desktops in a single, aggregated workspace. Employees can then access

More information

Developing the First Servlet

Developing the First Servlet Overview @author R.L. Martinez, Ph.D. Java EE (Enterprise Edition) Java EE is a software platform consisting of multiple APIs (Application Programming Interfaces) and components that support and enable

More information

FUJITSU Cloud Service S5. Introduction Guide. Ver. 1.3 FUJITSU AMERICA, INC.

FUJITSU Cloud Service S5. Introduction Guide. Ver. 1.3 FUJITSU AMERICA, INC. FUJITSU Cloud Service S5 Introduction Guide Ver. 1.3 FUJITSU AMERICA, INC. 1 FUJITSU Cloud Service S5 Introduction Guide Ver. 1.3 Date of publish: September, 2011 All Rights Reserved, Copyright FUJITSU

More information

RKN 2015 Application Layer Short Summary

RKN 2015 Application Layer Short Summary RKN 2015 Application Layer Short Summary HTTP standard version now: 1.1 (former 1.0 HTTP /2.0 in draft form, already used HTTP Requests Headers and body counterpart: answer Safe methods (requests): GET,

More information

Configuring the CSS for Device Management

Configuring the CSS for Device Management CHAPTER 2 Configuring the CSS for Device Management Before you can use the WebNS Device Management user interface software, you need to perform the tasks described in the following sections: WebNS Device

More information

Introduction. Enterprise Java Instructor: Please introduce yourself Name Experience in Java Enterprise Edition Goals you hope to achieve

Introduction. Enterprise Java Instructor: Please introduce yourself Name Experience in Java Enterprise Edition Goals you hope to achieve Enterprise Java Introduction Enterprise Java Instructor: Please introduce yourself Name Experience in Java Enterprise Edition Goals you hope to achieve Course Description This course focuses on developing

More information

web.xml Deployment Descriptor Elements

web.xml Deployment Descriptor Elements APPENDIX A web.xml Deployment Descriptor s The following sections describe the deployment descriptor elements defined in the web.xml schema under the root element . With Java EE annotations, the

More information

NetBeans 6.5.1, GlassFish v 2.1, Web Space Server 10 Creating a Healthcare Facility JSR286-compliant Portlet

NetBeans 6.5.1, GlassFish v 2.1, Web Space Server 10 Creating a Healthcare Facility JSR286-compliant Portlet NetBeans 6.5.1, GlassFish v 2.1, Web Space Server 10 Creating a Healthcare Facility JSR286-compliant Portlet Michael.Czapski@sun.com June 2009 Abstract SOA is sometimes shown as a series of 4 layers with

More information

Contents at a Glance

Contents at a Glance Contents at a Glance 1 Java EE and Cloud Computing... 1 2 The Oracle Java Cloud.... 25 3 Build and Deploy with NetBeans.... 49 4 Servlets, Filters, and Listeners... 65 5 JavaServer Pages, JSTL, and Expression

More information

Tutorial 6 : Receiving Siebel Integration Object through the Oracle AS Adapter

Tutorial 6 : Receiving Siebel Integration Object through the Oracle AS Adapter Reference: 2005/04/26 Adapter Tutorial Tutorial 6 : Receiving Siebel Integration Object through the Oracle AS Adapter The Oracle AS Adapter for Siebel exposes the Siebel events - Integration Objects as

More information

Programming Assignment 3

Programming Assignment 3 UNIVERSITY OF NEBRASKA AT OMAHA Computer Science 3550 Section 002 Communication Networks Spring 2018 Programming Assignment 3 Introduction Having created a TCP client in programming assignment 2, it s

More information

Session 8. Introduction to Servlets. Semester Project

Session 8. Introduction to Servlets. Semester Project Session 8 Introduction to Servlets 1 Semester Project Reverse engineer a version of the Oracle site You will be validating form fields with Ajax calls to a server You will use multiple formats for the

More information

How to configure the UTM Web Application Firewall for Microsoft Lync Web Services connectivity

How to configure the UTM Web Application Firewall for Microsoft Lync Web Services connectivity How to configure the UTM Web Application Firewall for Microsoft Lync Web Services connectivity This article explains how to configure your Sophos UTM to allow access Microsoft s Lync Web Services (the

More information

Session 20 Data Sharing Session 20 Data Sharing & Cookies

Session 20 Data Sharing Session 20 Data Sharing & Cookies Session 20 Data Sharing & Cookies 1 Reading Shared scopes Java EE 7 Tutorial Section 17.3 Reference http state management www.ietf.org/rfc/rfc2965.txt Cookies Reading & Reference en.wikipedia.org/wiki/http_cookie

More information

COURSE OUTLINE PRE-REQUISITES/CO-REQUISITES: COMP228, COMP214 COURSE ELIGIBILITY FOR PRIOR LEARNING ASSESSMENT AND RECOGNITION (PLAR):

COURSE OUTLINE PRE-REQUISITES/CO-REQUISITES: COMP228, COMP214 COURSE ELIGIBILITY FOR PRIOR LEARNING ASSESSMENT AND RECOGNITION (PLAR): COURSE OUTLINE SCHOOL: School of Engineering Technology and Applied Science DEPARTMENT: PROGRAM: COURSE TITLE: Information and Communication Engineering Technology (ICET) Software Engineering Technology

More information

Open XML Gateway User Guide. CORISECIO GmbH - Uhlandstr Darmstadt - Germany -

Open XML Gateway User Guide. CORISECIO GmbH - Uhlandstr Darmstadt - Germany - Open XML Gateway User Guide Conventions Typographic representation: Screen text and KEYPAD Texts appearing on the screen, key pads like e.g. system messages, menu titles, - texts, or buttons are displayed

More information

edocs Home > BEA AquaLogic Service Bus 3.0 Documentation > Accessing ALDSP Data Services Through ALSB

edocs Home > BEA AquaLogic Service Bus 3.0 Documentation > Accessing ALDSP Data Services Through ALSB Accessing ALDSP 3.0 Data Services Through ALSB 3.0 edocs Home > BEA AquaLogic Service Bus 3.0 Documentation > Accessing ALDSP Data Services Through ALSB Introduction AquaLogic Data Services Platform can

More information

Soap Based Web Services In Java Tutorial Eclipse Jboss

Soap Based Web Services In Java Tutorial Eclipse Jboss Soap Based Web Services In Java Tutorial Eclipse Jboss In the next sections, an example of top-down Web Service endpoint 1, @WebService (endpointinterface= "org.jboss.test.ws.jaxws.samples.webresult. of

More information

Web basics: HTTP cookies

Web basics: HTTP cookies Web basics: HTTP cookies Myrto Arapinis School of Informatics University of Edinburgh February 11, 2016 1 / 27 How is state managed in HTTP sessions HTTP is stateless: when a client sends a request, the

More information