You are on page 1of 8

Web Service Overview

Service Oriented Architecture (SOA) SOA and Web Services Web Services Web Service Standards Standard Managers Java and Web Services How do you do SOA and Web services?

XML Syntax

An XML History HTML XML vs. HTML W3C and the XML Specification XML Syntax: The Bricks Elements Attributes Attributes vs. Element XML Miscellaneous Well-Formed

XML Namespaces

XML Name Conflicts Namespaces Qualified and Unqualified Names Global and Local Scope

XML Schema

XML Schema Specifications A Simple Schema Example XML Schema and Namespaces The Schema Document Schema Root Element Element Definitions Complex Element Definitions Attribute Definitions Element and Attribute References Abstract Data Types Target Namespaces Importing vs. Including Schemas Validating Documents

Schema Best Practices and Patterns

Designing Good Schemata Design Goals Naming Conventions Enumerations Element vs. Type Element vs. Attribute Global vs. Local


SOAP

Qualified vs. Unqualified Default Namespace Miscellaneous Schema Design Tips and Conventions Common Schema Design Patterns


WSDL

SOAP Specifications SOAP Basics The SOAP Envelope The SOAP Header The SOAP Body SOAP Faults SOAP Protocols


UDDI

What is WSDL? WSDL Specification The WSDL Document WSDL by Example WSDL <definitions> WSDL Abstract <portType> <message> <types> WSDL Concrete <binding> Style and Use <service> How is WSDL Used? WS-1 Testing Tools

UDDI Basics UDDI Servers Is a UDDI registry required? Registry System BusinessEntity BusinessService BindingTemplate tModel PublisherAssertion Interacting with a UDDI Registry

VersioninG

Classifying Changes Handling Backward Compatible Change Handling Non-Backward Compatible Change Behavioral Change WSDL Versioning

Java Web Service APIs

Java and XML Processing API Overview JAX-WS SAAJ JAXB JAXP JAXR JAX-RS

XML to Java Mapping


JAX-WS

How does WSDL and schema map to Java? Development Approaches Mapping Tools Target Namespace Mapping WSDL portType Mapping Type Mapping

Bottom-Up Java Web Service Development JAX-WS Annotations JAXB Annotations POJO Requirements Top-Down Java Web Service Development JAX-WS Web Service as an EJB Enterprise Deployment

Java Web Service Clients


Handlers

Java Web Service Clients Dynamic Proxy Clients Dispatch Clients Asynchronous Clients Tracking SOAP Traffic

JAX-WS Handlers SOAPHandlers LogicalHandlers Handler Chains Managing Handlers

RESTful Services

What are RESTful Services? RESTful Services and Java Jersey Setup JAX-RS Services JAX-RS, JAXB and JSON Resource Lifecycle JAX-RS Resource Deployment JAX-RS Clients

Advanced XML Schema (APPENDIX)

Non-atomic Simple Types Restrictions and Facets Extensions Groups Defining the type of Element Content Any Commenting Schema

DOM and SAX (APPENDIX)


Overview

What is the Document Object Model? Document Object Model Specifications DOM Interfaces Begin Working with DOM Document Interface Node Interface NodeList Interface NamedNodeMap Interface Event-Based Parsing SAX Creating a Simple Java SAX Application Limitation of SAX Benefits of SAX Benefits of DOM


Lifecycle

Java EE and Web Applications Perspectives: Servlets and JSP Perspectives: MVC Frameworks Perspectives: AWT and JFC JSF Value Proposition JSF Configuration Issues with JSP and JSF Facelets

The JSF Request/Response Cycle Lifecycle Phases Phase Listeners The FacesContext Class Who Does What Partial Request Cycles

UI Components

The UIComponent Class Behavioral Interfaces The Core and HTML Tag Libraries Relationship to CSS ID, Client ID, and Label UISelectItem(s)

Navigating the UI Tree The binding Attribute

Page Navigation

View Selection Navigation Rules Implicit Navigation Problems with POSTback Post/Redirect/Get Support for HTTP GET Conditional Navigation

Managed Beans


Scopes

JavaBeans and JSF Backing Beans Configuring Managed Beans @ManagedBean and Related Annotations The Unified Expression Language Value and Method Expressions Implicit Objects

Managed-Bean Scopes Lifecycle Annotations View Parameters The Flash

Dependency Injection


Facelets

