GupShup Study
 
  
WEB TECHNOLOGIES A Computer Science Perspective full eBook download
Pankaj Yadav

WEB TECHNOLOGIES A Computer Science Perspective full eBook download

Pankaj Yadav | 18-Jun-2016 |
WEB TECHNOLOGIES A Computer Science Perspective , Web Essentials: Clients , Servers , Communication , Client-Side Programming: The JavaScriptTM Language , Markup Languages: XHTML 1.0 , Style Sheets: CSS , Host Objects: Browsers and the DOM , Server-Side Programming: Java Servlets , RepresentingWeb Data: XML , Separating Programming and Presentation: JSPTM Technology , Web Services: JAX-RPC , WSDL , XML Schema , SOAP ,

Hi friends, here Pankaj Yadav uploaded notes for Web Technology with title WEB TECHNOLOGIES A Computer Science Perspective full eBook download. You can download this lecture notes, ebook by clicking on the below file name or icon.

Content for WEB TECHNOLOGIES A Computer Science Perspective

CHAPTER 1 Web Essentials: Clients, Servers, and Communication 1
1.1 The Internet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Basic Internet Protocols . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2.1 TCP/IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2.2 UDP, DNS, and Domain Names . . . . . . . . . . . . . . . . . . . . 7
1.2.3 Higher-Level Protocols . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.3 The World Wide Web . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.3.1 Hypertext Transport Protocol . . . . . . . . . . . . . . . . . . . . . . 10
1.4 HTTP Request Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.4.1 Overall Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.4.2 HTTP Version . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.4.3 Request-URI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.4.4 Request Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.4.5 Header Fields and MIME Types . . . . . . . . . . . . . . . . . . . . 15
1.5 HTTP Response Message . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.5.1 Response Status Line . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.5.2 Response Header Fields . . . . . . . . . . . . . . . . . . . . . . . . 19
1.5.3 Cache Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
1.5.4 Character Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
1.6 Web Clients . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
1.6.1 Basic Browser Functions . . . . . . . . . . . . . . . . . . . . . . . . 24
1.6.2 URLs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
1.6.3 User-Controllable Features . . . . . . . . . . . . . . . . . . . . . . . 27
1.6.4 Additional Functionality . . . . . . . . . . . . . . . . . . . . . . . . 29
1.7 Web Servers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
1.7.1 Server Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
1.7.2 Server History . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
1.7.3 Server Configuration and Tuning . . . . . . . . . . . . . . . . . . . . 32
1.7.4 Defining Virtual Hosts . . . . . . . . . . . . . . . . . . . . . . . . . 36
1.7.5 Logging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
1.7.6 Access Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
1.7.7 Secure Servers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
1.8 Case Study . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
iii
iv Contents
1.9 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
CHAPTER 2 Markup Languages: XHTML 1.0 56
2.1 An Introduction to HTML . . . . . . . . . . . . . . . . . . . . . . . . . . 56
2.2 HTML’s History and Versions . . . . . . . . . . . . . . . . . . . . . . . . 59
2.2.1 The “War” Years . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
2.2.2 The Clean-up Effort . . . . . . . . . . . . . . . . . . . . . . . . . 61
2.3 Basic XHTML Syntax and Semantics . . . . . . . . . . . . . . . . . . . . 64
2.3.1 Document Type Declaration . . . . . . . . . . . . . . . . . . . . . 64
2.3.2 White Space in Character Data . . . . . . . . . . . . . . . . . . . 65
2.3.3 Unrecognized Elements and Attributes . . . . . . . . . . . . . . . 67
2.3.4 Special Characters . . . . . . . . . . . . . . . . . . . . . . . . . . 68
2.3.5 Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
2.4 Some Fundamental HTML Elements . . . . . . . . . . . . . . . . . . . . . 72
2.4.1 Headings: h1 and Friends . . . . . . . . . . . . . . . . . . . . . . 72
2.4.2 Spacing: pre and br . . . . . . . . . . . . . . . . . . . . . . . . . 73
2.4.3 Formatting Text Phrases: span, strong, tt, etc. . . . . . . . . 75
2.4.4 Horizontal Rule: hr . . . . . . . . . . . . . . . . . . . . . . . . . 76
2.4.5 Images: The img Element . . . . . . . . . . . . . . . . . . . . . . 76
2.4.6 Links: The a Element . . . . . . . . . . . . . . . . . . . . . . . . 78
2.4.7 Comments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
2.4.8 Nesting Elements . . . . . . . . . . . . . . . . . . . . . . . . . . 80
2.5 Relative URLs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
2.6 Lists . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
2.7 Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
2.8 Frames . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
2.9 Forms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
2.10 Defining XHTML’s Abstract Syntax: XML . . . . . . . . . . . . . . . . . 98
2.10.1 Element Type Declarations . . . . . . . . . . . . . . . . . . . . . 99
2.10.2 Attribute List Declarations . . . . . . . . . . . . . . . . . . . . . . 101
2.10.3 Entity Declarations . . . . . . . . . . . . . . . . . . . . . . . . . . 104
2.10.4 DTD Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
2.11 Creating HTML Documents . . . . . . . . . . . . . . . . . . . . . . . . . 106
2.12 Case Study . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
2.13 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
CHAPTER 3 Style Sheets: CSS 121
3.1 Introduction to Cascading Style Sheets . . . . . . . . . . . . . . . . . . . . 121
3.2 Cascading Style Sheet Features . . . . . . . . . . . . . . . . . . . . . . . . 123
3.3 CSS Core Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
3.3.1 Selector Strings . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
3.3.2 At-Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
3.4 Style Sheets and HTML . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
Contents v
3.5 Style Rule Cascading and Inheritance . . . . . . . . . . . . . . . . . . . . 133
3.5.1 Rule Cascading . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
3.5.2 Style Inheritance . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
3.6 Text Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
3.6.1 Font Families . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
3.6.2 Length Specifications in CSS . . . . . . . . . . . . . . . . . . . . 143
3.6.3 Font Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
3.6.4 Line Boxes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
3.6.5 Text Formatting and Color . . . . . . . . . . . . . . . . . . . . . . 149
3.7 CSS Box Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
3.7.1 Basic Concepts and Properties . . . . . . . . . . . . . . . . . . . . 151
3.7.2 Box Model Shorthand Properties . . . . . . . . . . . . . . . . . . 154
3.7.3 Background Colors and Images . . . . . . . . . . . . . . . . . . . 157
3.8 Normal Flow Box Layout . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
3.8.1 Basic Box Layout . . . . . . . . . . . . . . . . . . . . . . . . . . 158
3.8.2 The display Property . . . . . . . . . . . . . . . . . . . . . . . 160
3.8.3 Margin Collapse . . . . . . . . . . . . . . . . . . . . . . . . . . . 162
3.8.4 Block Box Width and Height . . . . . . . . . . . . . . . . . . . . 162
3.8.5 Simple Inline Boxes . . . . . . . . . . . . . . . . . . . . . . . . . 166
3.8.6 Nested Inline Boxes . . . . . . . . . . . . . . . . . . . . . . . . . 168
3.9 Beyond the Normal Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
3.9.1 Properties for Positioning . . . . . . . . . . . . . . . . . . . . . . 169
3.9.2 Relative Positioning . . . . . . . . . . . . . . . . . . . . . . . . . 170
3.9.3 Float Positioning . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
3.9.4 Absolute Positioning . . . . . . . . . . . . . . . . . . . . . . . . . 172
3.9.5 Positioning-Related Properties . . . . . . . . . . . . . . . . . . . 174
3.10 Some Other Useful Style Properties . . . . . . . . . . . . . . . . . . . . . 176
3.10.1 Lists . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
3.10.2 Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
3.10.3 Cursor Styles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
3.11 Case Study . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
3.12 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183
Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183
CHAPTER 4 Client-Side Programming: The JavaScriptTM Language 192
4.1 History and Versions of JavaScript . . . . . . . . . . . . . . . . . . . . . . 192
4.2 Introduction to JavaScript . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
4.3 JavaScript in Perspective . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
4.3.1 Scripting Languages . . . . . . . . . . . . . . . . . . . . . . . . . 195
4.3.2 Writing and Testing JavaScript Programs . . . . . . . . . . . . . . 196
4.4 Basic Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
4.5 Variables and Data Types . . . . . . . . . . . . . . . . . . . . . . . . . . . 200
4.6 Statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
4.7 Operators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204
4.7.1 Precedence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205
vi Contents
4.7.2 Type Conversion . . . . . . . . . . . . . . . . . . . . . . . . . . . 206
4.7.3 Bit Operators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
4.8 Literals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
4.9 Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
4.10 Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212
4.10.1 Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . 212
4.10.2 Enumerating Properties . . . . . . . . . . . . . . . . . . . . . . . 214
4.10.3 Array Notation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214
4.10.4 Object References . . . . . . . . . . . . . . . . . . . . . . . . . . 215
4.10.5 Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217
4.10.6 Constructors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220
4.10.7 Example: Binary Tree . . . . . . . . . . . . . . . . . . . . . . . . 221
4.11 Arrays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
4.11.1 Creating an Array . . . . . . . . . . . . . . . . . . . . . . . . . . 225
4.11.2 Dynamically Changing Array Length . . . . . . . . . . . . . . . . 226
4.11.3 Array Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226
4.12 Built-in Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228
4.12.1 The Global Object (window) . . . . . . . . . . . . . . . . . . . . 228
4.12.2 String, Number, and Boolean . . . . . . . . . . . . . . . . . . . 229
4.12.3 Date . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
4.12.4 Math . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232
4.12.5 RegExp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233
4.13 JavaScript Debuggers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237
4.14 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240
Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240
CHAPTER 5 Host Objects: Browsers and the DOM 249
5.1 Introduction to the Document Object Model . . . . . . . . . . . . . . . . . 249
5.2 DOM History and Levels . . . . . . . . . . . . . . . . . . . . . . . . . . . 251
5.3 Intrinsic Event Handling . . . . . . . . . . . . . . . . . . . . . . . . . . . 252
5.4 Modifying Element Style . . . . . . . . . . . . . . . . . . . . . . . . . . . 254
5.5 The Document Tree . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257
5.5.1 Node Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258
5.5.2 Example: List Reordering . . . . . . . . . . . . . . . . . . . . . . 261
5.5.3 The document Node . . . . . . . . . . . . . . . . . . . . . . . . 262
5.5.4 Element Nodes . . . . . . . . . . . . . . . . . . . . . . . . . . . 263
5.5.5 Text Nodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264
5.5.6 Example: Collapsible Elements . . . . . . . . . . . . . . . . . . . 264
5.5.7 HTML Convenience Properties . . . . . . . . . . . . . . . . . . . 268
5.6 DOM Event Handling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 268
5.6.1 The Event Object and Event Listeners . . . . . . . . . . . . . . . 268
5.6.2 Mouse Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269
5.6.3 Window-Level Events . . . . . . . . . . . . . . . . . . . . . . . . 273
5.6.4 Event Propagation . . . . . . . . . . . . . . . . . . . . . . . . . . 273
5.6.5 Example: Dropdown Menus . . . . . . . . . . . . . . . . . . . . . 275
Contents vii
5.6.6 Event Canceling and Form Validation . . . . . . . . . . . . . . . . 280
5.6.7 Generating Events . . . . . . . . . . . . . . . . . . . . . . . . . . 281
5.7 Accommodating Noncompliant Browsers . . . . . . . . . . . . . . . . . . 282
5.7.1 Detecting Host Objects . . . . . . . . . . . . . . . . . . . . . . . 283
5.7.2 IE6 Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284
5.8 Additional Properties of window . . . . . . . . . . . . . . . . . . . . . . . 289
5.9 Case Study . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294
5.10 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300
Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300
CHAPTER 6 Server-Side Programming: Java Servlets 307
6.1 Servlet Architecture Overview . . . . . . . . . . . . . . . . . . . . . . . . 307
6.2 A “Hello World!” Servlet . . . . . . . . . . . . . . . . . . . . . . . . . . . 309
6.3 Servlets Generating Dynamic Content . . . . . . . . . . . . . . . . . . . . 311
6.4 Servlet Life Cycle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313
6.5 Parameter Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 314
6.5.1 Parameter Data and Query Strings . . . . . . . . . . . . . . . . . . 314
6.5.2 Servlets and Parameter Data . . . . . . . . . . . . . . . . . . . . . 316
6.5.3 Forms and Parameter Data . . . . . . . . . . . . . . . . . . . . . . 319
6.6 Sessions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 322
6.6.1 Creating a Session . . . . . . . . . . . . . . . . . . . . . . . . . . 322
6.6.2 Storing and Retrieving Attributes . . . . . . . . . . . . . . . . . . 323
6.6.3 Session Termination . . . . . . . . . . . . . . . . . . . . . . . . . 327
6.7 Cookies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329
6.8 URL Rewriting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332
6.9 Other Servlet Capabilities . . . . . . . . . . . . . . . . . . . . . . . . . . . 334
6.9.1 Additional HttpServletRequest Methods . . . . . . . . . . . . . 334
6.9.2 Additional HttpServletResponse Methods . . . . . . . . . . . 334
6.9.3 Support for Other HTTP Methods . . . . . . . . . . . . . . . . . . 338
6.10 Data Storage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338
6.11 Servlets and Concurrency . . . . . . . . . . . . . . . . . . . . . . . . . . . 339
6.11.1 Concurrency in Web Servers . . . . . . . . . . . . . . . . . . . . . 339
6.11.2 Threads . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340
6.11.3 Threading Issues . . . . . . . . . . . . . . . . . . . . . . . . . . . 342
6.11.4 Thread Synchronization . . . . . . . . . . . . . . . . . . . . . . . 342
6.11.5 Servlet Synchronization . . . . . . . . . . . . . . . . . . . . . . . 345
6.11.6 Summary and Concluding Remarks . . . . . . . . . . . . . . . . . 350
6.12 Case Study . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 350
6.13 Related Technologies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356
6.14 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 358
Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 358
CHAPTER 7 RepresentingWeb Data: XML 364
7.1 XML Documents and Vocabularies . . . . . . . . . . . . . . . . . . . . . . 364
7.2 XML Versions and the XML Declaration . . . . . . . . . . . . . . . . . . . 369
viii Contents
7.3 XML Namespaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 370
7.4 JavaScript and XML: Ajax . . . . . . . . . . . . . . . . . . . . . . . . . . 373
7.5 DOM-Based XML Processing . . . . . . . . . . . . . . . . . . . . . . . . 378
7.6 Event-oriented Parsing: SAX . . . . . . . . . . . . . . . . . . . . . . . . . 383
7.7 Transforming XML Documents . . . . . . . . . . . . . . . . . . . . . . . . 390
7.7.1 Transforming between XML Representations . . . . . . . . . . . . 390
7.7.2 Introduction to XSL . . . . . . . . . . . . . . . . . . . . . . . . . 393
7.7.3 XSL Component Overview . . . . . . . . . . . . . . . . . . . . . 394
7.8 Selecting XML Data: XPath . . . . . . . . . . . . . . . . . . . . . . . . . 396
7.8.1 Location Paths . . . . . . . . . . . . . . . . . . . . . . . . . . . . 396
7.8.2 Location Paths with Multiple Steps . . . . . . . . . . . . . . . . . 399
7.8.3 Absolute and Relative Location Paths . . . . . . . . . . . . . . . . 400
7.8.4 Combining Node Lists . . . . . . . . . . . . . . . . . . . . . . . . 401
7.8.5 Function Calls as XPath Expressions . . . . . . . . . . . . . . . . 401
7.9 Template-based Transformation: XSLT . . . . . . . . . . . . . . . . . . . . 402
7.9.1 “Hello World!” Revisited . . . . . . . . . . . . . . . . . . . . . . 402
7.9.2 Recursive Template Processing . . . . . . . . . . . . . . . . . . . 405
7.9.3 Generating Result Tree Content . . . . . . . . . . . . . . . . . . . 409
7.9.4 XML Result Document Formatting . . . . . . . . . . . . . . . . . 415
7.10 Displaying XML Documents in Browsers . . . . . . . . . . . . . . . . . . 417
7.11 Case Study . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 419
7.12 Related Technologies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 425
7.13 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 426
Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 426
CHAPTER 8 Separating Programming and Presentation: JSPTM
Technology 432
8.1 Introduction to JavaServer Pages . . . . . . . . . . . . . . . . . . . . . . . 433
8.2 JSP and Servlets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 435
8.3 Running JSP Applications . . . . . . . . . . . . . . . . . . . . . . . . . . 438
8.3.1 Web Applications . . . . . . . . . . . . . . . . . . . . . . . . . . 438
8.3.2 Installing a Web Application . . . . . . . . . . . . . . . . . . . . 439
8.3.3 Defining Web Application Parameters . . . . . . . . . . . . . . . . 442
8.4 Basic JSP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 446
8.4.1 JSP Expression Language (EL) . . . . . . . . . . . . . . . . . . . 447
8.4.2 JSP Markup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 450
8.4.3 JSTL Core Actions . . . . . . . . . . . . . . . . . . . . . . . . . . 452
8.5 JavaBeans Classes and JSP . . . . . . . . . . . . . . . . . . . . . . . . . . 457
8.5.1 JavaBeans Technology Basics . . . . . . . . . . . . . . . . . . . . 457
8.5.2 Instantiating Bean Objects . . . . . . . . . . . . . . . . . . . . . . 460
8.5.3 Using JavaBeans Objects . . . . . . . . . . . . . . . . . . . . . . 462
8.5.4 Getters/Setters on Nonbean Objects . . . . . . . . . . . . . . . . . 463
8.6 Tag Libraries and Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463
8.7 Support for the Model-View-Controller Paradigm . . . . . . . . . . . . . . 466
8.7.1 MVC Basics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 466
Contents ix
8.7.2 Servlet Request Dispatching . . . . . . . . . . . . . . . . . . . . . 467
8.7.3 JSP Actions Supporting MVC . . . . . . . . . . . . . . . . . . . . 471
8.8 Case Study . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 472
8.9 Related Technologies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 479
8.9.1 JSP Pages with Scriptlets . . . . . . . . . . . . . . . . . . . . . . 479
8.9.2 Active Server Pages and ASP.NET . . . . . . . . . . . . . . . . . 480
8.9.3 PHP: Hypertext Preprocessor . . . . . . . . . . . . . . . . . . . . 480
8.9.4 ColdFusion R . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 481
8.10 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 481
Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 481
CHAPTER 9 Web Services: JAX-RPC, WSDL, XML Schema, and SOAP 486
9.1 Web Service Concepts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 486
9.2 Writing a Java Web Service . . . . . . . . . . . . . . . . . . . . . . . . . . 491
9.2.1 Currency Conversion Service . . . . . . . . . . . . . . . . . . . . . 491
9.2.2 Writing Server Software . . . . . . . . . . . . . . . . . . . . . . . . 491
9.2.3 Packaging Server Software . . . . . . . . . . . . . . . . . . . . . . . 492
9.3 Writing a Java Web Service Client . . . . . . . . . . . . . . . . . . . . . . . 497
9.4 Describing Web Services: WSDL . . . . . . . . . . . . . . . . . . . . . . . 502
9.5 Representing Data Types: XML Schema . . . . . . . . . . . . . . . . . . . . 508
9.5.1 Built-In Data Types . . . . . . . . . . . . . . . . . . . . . . . . . . . 509
9.5.2 XML Schemas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 511
9.5.3 User-Defined Simple Types . . . . . . . . . . . . . . . . . . . . . . 512
9.5.4 User-Defined Complex Types . . . . . . . . . . . . . . . . . . . . . 514
9.5.5 XML Schema within Instance Documents . . . . . . . . . . . . . . . 516
9.6 Communicating Object Data: SOAP . . . . . . . . . . . . . . . . . . . . . . 517
9.6.1 SOAP Elements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 517
9.6.2 RPC Representation . . . . . . . . . . . . . . . . . . . . . . . . . . 518
9.6.3 SOAP Encoding of Struct Data . . . . . . . . . . . . . . . . . . . . . 521
9.6.4 SOAP Encoding of Arrays . . . . . . . . . . . . . . . . . . . . . . . 522
9.6.5 SOAP and HTTP . . . . . . . . . . . . . . . . . . . . . . . . . . . . 523
9.6.6 Java Support for SOAP . . . . . . . . . . . . . . . . . . . . . . . . . 524
9.7 Related Technologies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 524
9.8 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 525
Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 526

 

Download pdf eBook and notes of WEB TECHNOLOGIES A Computer Science Perspective

    Attachment Lists

    If download doesn't start in application like IDM then press Alt + click on download button to start download
  • Web Technologies.pdf (Size: 5854.87KB) Dowland
Share With Friends :  

No any Comment yet!