Architecting and Designing Service-Oriented JEE Applications Training

How To Take This Class

Live Instructor-Led Online Class

Cost: $2,500.00

  • Open enrollment class for individuals
  • Live class with an instructor
  • Free class retakes forever!
  • Six months of instructor email support
  • Hands-on exercises and student labs
  • Classes never cancelled due to low enrollment
  • Money-back guarantee

    Sorry, no courses are scheduled at this time. Please Contact Us to schedule this course.

Onsite or Offsite Group Training

Cost: Based on number of students

  • For groups as small as 3 people
  • Class Held at our location or yours
  • Hands-on exercises and student labs
  • Customization at no extra charge
  • Six months of instructor email support
  • All-inclusive pricing
  • Money-back guarantee
Request Group Pricing Proposal

Course Duration

5 Days

Course Description

Geared for software architects and designers using JEE in developing services within the larger context of a Service-Oriented Architecture (SOA), Architecting and Designing Service-Oriented JavaEE/JEE Applications is a lab-intensive JEE architecture training course that provides students with knowledge needed to use the Java Enterprise Edition (JEE platform) to create robust service-based applications that allow for rapid change and growth.

Course Objectives

Upon successful completion of this course, students will be able to:
  • Understand the concepts of Service Oriented Architectures how they relate to JEE
  • Apply SOA analysis and design processes to real-world problems
  • Relate a design to the JEE technical architecture
  • Recognize and use the various tiers that are supported in JEE
  • Understand and use basic design patterns within JEE applications and architectures
  • Relate to the entire process and implementation of a service-based implementation of a business process using JEE

Course Audience

This is an intermediate to advanced-level JEE training course, geared for designers and architects that need to relate real problems to JEE-based solutions.

Course Prerequisites

Attendees should have practical experience developing basic JEE applications.

