Customized Onsite Training Courses:
JavaScript, jQuery, and jQuery UI

“Wonderful. In 20 years, this is the best organized, most pragmatic and enjoyable course I've taken.”

“The best instructor-led course I have attended, by far.”

“Best short course ever!”

“Compared to the other short courses I have taken, this one completely redefined my scale from 1-10.”

“In my 35+ years of taking technical courses, Marty's classes consistently come out ranking #1 on my list. Highly relevant material is delivered with enthusiasm, humor, and a high degree of class interaction that is unmatched anywhere.”

more student reviews

Looking for practical, hands-on training on JavaScript, jQuery, and front-end development taught onsite at your organization? Look no further! These courses are personally developed and taught by leading JavaScript and Java EE developer, speaker, and author Marty Hall. No contract instructor regurgitating someone else's materials! Marty has taught JavaScript, Ajax, GWT, JSF, PrimeFaces, and Java EE courses onsite for dozens of organizations in the US, Canada, Mexico, Australia, Japan, Puerto Rico, India, Cambodia, Norway, and the Philippines, all to rave reviews.

If you have a group of at least eight interested developers (10 for courses outside the US or Canada), contact Marty to arrange a course at your location. Onsite courses are easier administratively, are better for clients since the topics and pace can be customized, are more cost effective for students since no travel is required, and are more convenient (for companies in the Baltimore/Washington area) because the schedule is flexible (e.g. afternoons or evenings instead of n consecutive days). However, if you have too few developers for an onsite course, check out our upcoming training course in Maryland (co-sponsored by the Johns Hopkins Engineering for Professionals program).

Main Course Options

There are a variety of courses that we can present at your organization. All courses are in lecture/lab format with a heavy emphasis on best practices and pragmatic approaches. Email the instructor to inquire about a version onsite at your organization.

  • JavaScript, jQuery, and jQuery UI. This is the most common version of our JavaScript training, and is is aimed at those that have little or no previous JavaScript experience. It covers core JavaScript, development and debugging tools, functional and object-oriented programming in JavaScript, JSON, jQuery DOM manipulation, Ajax with jQuery, and a wide variety of rich UI components with jQuery UI. For beginning front-end developers, we can also include a fast intro to HTML (2 lectures) and CSS (1 lecture). For more information on the topics covered, see the detailed syllabus in the next section. For most clients, we present this in a 5-day lecture/lab course at your organization, but for clients in the Baltimore/Washington area, more flexible schedule options are also available.
  • jQuery and jQuery UI. This version of the course is for those that already have at least moderate experience with core JavaScript, but not with jQuery. Depending on your level of JavaScript experience, this can be a 3-4 day course. As always, for clients in the Baltimore/Washington area, more flexible schedule options are also available.
  • Ext/JS, Dojo, Google Closure, etc. This version of the course is similar to the first one, but replaces jQuery with another of the popular JavaScript libraries.
  • GWT (Google Web Toolkit) Development. GWT is a library where you write both your client-side (browser) and server-side code in Java, but where the client-side code gets compiled to portable JavaScript. This course covers GWT only: it does not look at direct Ajax programming with JavaScript except briefly in the introduction and in the JSNI sections. Depending on your Java experience and what topics you want covered, this can be a 4-5 day course. As always, for clients in the Baltimore/Washington area, more flexible schedule options are also available. For details, see the GWT training course page.
  • Ajax with JSF and PrimeFaces. JSF is the standard Java EE Web app library, and it has extensive Ajax support integrated into the framework. PrimeFaces is a third-party component library for JSF that incorporates all of the jQuery UI components and many from other libraries. We give customized onsite training on JSF 2 and PrimeFaces, with a heavy emphasis on the Ajax components and libraries. For details on this, email Marty or see the JSF training pages.
  • A Custom Combination of Topics. We can mix and match topics to fit your needs. For example, since you need both server-side code and client-side code to build Ajax apps, a number of clients want a quick introduction to server-side programming in Java (Spring MVC, the Java EE 8 MVC framework, even old-fashioned servlets and JSP) before diving into the front-end topics with JavaScript and jQuery. Others may want to pick and choose among the Ajax/JavaScript libraries, depending on which they plan to use in their projects. Please just email Marty to ask!

Detailed Syllabus

As discussed above, there are a variety of courses that we can do. Below is the detailed syllabus for the first option (JavaScript, jQuery, and jQuery UI). How fast we move and whether or not we include the introductory topics on HTML and CSS depends on your preferences and the background of your developers.

JavaScript: Getting Started

  • Intro: JavaScript overview, popularity, books, and online references
  • Interactive JavaScript practice
  • Variables
  • Operators
  • Functions: basics

