CGS4825 Section 01
Web Site Construction and Management
Spring 2021

[an error occurred while processing this directive]
Exams and Assignments
  Exam 1 Exam 2 Homework
% of Grade 33% 33% 34%
Dates 3/1 4/26 (12:30-3:15) TBA
Text
No Required Text - I will provide a web site for course material
On-line References
HTML Reference
Apache Reference
Tomcat Reference
CSS 1 Reference
CSS 2 Reference
Java API
Java Servlet API
Java Servlet Http API
Room and Time
ECS143 MW 2:00-3:15

[an error occurred while processing this directive]

Attendance I recommend that you attend every class. Those who attend class have a better chance of passing the course.

Late Assignment Policy Assignments may be submitted, with penalty, up to one day late. After that time, they will not be accepted. A late assignment will lose 10% if it is submitted within 6 hours of the due time. It will lose an additional 10% for each additional period of 6 hours.

Working Together on Assignments is NOT ALLOWED. There is a large difference between discussing general aspects of the course and discussing specific aspects of an assignment. Do not discuss your solution of a problem with others. Assignments that are too similar will not be graded and each student will lose a letter grade in the class. With a second occurrence, you will earn an F in the course.

Prerequisites

Things you should already know

Course Content

  1. Accessing School Resources
    1. FTP
    2. Telnet
    3. MySQL
    4. Uploading HW
    5. Mailing List
  2. Simple HTML
    1. HTML - basic codes, anchors, paragraphs, and line breaks
  3. Configuring a web server
    1. Configuring and starting the Apache server
    2. TCP/IP, IP addresses, Domain Names, MIME, Daemons
    3. Creating a Web site on ocelot
  4. Tomcat
    1. Servlet Mapping
    2. Access Restriction
    3. web.xml
    4. Web Application
  5. Simple JSP
    1. Configuring the Apache server with Tomcat
    2. HTML Forms - form tag, text elements, submit and reset buttons.
    3. Using the Query String to pass data
    4. JSP - accessing parameters
    5. Initializing form elements
  6. Multiple JSP
    1. Sending Data to Another JSP
    2. Sending Data Back using Hidden Fields
    3. Sending Data to Different Pages
    4. Using a Controller JSP
    5. Using a Servlet Controller
  7. Servlets and MVC
    1. Using a Bean
    2. Validation by Using Default Values
    3. Validation by Informing the User
    4. Using Java Standard Tag Library to add Looping to a JSP
    5. Persist Data to a Database Server
  8. Debugging Servlets
    1. NetBeans
    2. Server Logs
  9. Advanced Web Server Configuration
    1. Access controls, Log files
    2. Aliases, Scripting, Log Files, Connection Types, Negotiation, Indexes
    3. SSI
  10. More HTML
    1. Lists
    2. Tables
    3. Images
  11. More Form Elements
    1. Radio Groups
    2. Checkboxes
    3. Select Lists
    4. Textareas
    5. Password
    6. Initializing Form Elements
  12. Cascading Style Sheets
    1. Colors
    2. Text Attributes
    3. Fonts
    4. Margins
    5. Borders
  13. Cookies
    1. Identify User
    2. Retrieve and display User Data from a database
  14. Sessions
    1. Using a Session to pass data to JSPs
    2. Shopping Cart
  15. Request Headers, Response Headers, Status Codes
    1. Distinguishing Browsers
    2. Recognizing Browser Preferences: Accept, Accept Language, Accept Encoding
    3. Content Type
    4. Status Codes
  16. Using CGI
    1. Query String for GET Requests
    2. Content Length for POST requests
  17. MIME Types
  18. Additional topics as time allows
    1. Java Mail - Adding Email Notification to a web applicationJDBC
    2. Model 1 Architectures Using Java
      1. PERL style applications
      2. Servlet Only
      3. Limitations of Servlets
    3. PHP style applications
      1. JSP Only
      2. Limitations of JSPs.
    4. Tomcat
      1. JDBC Connection Pooling
      2. Contexts

In a nutshell, you will learn about both sides of the web - the browser side and the server side. You will learn enough HTML and CSS to create web pages that send data to the server and display the repsonse. On the server side, you will create dynamic Java programs that will receive data from teh browser, process the data, and send a reponse to the browser. You will also learn how to configure a web server. You will run your own copy of a web server and investigate the how to restrict access to your server.

Course Objectives