Course Syllabus

  1. SOA Overview
    • Service Defined
    • SOA Defined
    • Organizational Framework
    • Technical Framework
    • Orchestration
    • Reusability
    • Services vs. SOA
    • SOA in the past
    • What is new in SOA
    • Business impact/ROI
    • Myths/Reality
    • Adoption issues
  2. SOA: the Business Proposition
    • Web services standards
    • ESBs
    • Leveraging business processes
    • Challenge to adoption
    • The SOAD Process
    • Roles and Skills
  3. SOA: an Architectural Perspective
    • SOA Design Principles
    • RPC vs. REST
    • Web services, SOAP, and WSDL
    • Architectural Issues
    • SOA Maturity Model
  4. SOA: a Development Perspective
    • The SOAD Process
    • Architecture
    • OO/UML
    • Services, operations and data
    • Policies
    • W3C standards
    • Web services standards
    • Testing
  5. Service-Oriented Architecture
    • Principles
    • Business Process-driven development
    • Roles
    • Messaging
    • Transactions
    • Security
    • Business modeling
    • Design issues
    • EAI
    • ESB
    • Web services
    • RPC vs. REST
    • Web services, SOAP, and WSDL
    • Integrating legacy applications
    • Extending the lifetime of legacy apps
    • External integration
    • Governance
    • What needs to be governed and what is already governed?
    • Governing IT vs. SOA
    • Continuous improvement
    • Strategies
  6. The Requirements Capture Phase
    • Use-Cases are covered to get a complete picture of a Software Development process that delivers Components for your technical environment
    • Understand how to gather system requirements
    • Introduce Use-Cases for the other lessons on component and solution delivery
    • Describe a way of documenting non-functional requirements
  7. SOA Analysis
    • Use cases
    • Identifying services
    • Operations and data formats
    • Error conditions
    • Service reusability
    • Identifying processes
    • Best practices
  8. SOA Design
    • Business process modeling
    • XML and XML Schema
    • Asynchronous services
    • Callbacks
    • Messaging
    • Non-blocking calls
    • Best practices
  9. JEE Packaging
    • Get a complete technical overview of the JEE Platform
    • Recap how each tier is addressed in JEE
    • Recap the architectural role of each of the technologies
    • Recap the concept of the EAR and the deployment descriptors
    • Understand / recap the relationship between JEE and Web Services
    • List the supporting technologies (JMX, JACC, JTA, etc.)
    • List the different versions of JEE and the related versions and APIs
    • Understand the relationships between JEE, SOA, and ESBs
  10. (JEE) Design Patterns Summary
    • JEE Business Tier Pattern: Model Façade and JPA
    • JEE Business Tier Pattern: Composite Entity
    • JEE Business Tier Pattern: Business Object
    • JEE Business Tier Patterns: Session Facade
    • JEE Integration Patterns: Service Activator
    • Understand how motivations of certain J2EE Patterns have changed with the transition to JEE.
  11. Presentation Tier
    • List the architectural responsibilities of a Servlet and a JSP
    • Understand the role of the Web Container
    • Recap Servlet implementation
    • Recap JSP implementation
    • Understand the architectural role of JavaServer Faces
    • Understand the architectural position of Web 2.0 technologies
    • Recap an Web Application and the web.xml
  12. Web Services Overview
    • Crossing Boundaries
    • What are Web Services?
    • Six Key Components
    • Web Services Characteristics
    • Web Services Architecturally
    • Technology Comparison
    • Architectural Perspective
    • Web Services Enable Decoupling
    • Many Web Services Challenges
    • Secure Services
    • Spec and Standard Evolution
    • Web Services Interoperability Organization
    • WS-I Has Many Deliverables
    • Basic Profile 1.0 Consists of:
    • Has > 100 Requirements and Suggestions
    • .NET Platform & .NET Web Services
    • Java and Web Services
  13. Web Services, Java, and JEE
    • XML and Java APIs at a Glance
    • XML Signature
    • XML Digital Signatures
    • XML Encryption
    • JAXP
    • JAXB
    • JAX-WS
    • SAAJ
    • JAX-WSA and XWSS
    • Web Services APIs
    • Web Services for JEE (JSR109)
    • JEE and Web Services
    • Web Services Metadata
    • Web Services Stacks at a Glance
    • WSIT
    • Apache Axis2
    • JBossWS
    • JWSDP
    • WebSphere WS
    • Spring-WS
    • Key Features
  14. XML, Namespaces, & Schema
    • What is XML?
    • XML Can Provide Application-Specific Information
    • Content: XML Document Syntax Rules
    • Structure: A Document Type Definition
    • XML Transformation to HTML
    • XML Separates Structure, Content and Format
    • TriveraTunes Purchase Order
    • Content as MarkUp
    • Tell Parser That Text is Data
    • Use Predefined Entities
    • Well-Formed and Valid XML Documents
    • Why Are These Definitions Important?
    • XML Namespaces
    • Name Collision – Example
    • Inter-Organization Name Collisions
    • W3C’s Solution: Namespaces
    • Uniform Resource Indicator
    • Declaring a Namespace
    • Namespace Scope
    • Parsers Use URI, Not the Alias
    • Default Namespace
    • Attributes and Namespaces
    • Example of Namespaces
    • Namespaces Best Practices
    • Benefits From Valid XML
    • W3C XML Schemas
    • Impacts of Schemas
    • General Form of an XML Schema
    • Elements, Attributes, and Types
    • Simple Schema and XML Document
    • Element Definitions
    • Corresponding XML Schema
    • Simple Types - Primitive Datatypes
    • Restricting Simple Types: Facets
    • Complex Types Bring More to Validation
    • Repetition Control
    • Restricting Simple Types
    • Complex Types Can be Derived
    • Derivation by Extension
    • Extension of Phone Number
    • Associating Schemas with XML Instances
    • Using XML Schema with Namespaces
    • Namespaces Provide Thread of Connection
    • Schema Defines a Target Namespace
    • XML Doc Uses Schema-Defined Namespace
    • schemaLocation Links Namespace to Location
    • Relating Schemas to XML
  15. XML in Java - JAXP and JAXB
    • XML Parsers Are Complex and Powerful
    • Parsers Are Integral to XML Processing
    • Parsers and API’s
    • Parser Generates DOM, Then Hands to App
    • Parsing With a DTD or Schema
    • Many Options to Consider
    • XML and Java
    • Security Concerns Relative to Parsing
    • Bridging Application Data and XML
    • JAXP: Java API for XML Processing
    • JAXP and Transformations
    • Challenges to Mapping XML
    • Generating XML is Nondeterministic
    • JAXB: Binding XML to Java
    • JAXB 2.0 Incorporated Changes
    • JAXB 2.0 and Java Versions
    • Defining the Rules in JAXB
    • Turning Rules into Java Classes
    • Using the Generated Classes
    • Creating Content
    • Some JAXB Type Bindings
    • XML Schema for List of Items
    • Corresponding Class Interface
    • A Word About Validation
  16. WSDL Overview
    • Describing Web Services
    • WSDL in Practice
    • WSDL Extensibility
    • WSDL/SOAP Namespaces
    • WSDL Elements
    • WSDL Anatomy
    • definitions element
    • documentation element
    • types element
    • portType and operation
    • binding element
    • port and service elements
    • Looking Ahead – WSDL 2.0
  17. JAX-WS Overview
    • JAX-WS
    • JAX-WS Introduction
    • JAX-WS Architecture
    • JAX-WS vs. RMI
    • What about JAX-RPC?
    • JAX-WS Under the Hood
    • JAX-WS Basics
    • JAX-WS Features
    • Web Service Annotation Examples
    • JAX-WS Programming Model
    • JAX-WS Handlers
  18. Working with JAX-WS
    • JAX-WS Service
    • JAX-WS Development Process
    • Bottom-up Building of a Web Service
    • Top-Down Building of a Web Service
    • JAX-WS Client
    • Types of JAX-WS Clients
    • JAX-WS Basic Client Operations
    • Static Web Service Client
    • Dynamic JAX-WS Client
    • DII JAX-WS Client
    • SOAP Handlers
    • Handlers Applied Via Declaration
  19. XML Signature and Encryption
    • Cryptography Addresses Many Aspects of Security
    • Common Solutions to Big Three
    • XML Challenges
    • XML Signature
    • XML Digital Signatures
    • XML Signature Usage
    • Standard For Digital Signature
    • XML Encryption
    • XML Encryption Usage
    • XML Encryption Protects Data
  20. WS-Security
    • Securing a Web service
    • Web Service Security Exposures
    • Transport-Level Security
    • Secure Sockets Layer (SSL)
    • SSL In Action
    • When to Use Transport-Level Security
    • Message-Level Security
    • Web Services Security Roadmap
    • WS-Security Enables Interoperability
    • Security Tokens; Example of Security Token
    • Message Authentication
    • XML Signature and Encryption
    • Picture is Evolving
    • What is XWSS?
    • XWSS Provides Many Functions
  21. Securing Untrusted Input
    • Input Data Attacks
    • Protecting a Web Service
    • Tenacious D
    • Defending a Web Service
    • Responding to Error State
    • Best Practices for Untrusted Data
    • Defenses to Consider
    • Additional Types of Attacks