Managed Properties Values, Lists, and Maps Using Dynamic Expressions Dependencies and Bean Scopes The @ManagedProperty Annotation

Migrating from JSP View Definition Languages Facelets Tag Libraries Writing and Using Custom Tags

Events and Listeners

JSF Event Model Event Types and Timing Event Queueing ActionEvent and ActionListener Action Methods Connecting Controllers to Beans ValueChangeEvent and ValueChangeListener

Deferring Event Processing Limitations of FacesListeners

Lists and Tables

Working with Collections Why We Don't Use <c:anything> <c:anyMore> <ui:repeat> vs. <c:forEach> <h:dataTable> Defining Columns and Facets One Command Per Row Reading the Row Number Pseudo-Maps Working with Persistent Data Concurrency and Caching Limiting the Scope of Queries Paging

Converters

The Converter Interface Life of a Datum Standard Converters Custom Converters The @FacesConverter Annotation Timing of Conversion Representing Persistent Objects by ID

Validators

The Validator Interface Standard Validators Using Regular Expressions Producing Error Messages Message Keys Presenting Error Messages Posting Error Messages from Anywhere Custom Validators The @FacesValidator Annotation Validating Multiple Inputs JSR-303 Support: "Bean Validation"

Resources

Resource Libraries Deploying Images, Scripts, and Stylesheets Addressing Resources

Composites

Limitations of Custom Tags Composite Components Encapsulation Deploying and Using Composites Interface and Implementation


Ajax

Impact on the UI Tree Attributes Retargeting

What is Ajax? The XMLHttpRequest Object Ajax and the JSF Lifecycle Using <f:ajax> execute and render Attributes Ajax Listeners

The JSF JavaScript API

The JSF JavaScript API Triggering Ajax Requests Refining <f:ajax> with Callbacks onevent and onerror Attributes The Ajax Request/Response Process Using Hidden Inputs Other JavaScript Functions

ntertech's expert Java security consultants can ensure your applications are secure using field proven, best practices. Our consultants can help you:

Architect, design, and develop a secure Java application Use free open source frameworks to prevent vulnerabilites such as data entry, cross-site hijacking Use proven frameworks, such as Spring Security, for abstracting application from authenication/authorization store and providing authorization features Identify security concerns Use cryptography, encoding, and encryption Understand and correctly implment digital signatures and digital certificates Use the Java policytool, security API's, and Java Cryptography Extensions (JCE) Implment SSL, EJB security, and Java Authentication and Authorization Service (JAAS) Effectively use container security and servlet authentication Troubleshoot Java security issues Use tools to automatically scan applications for vulnerabilities

ntertech delivers expert Struts consulting in our suite of Java-related consulting services. Our expert consultants can help you:

Architect, design, and develop a tiered Software Architecture Implement a well designed Model View Controller (MVC) design Use best practices in presentation, business, and data tier design Understand and implement the Controller Layer, View, and Form Bean Use Tags and leverage the Standard Tag Library Avoid common problems with Sub-modules Internationalize (I18N) your Struts application Connect to database sources using JDBC Implement validation and use the Validator Package Configure Struts Troubleshoot your Struts application Optimize the performance of your Struts application

Intertech expert consultants can help you:

Determine which Spring modules apply for your application, such as: o Spring core framework, including ORM, transactions, AOP

o o o o o o

Spring MVC Spring Web Flow project extension Spring Security Spring Integration Spring Batch Spring Test

Optimize Spring configuration Use tools to minimize build and deploy with the Spring Framework Architect and design applications that make best use of the Spring Framework Learn and use Aspect Oriented Programming (AOP) and declarative Spring transactions Implement unit testing using Spring's unit testing framework Effectively use Spring controllers, handler mappings, and view resolvers Use MVC for non-HTML document rendering Implement and optimize work flows using Spring Web Flow

If you need to implement Java Message Service (JMS), rely on Intertechs expert consulting services. Intertechs seasoned consultants will help you:

Know where to implement JMS in your enterprise application architecture Architect, design, develop, and deploy your JMS-based solution Correctly choose and implement publish-subscribe vs. point-to-point solution Fully understand the JMS API Learn how to send/receive messages using the JMS API Implement automated message receiver(s) using Message Driven Beans Leverage Springs JMS Integration Framework Create message driven POJOs in Springs JMS Troubleshoot JMS performance issues

You might also like