CS311 : Introduction to Web Services Development

Course Overview

Course Synopsis

The course is divided into Nineteen modules. First 10 modules are counted as prerequisites which concentrates on basic concepts of Object Oriented Programming and Java. XML Java Data base connectivity JAXP HTTP SOAP Servlets XML DOM WebServices has been taught in modules from 11 to 19.

Course Learning Outcomes

At the end of this course you should be able to

  • Describe basic and some advance concepts in OOP and Java
  • Describe How Arrays and Classes are important in Programming
  • Discuss about Modifiers and Exception Handling
  • Describe XML and its Components
  • Learn XML DOM and its Importance
  • Learn How JAXP and Servlets Work
  • Learn hands on practical knowledge about JDBC
  • Describe basic and advance concepts in WebServices


Course Calendar

1 Introduction to Web Services, Benefits and Service Oriented Architecture (SOA)
2 Object Orientation and Model
3 What is an Object?
4 What is an Abstraction?
5 What is Inheritance?
6 Concepts Related to Inheritance [Generalization, Subtyping (Extension), Specialization (Restriction) ]
7 What is Encapsulation
8 Information Hiding
9 Types of Inheritance
10 Links & Relationships (Association)
11 Links & Relationships (Composition)
12 Links & Relationships (Aggregation)
13 Abstract, Concrete Classes and Interfaces (Java)
14 Function Overloading and Overriding
15 What is Polymorphism?
16 Polymorphism and Dynamic binding
17 Basics of Java
18 Variables in Java
19 Data Types in Java
20 Reading from Keyboard with the help of Java
21 Program Control Flow [Boolean expressions, Selection Statements, Loops and Assertions]
22 Program Control Flow [Selection Statements and Loops]
23 Java File Structure
24 Input/Output in Java
25 Program Control Flow [Selection statement with if-else]
26 Program Control Flow [Selection statement with if-else] - Code Example
27 Program Control Flow [Nested selection statements]
28 Program Control Flow [while, do-while and for loops]
29 Program Control Flow [while, do-while and for loops] - Code Example
30 Program Control Flow [while, do-while and for loops] - Code Example Continued
31 Program Control Flow [Sentinel Controlled loop example]
32 Program Control Flow [Loop do-while example]
33 Using Objects [What is an Abstraction?]
34 Using Objects [Class Declaration]
35 Object, Reference values, References?
36 Java.lang.String Class
37 String creation in Java
38 Operations of String Class
39 Operations of String Class [Concatenation and Comparison]
40 Other String Methods
41 Operators in Java
42 Control Structures [Nested loop, break and continue statement]
43 Arrays in Java
44 Array initialization in Java
45 Multidimensional Arrays in Java
46 Histogram an exercise
47 Enhanced for loop in Java
48 Class construction in Java
49 Object creation and references of Class
50 Constructors and Field Variables in Class
51 Methods in Class
52 Local and Field Variables in Class
53 Method Classification in Class
54 Class Method with Parameters
55 Reference vs. Primitive types
56 This pointer in Class
57 Static members in class
58 Remarks on Class members
59 Types of Variables and Scope
60 Life time of a variable and object
61 Constructors and Enumeration in Class
62 Object Communication
63 Structured programming and redundant code
64 Duplicate program code
65 Objects Communication and cooperation
66 Objects Associations and Ownership
67 Access Modifiers
68 Access Modifiers - Public
69 Access Modifiers - Public Demo Exercise
70 Access Modifiers - Protected
71 Access Modifiers - Default
72 Access Modifiers - Private
73 Other Modifiers
74 Other Modifiers - Static
75 Other Modifiers - Static Demo Exercise
76 Access Modifiers - Final
77 Access Modifiers - Final in Classes
78 Access Modifiers - Abstract
79 Access Modifiers - Abstract Class
80 Synchronized Modifiers
81 Native Modifiers
82 Transient Modifiers
83 Volatile Modifiers
84 Exception Handling
85 Exception Handling (Try-catch block)
86 Exception Handling (Try-catch block) Continued
87 Exception Handling (Finally block)
88 Exception Handling (The throw Statement)
89 Exception Handling (The throw Clause)
90 What is XML?
91 The Syntax of XML
92 The Rules of XML
93 XML Demo Exercise
94 Complicated XML
95 What is DOCTYPE?
96 How to Use XML?
97 XML Tree
98 XML Syntax
99 XML Elements
100 XML Elements Continued
101 XML Attributes
102 XML Namespaces
103 XML Encoding
104 Displaying XML
Assignment No. 1
105 XML and XSLT
106 XML and XPath
107 Xlink and XPointer
108 Xlink and Xpointer Examples
109 XML Document Types
110 XML Validator
111 XML DTD
112 XML DTD Details
113 DTD - XML Building Blocks
114 DTD - Elements
115 DTD - Elements Continued
116 DTD - Attributes
117 XML Elements vs. Attributes
118 DTD - Entities
119 DTD - Demo Example
120 DTD - Demo Example 2
Quiz No. 1
121 XML Schema
122 XML on the Server
123 XML on the Server Continued
124 What is XML DOM?
125 Loading an XML File
126 Loading an XML String
127 XML DOM Nodes
128 The XMLHttpRequest Object
129 XMLHttpRequest Properties and Methods
130 XML DOM - Accessing Nodes
GDB
131 XML DOM - Node Types
132 XML DOM - Traversing Nodes
133 XML DOM - Navigating Nodes Relationship
134 XML DOM - Node Information
135 XML DOM - Node Value Property
136 XML DOM - Change the value of an element
137 XML DOM - Node List
138 XML DOM - DOM Attribute List
139 XML DOM - Traverse Node Back
140 XML DOM - Browsers Differences in DOM Parsing
141 XML DOM - Navigating Nodes
142 XML DOM - Avoiding Empty Text Nodes
143 XML DOM - Operations on Nodes
144 XML DOM - Get Value of an Attribute
145 XML DOM - Change Node Values
146 XML DOM - Change Value of Attribute
147 XML DOM - Change an Attribute using nodeValue
148 XML DOM - Remove Nodes
149 XML DOM - Remove Myself
150 XML DOM - Remove a Text Node
Quiz No. 2
151 XML DOM - Clear a Text Node
152 XML DOM - Remove an Attribute Node by Name
153 XML DOM - Remove an Attribute Node by Object
154 XML DOM - Replace Nodes
155 XML DOM - Replace Data in a Text Node
156 XML DOM - Use the nodeValue Property Instead
157 XML DOM - Create Nodes
158 XML DOM - Create a New Atrribute Node
159 XML DOM - Create an Atrribute Using setAttribute()
160 XML DOM - Create a Text Node
161 XML DOM - Create a CDATA Section Node
162 XML DOM - Create a Comment Node
163 XML DOM - Add Nodes
164 XML DOM - Method appendChild()
165 XML DOM - Insert a Node
166 XML DOM - Add New Attribute
167 XML DOM - Clone Nodes
168 Introduction to JAXP
169 JAXP - Overview of Packages
170 Simple API for XML - SAX API
Quiz No. 3
171 SAX API - Error Handling
172 DOM API
173 DOM API - Demo 1
174 DOM API - Demo 2
175 DOM API - Demo 3
176 DOM API - Demo 4
177 SAX Parser
178 SAX API - Demo
179 SAX API - Read UTF-8 File
180 JDOM API
181 JDOM Parser
182 JDOM API - Demo
183 Java Architecture for XML Binding (JAXB)
184 JAXB - Binding Process
185 JAXB - More About Unmarshalling
186 JAXB - Basics
187 JAXB - Demo Marshalling
188 JAXB - Demo Un-Marshalling
189 JAXB - How to convert properties file into XML file using Java
190 Servlet - Basics
191 Servlet - Basic Severlet Structure
192 Servlet - Lifecycle of Severlet
193 Servlet - Severlet Lifecycle - The init() Method
194 Servlet - Severlet Lifecycle - The service() Method
195 Servlet - Severlet Lifecycle - The doGet() Method
196 Servlet - Severlet Lifecycle - The doPost() Method
197 Servlet - Severlet Lifecycle - The doHead() Method
198 Servlet - Severlet Lifecycle - The doPut() Method
199 Developing First Servlet - Example
200 Create a Servlet
201 Create the doployment descriptor (web.xml)
202 Start the Server and deploy the project
203 Deploy the application in Tomcat
204 Demo Servlets via HTTPServlet
205 Demo Servlets via GenericServlet
206 Demo Servlets via Servlet Interface
207 How Servlet Works?
208 Request Dispatcher in Servlet
209 Servlet Context Interface
210 Servlet Context Interface Methods
211 Session Tracking in Servlet
212 Request Dispatcher - Demo
213 SendRedirect in servlet
214 SendRedirect - Demo
215 Cookies in Servlet
Assignment No. 2
216 Cookies in Servlet - Cookie Class
217 Cookies: Servlet Login and Logout - Demo
218 Hidden Form Fields
219 URL Rewriting
220 URL Rewriting - Demo
Quiz No. 4
221 HTTPSession interface
222 Sessions: Servlet Login and Logout - Demo
223 Java Database Connectivity (JDBC)
224 JDBC Driver
225 JDBC - Network Protocol Driver
226 Five steps to connect to the database in Java
227 Example to connect to MySQL database
228 JDBC Classes
229 JDBC Classes - Statement Interface
230 Web Services
231 Web Services - Summary
232 Web Services Example
233 Why Web Services?
234 Web Services - Characteristics
235 Remote Procedure Calls (RPC)
236 Web Services Components Detail
237 SOAP - Introduction
238 Web Services - Architecture
239 Web Services Protocol Stack
240 RESTful Web Services
241 Service Oriented Architecture (SOA)
242 Web Services - Components
243 Web Services Components - WSDL
244 Java Web Services
245 JAX - WS
246 Java Web Services - Implementation
247 Java Web Services - SOAP vs RESTful designs
248 Java Web Services - Building web services
249 Java Web Services - Building service client
250 Java Web Services - Creating service web client
251 Java Web Services - Building RESTful web services
252 Java Web Services - Anatomy of a RESTful service
253 Java Web Services - Create RESTful in Ecllipse
254 Java Web Services - Create RESTful client