JavaScript: Basic Syntax Part 1

  • Conditionals
  • Loops
  • The Math class
  • Embedding JavaScript in HTML
  • HTML versions

JavaScript: Basic Syntax Part 2

  • Array basics
  • Strings
  • Regular expressions
  • Array methods

JavaScript: Functions and Functional Programming

  • Importance of functional programming
  • Assigning functions to variables, arrays, and other data structures
  • Passing functions to other functions
  • Returning functions from functions
  • Making anonymous functions
  • Capturing local variables (making closures)
  • Using the apply and call methods

JavaScript: Objects

  • Object basics
  • The prototype property
  • Namespaces (static methods)
  • Anonymous objects
  • JSON
  • Adding methods to existing classes
  • The instanceof and typeof operators
  • Functions with variable numbers of arguments

HTML Basics: Part 1

  • Differences among HTML versions
  • Basic structure of an HTML 5 document
  • Hypertext links and URLs
  • Block-level elements: overview
  • Headings and basic paragraphs
  • The div and span elements
  • Lists
  • Inline elements

HTML Basics: Part 2

  • Tables
  • Forms
  • Form input elements
  • Miscellaneous elements: fieldset, legend, label, br, hr

CSS Basics

  • Loading style sheets and applying styles
  • CSS selectors
  • CSS properties
  • Examples

jQuery: Installation, Overview, & Getting Started

  • Overview
  • Downloading and using jQuery
  • Interactive practice: with Firebug or Chrome Developer Tools
  • Manipulating the DOM with jQuery: basics (lots more detail in later section)
  • One small example
  • Using "jQuery" instead of "$"

Deploying Web Apps with Eclipse and Apache Tomcat

  • Motivation
    • Why a real Web server is needed for the upcoming Ajax sections
  • Setting up the required software
    • Installing Java SE
    • Getting Apache Tomcat
    • Installing Eclipse (Java EE version)
    • Telling Eclipse about Tomcat
  • Creating a Dynamic Web Project
    • A project that can run on a Web server
  • Deploying a Dynamic Web Project
    • Running it on Apache Tomcat

jQuery Ajax Support: Basics

  • Motivation
    • Web apps in general
    • Ajax in particular
  • Data-centric Ajax: the $.ajax function
    • Basics
    • Practicing interactively
    • Details and simple options
    • A complete example
    • Unobtrusive JavaScript
    • Inserting results into the page
  • Content-centric Ajax: the load function
    • Retrieving and inserting in one fell swoop

jQuery Ajax Support: Sending Data to the Server

  • Reading and escaping textfield values
  • Sending data with the data property of $.ajax
    • Explicit string
    • Data object
    • String built by the serialize function
  • Sending data using the load function

jQuery Ajax Support: JSON and Other Advanced Capabilities

  • Displaying temporary messages during Ajax requests
  • Handling JSON data
  • Example: static JSON data
  • Example: dynamic JSON data
  • $.ajax options
  • Ajax shortcut functions

jQuery Ajax Support: Using Promises and Deferred Objects

  • Using Promises for Ajax
    • To simplify adding additional handlers later
  • Combining Promises
    • To test if multiple calls have finished
  • Using Deferred Objects and Promises in your own code
    • To manage your own delayed or asynchronous tasks

Rich Interfaces with jQuery UI: Setup and Basic Widgets

  • Overview
  • Installation and setup
  • Widgets
    • Buttons that adapt to current theme (skin)
    • Date pickers (popup calendars)
    • Number spinners
    • Sliders
    • Progress bars

Rich Interfaces with jQuery UI: Dialog Boxes

  • Overview and usage
  • Basic dialog boxes
  • Dialogs with animation
  • Modal dialogs
  • Modal dialogs with buttons
  • Dialogs with Ajax content

Rich Interfaces with jQuery UI: Panels

  • Static tabbed panels
  • Ajax tabbed panels
  • Animated tabbed panels
  • Accordion panels

Rich Interfaces with jQuery UI: Autocompleter and Themes

  • Autocompleter
    • Local data (source = array)
    • Remote data (source = URL)
    • Custom matcher (source = function)
    • Custom menu styles
    • Display values vs. insert values
    • Performing side effects upon selection
  • Animation effects
  • Using and changing themes

About the Instructor

