ASERT LOGO Advanced Software Engineering, Research and Training
Leading-Edge Courseware, Highly-Skilled Experienced Instructors

Java & J2EE Curriculum

ASERT has a range of Java & J2EE courses. If you don't see what you are after, please contact us to discuss your training needs. Our courseware is very modular, so we can often put together something which meets your needs.

GV110: Groovy Workshop (1-2 days)

This intensive workshop is aimed at developers (in particular Java developers) who wish to learn about the Groovy language. With JSR-241, Groovy became the second standardized language for the Java platform after the Java language itself. Groovy’s goal is to bring lightweight, agile, and dynamic programming to the Java world.

JV110/1/2/3/4: Intermediate Java Programming Courses (3-5 days)

Intermediate Java Programming is an intensive three to five-day hands-on course for developers who have some experience with using the Java programming language. Fundamental elements of Object Oriented programming will also be covered to allow the student to understand the various features and constructs of Java. Intermediate Java Programming is approximately 50% lecture and 50% hands-on labs and exercises. This approach will maximise each attendee's ability to begin writing and designing Java applications.

JV130/1: J2EE Overview Seminar/Workshop (2-4 hours/1 day)

The Java 2 Enterprise Edition (J2EE) platform represents the start-of-the-art technologies for building Internet and enterprise applications. This seminar introduces the J2EE technologies and considers tools, techniques, frameworks and best practices to build content-rich, manageable, secure and open enterprise systems.

JV140/1: Java 5/6 Update Seminar/Workshop (1/2 day/1-2 days)

Java is one of the most predominant programming languages in current use. The latest release of the Java language (version 5) arguably includes some of the biggest changes in the language since its inception. This short course examines those changes and highlights when developers may wish to use the new features. The course format is customisable but is typically 40% lecture material and 60% hands-on workshops, labs and examples.

JV210/4/5/6: J2EE Courses (3-5 days)

These courses are intensive three to five-day courses and are an excellent primer for developers and programmers who wish to advance on a general working knowledge and
understanding of the Java programming language. Advanced elements of programming with J2EE will be covered to allow the student to begin developing distributed Java applications with the help of JNDI, RMI, Java Server Pages, Servlets, EJBs, JDBC, JMS and more. These courses are approximately 50% structured lecture material and 50% hands-on labs and exercises.

JV222: Java Security Technologies (2 days)

This two-day course explores the latest technologies available for building Java-based secure electronic commerce applications. Application examples discussed in the course include customer to business applications such as shopping cart based systems, eService systems and business to business EDI-like applications utilising XML. The course goes on to examine how these forms of eCommerce can be implemented using Java-based technology including Java Security, Java Wallets, enterprise-level Java packages and eCommerce specific servers.

JV225: OOAD and UML with Java (1-2 days)

This course introduces Object Oriented Analysis and Design (OOAD) and the Unified Modelling Language (UML) and explains the language, tools, techniques and best practices to use OOAD and UML for modelling object-oriented and multi-tier enterprise systems. OOAD concepts covered include classes, objects, inheritance, associations, aggregations, etc. All nine diagrams available in UML 1.4 are covered as well as a brief glimpse at the newly standardised UML 2.0 specification. The course is not specifically tied to Java and would apply equally well to other OO languages such as C++ and C#, however, the course does make use of some example programs which are currently written in Java.

JV232: JSP Tag Library Best Practices (2 days)

Java ServerPages (JSPs) are one of the main Java-based technologies for producing dynamic web content. They are supported in dynamic web servers such as Tomcat, are one of the core presentation technologies in the Java 2 Enterprise Edition (J2EE) platform and are a common technology used within many portal frameworks. This 2-day course examines best practices for using JSPs and is focussed around the JSP 1.2 (mature) and 2.0 (emerging) versions. Topics covered include JSP syntax review, packaging, design patterns including the MVC presentation-tier design pattern, JavaBean usage, tag library usage and creating custom tag libraries. A myriad of recipes for using JSPs in practical applications are given. In addition the important emerging frameworks and libraries are briefly examined including the Java Standard Tag Library (JSTL), Struts and JavaServer Faces (JSF) with a view as to how tag libraries are used within these popular emerging frameworks.

JV234: The Struts MVC Framework (1 day)

Struts helps you create an extensible development environment for your applications, based on published standards and proven design patterns. It encourages web application architectures based on the Model 2 approach, a variation of the classic Model-View-Controller (MVC) design paradigm. Struts provides its own Controller component and integrates with other technologies to provide the Model and the View. For the Model, Struts can interact with any standard data access technology, including Enterprise Java Beans, JDBC, and JNDI. For the View, Struts works well with JavaServer Pages, Templates Engines such as Velocity, XML technologies such as XSLT, and other presentation systems.

JV236: Eclipse RCP and Plug-In Development (5 days)

The Eclipse IDE is now the defacto tool used by Java and other language software developers. However, the platform on which the Eclipse IDE is built offers so much more than just an IDE. The Eclipse Platform and its many parts and add-ons provide not only a universal tool platform but a cross-platform framework for building any rich-client application.

This customizable course examines the many layers which exist within the Eclipse Platform. Highlights of the course include:

  • An overview of all the features Eclipse provides to the Java developer
  • A description of the core runtime and Open Service Gateway Initiative (OSGi) underpinnings and the concept of extension points
  • An overview of the SWT and JFace UI APIs and features
  • Details of the workbench facilities
  • Coverage of RCP development
  • Details of plug-in development

JV242: Java and XML (1-2 days)

Java is an excellent language for writing portable applications. XML is an excellent vehicle for capturing data in a portable fashion. Combining Java and XML allows for true enterprise application integration across multiple businesses, platforms, operating systems and databases. This course looks at the latest technologies and techniques for using these two technologies together. The course covers techniques for parsing and manipulating XML documents, transforming XML and using XML within Web Services contexts.

JV246: TopLink Overview (1 day)

There has been much debate about the best technologies to use when working with OO languages like Java and non-OO RDBMS systems. A problem which often crops up is what is termed the OO-to-Relational (O/R) mapping problem. Technologies like J2EE attempt to provide frameworks in which O/R mapping is simplified for developers. Products like TopLink (recently acquired by Oracle from WebGain) attempt to go further by providing additional mappings and hiding even greater complexity from the developer. This course discusses TopLink, gives examples of how it is used and considers whether the benefits it provide are compelling given the additional learning curve and costs to acquire tools which are required when using TopLink.

JV247: Java Web Presentation Frameworks Workshop (2 days)

This intensive workshop is aimed at enterprise Java developers who wish to examine the most prominent web-framework options available for building enterprise multi-tier applications. The workshop provides details of Spring MVC and JSF and compares and contrasts them with each other and with other options. In comparing these frameworks, a number of aspects and useful features for building and testing multi-tier web-based applications are considered. The course format is approximately 30% lecture material and 70% hands-on workshops, labs and examples.

JV248: Java & J2EE FastTrack (4-5 days)

This course is an intensive four or five-day course designed to enable existing developers and programmers to rapidly become productive within J2EE environments. The first part of the course provides non-Java or new to Java programmers with an overview of the features of Java required for building enterprise applications. The second part of the course provides an intensive overview of J2EE to allow the student to begin developing distributed Java applications with the help of JNDI, Java Server Pages, Servlets, Tag Libraries, EJBs, JDBC, XML, Web Services and more.

JV249: Java Persistence Technologies Workshop (1 day)

This intensive workshop is aimed at enterprise Java developers who wish to examine the most prominent persistence options available for building enterprise multi-tier applications. The workshop provides details of Hibernate and compares and contrasts it with EJB 2 and EJB 3. EJB 2 is the most popular business layer and persistence layer technology for enterprise Java but has not been accepted by some Java enterprise developers because it is seen as large and slow.

JV250/1/2/3: Java and J2EE Design Patterns (2-4 days)

Design patterns are recurring solutions to common software problems. The specific details of a software problem may vary from project to project but patterns capture the essence and basic structure of successful experiences in solving similar problems. Design patterns thus offer a technique for capturing design and architecture, presenting and communicating architectural knowledge at all levels of a system, allowing experience and insights to be understood and distilled. This course is an in-depth introduction to design patterns for Java and J2EE systems and is designed for intermediate Java programmers wanting to advanced their mastery of the Java language by adopting best practice coding conventions and patterns.

JV260/1/2/3: Java and J2EE Open Source Testing Tools (1-3 days)

Over the last few years, open source testing tools have become more important to both developers and testers alike:

  • For developers ... Unit testing has become central to the way many developers write software, thanks largely to a lightweight programming methodology called eXtreme Programming (XP). This methodology requires that developers write unit tests for every function they add, and subsequently maintain those tests. A maintained suite of unit tests captures the system design in a practical form, provides the best form of documentation for the system classes, determines when each part of the system is complete, gives developers confidence in their code and provides a basis for refactoring without introducing errors.
  • For testers ... Budgets for expensive testing packages have been shrinking due to the business driver for IT to provide more value for money. In addition, tools which are foreign to developers sometimes hinder testing team acceptance by developers. Also, given the rapid change of technology, proprietary tools do not or are slow to support testing of the latest emerging technologies. Properietary tools also don't always focus on testing the open source technologies being used by more and more developers.

This course outlines the available open source tools for testing traditional, web-oriented and component-oriented Java and J2EE applications. The topics related to testing Web Applications are applicable to .Net, PHP and other systems as well as Java-based web application servers and J2EE systems.