Marty Hall Marty Hall is president of, a training and consulting company focusing on server-side Java technology, Android development, and front-end development with JavaScript and jQuery. In addition to long Java development and consulting experience, Marty has an extensive background in teaching and training, having given training courses on Java (now using Java 8), JSF 2, PrimeFaces, Android, Ajax/jQuery, GWT, and other Java EE topics in Japan, Canada, Australia, the Philippines, Mexico, Puerto Rico, India, Cambodia, Norway, and dozens of US venues. He has taught onsite at Google (both the Mountain View and NY offices), the NSA, the CIA, General Dynamics, Northrup Grumman, General Motors, VeriSign, Symantec, the Federal Reserve Bank, Comcast, Hewlett Packard, Fannie Mae, Motorola, Learjet, the US Navy, the Australian Treasury Department, Telenor Norway, and dozens of other organizations around the world. (A more extensive list can be found on Marty's bio page.)

JavaU @ JavaOne

A popular and entertaining speaker, Marty has also spoken at conferences and user groups around the world, including Comdex, the Web 2.0 Expo, and six times at JavaOne, most recently in 2015. Marty is also adjunct faculty in the Johns Hopkins University part-time graduate program in Computer Science, where he directs the Java and Web-related concentration areas.

Marty Hall is also the lead author of six popular Java EE books from Pearson, including Core Servlets and JSP, and is the co-author of the upcoming JSF 2.3 edition of Core JSF. He has also produced training videos for Pearson on JSF, PrimeFaces, Java 8 lambdas and streams (for those that know Java 7), general Java programming using Java 8 (for those new to Java), JavaScript, and jQuery.

  • Core Servlets and JSP is the all-time worldwide bestselling servlet/JSP book, published in Bulgarian, Chinese Simplified Script (Mainland China), Chinese Traditional Script (Taiwan), Czech, Greek, English, French, German, Hebrew, Japanese, Korean, Polish, Portuguese, Russian, and Spanish.
  • Core JSF is widely recognized as the leading text on Web App development with JavaServer Faces.
  • In addition be being best sellers in industry, Marty's books have been widely used in academia (including Stanford, MIT, Princeton, U.C. Berkeley, UCLA, Johns Hopkins, and dozens of others).

For more details, please see the Marty Hall bio.

Course Reviews

Here are a few of the reactions of previous students; we are confident that you will have the same reaction. So confident, in fact, that we offer an unconditional guarantee: if you are not satisfied with the course, we will refund the full cost.

“In my 35+ years of taking technical courses, Marty's classes consistently come out ranking #1 on my list. Highly relevant material is delivered with enthusiasm, humor, and a high degree of class interaction that is unmatched anywhere. ”

“Masterful, quick-paced presentation. Witty, but never trite. Discussed but never belabored. A Java ed-venture. A gaggle of Goslings could not have done better!”

“Wonderful. In 20 years, this is the best organized, most pragmatic, and enjoyable course I've taken.”

“Excellent course. The best instructor-led course I have attended, by far. The course was exactly what I was hoping for.”

“Best short course ever!”

“Compared to the other short courses I have taken, this one completely redefined my scale from 1-10.”

“This course was AWESOME. I came with very little knowledge of JSF and now I look forward to using it on my next project.”

“GREAT class [JSF]. Do you make house calls?”

Promos for Marty Hall at GIDS conference in Bangalore

Ads for Marty at GIDS conference in India

“I'm not easily pleased by industry courses. Luckily, not all presenters are as good as Marty, otherwise University lecturers like myself would be out of work.”

“This was, by far, the best Java training course I have attended... After 4 days, I feel prepared to dive into JSF development with a solid understanding of the basics. I know this is going to make my life easier over the next year. Thank you!”

“Marty is a fantastic teacher and communicator. I thoroughly enjoyed the course and it was timely for my current work.”

For more reviews, please see the course review page.

Other Onsite Java EE Training Courses offers customized onsite courses on general Java programming using Java 8 (for those new to Java), Java 8 lambdas and streams (for those experienced with earlier Java versions), JSF 2, PrimeFaces, Hadoop (including certification prep), the Java EE 8 MVC framework, Android programming, JavaScript and jQuery, the Spring Framework, GWT, servlets/JSP, and custom combinations of topics. Available at any location worldwide.

  • Guinea pigs? No! Our courses are well-tested, having been taught in 9 countries and dozens of US venues. We don't use your developers as guinea pigs for new materials.
  • Regurgitation? No! Our instructors developed all their own materials. No contract instructor regurgitating memorized PowerPoint slides.
  • Green? No! Our instructors are experienced developers, and most have authored popular Java EE texts, spoken at JavaOne, and done extensive onsite training. The course gives best practices and real-world strategies. No newbie instructor dodging tough questions.

For more details, please see the training course home page, or email

Public Training Courses

Coreservlets normally runs on-site training courses at customer locations. This is easier administratively, is better for clients since the topics and schedule can be customized, and is more cost effective for students since no travel is required. However, due to demand from those who do not have enough students for an on-site course, we periodically run public training course at the Johns Hopkins Dorsey Center in Elkridge MD. These courses feature the same experienced instructors as our onsite courses, and are co-sponsored by Johns Hopkins Engineering for Professionals.


For more details, please see the public course schedule.