You are previewing WebSphere Adapter Development.
O'Reilly logo
WebSphere Adapter Development

Book Description

This IBM Redbooks publication shows you how to develop a JCA resource adapter based on IBM WebSphere Adapter Architecture. The custom adapter we build in this book implements J2EE Connector architecture (JCA), version 1.5, supporting managed, bidirectional connectivity between EISs and J2EE components in WebSphere Process Server.

The book is divided in two parts:
* The components of a WebSphere Adapter
* How to implement this adapter in an integrated scenario

WebSphere Adapter Architecture supports Service-Oriented Architecture (SOA), providing you with the ability to develop and modify integration applications dynamically. With SOA, you can also integrate existing applications with newer applications so that they work together transparently.

WebSphere Process Server V6.0.1 is a comprehensive SOA integration platform based on WebSphere Application Server V6. You can use WebSphere Process Server to develop and execute standards-based, component-based business integration applications.

Finally, we show you how to expose this adapter as an SCA service and use it with WebSphere Process server V6.0.1.

Please note that the additional material referenced in the text is not available from IBM.

Table of Contents

  1. Figures
  2. Tables
  3. Notices
    1. Trademarks
  4. Preface
    1. The team that wrote this redbook
    2. Become a published author
    3. Comments welcome
  5. Part 1: Adapter development theory
  6. Chapter 1: Introduction and adapter overview
    1. 1.1: Scope and objectives of this book
    2. 1.2: Introduction to IBM On Demand Business
      1. Business attributes
      2. Technology attributes
      3. Service-oriented architecture
      4. Service-oriented architecture and IBM On Demand Business
      5. The on demand operating environment and the Enterprise Service Bus
    3. 1.3: WebSphere Process Server
      1. Architectural model
      2. Programming model
      3. Service Component Architecture
      4. Handling data
      5. Composition: Business Process Execution Language
      6. Other service implementation types
      7. For more information
    4. 1.4: WebSphere Integration Developer and Rational Application Developer
      1. Integration developer
      2. Software (J2EE) developer
    5. 1.5: Adapters in process integration
  7. Chapter 2: Adapter basics
    1. 2.1: Introduction to adapters
    2. 2.2: Overview of JCA resource adapters
      1. Motivation for JCA adapters
      2. J2EE Connector Architecture overview
      3. Resource adapter packaging
    3. 2.3: IBM WebSphere Adapters
    4. 2.4: WebSphere Business Integration Adapters
    5. 2.5: IBM WebSphere Adapter versus JCA resource adapter
  8. Chapter 3: Service Data Objects
    1. 3.1: Data: Business Objects and SDO
      1. SDO design points
      2. Some SDO concepts
      3. Business objects and the business object framework
    2. 3.2: WebSphere Adapter business object model
      1. After-images versus deltas
      2. Verbs
      3. Verbs versus operations
      4. Business object naming
      5. Blank, Ignore, and Null properties in business objects
    3. 3.3: Business object structure
      1. Single-cardinality relationships
      2. Single-cardinality relationships and data without ownership
      3. Multiple-cardinality relationships in business objects
    4. 3.4: Application-specific information (ASI)
      1. Application-specific information at the business-object level
      2. Application-specific information at the Verb level
      3. Application-specific information at the attribute level
  9. Chapter 4: Outbound request processing
    1. 4.1: Outbound request processing
    2. 4.2: Adapter clients
    3. 4.3: Service input and output data
    4. 4.4: Adapter service interface
    5. 4.5: EIS service import
    6. 4.6: Adapter configuration properties
    7. 4.7: Application sign-on
    8. 4.8: Connection management
    9. 4.9: Outbound interaction
    10. 4.10: Standard outbound operations and processing
      1. ApplyChanges operation
      2. After-Image Create operation
      3. After-Image Update operation
      4. After-Image UpdateWithDelete operation
      5. After-Image Delete operation
      6. Retrieve operation
      7. RetrieveAll operation
      8. Custom operations
    11. 4.11: Command Pattern
      1. Command Pattern processing snapshot objects
      2. Command Pattern processing delta objects
      3. How to use the Command Pattern
    12. 4.12: Transaction support
  10. Chapter 5: Inbound processing and events
    1. 5.1: Inbound processing overview
      1. Inbound processing flow
      2. Inbound components
    2. 5.2: JCA message inflow contract
    3. 5.3: Event management
      1. Event overview
      2. Event management process
      3. Event management classes
      4. Once and only once delivery
      5. Error handling in event management
    4. 5.4: Service Component Architecture and inbound processing
      1. Adapter Clients
      2. Service input and output data
      3. Adapter service interface
      4. EIS service export
    5. 5.5: Inbound processing development steps
      1. Define the inbound properties
      2. Implement the connection with the EIS event store
      3. Analyze the need for a custom Event class
      4. Implement the custom EventStore class
      5. Modify the ActivationSpec subclass
      6. Modify the ResourceAdapter subclass
      7. Implement an event store or not
  11. Chapter 6: The theory of Enterprise Service Discovery
    1. 6.1: EMD definitions
    2. 6.2: Enterprise Metadata Discovery overview
    3. 6.3: Architecture
      1. J2CA components related to EMD
      2. Relationships between components
      3. J2EE Roles of Enterprise Metadata Discovery
    4. 6.4: Process of generating service by using ESD
    5. 6.5: Process of developing EMD for a resource adapter
  12. Chapter 7: Exceptions, logging, and tracing
    1. 7.1: Adapter exception handling
      1. Exception creation during adapter development
      2. Exception generation at runtime
    2. 7.2: Logging and tracing
      1. Logging
      2. Tracing
      3. Message files
      4. Business events
  13. Part 2: Custom adapter development
  14. Chapter 8: Setting up the development environment
    1. 8.1: Installing WebSphere Integration Developer V6.0
    2. 8.2: WebSphere Adapter Toolkit overview
    3. 8.3: Installing WebSphere Adapter Toolkit V6.0.0.1
    4. 8.4: Create a Hello World adapter
      1. Service Component Architecture import for outbound operation
      2. Export application EAR file
      3. Dependent files
      4. Configure J2C authentication alias
      5. Install the HellpWorld application
      6. Configure server
      7. Test HelloWorld adapter
    5. 8.5: Importing a sample adapter into your development environment
  15. Chapter 9: The sample business scenario
    1. 9.1: Sample scenario overview
    2. 9.2: Sample integration scenario overview
    3. 9.3: RedMaintenance application overview
      1. Application environment
      2. Entity Relationship model
      3. Installing and setting up the RedMaintenance application
      4. RedMaintenance API
  16. Chapter 10: Adapter design and specification
    1. 10.1: Adapter design technical assessment
    2. 10.2: RedMaintenance adapter design and specification
      1. Architecture overview
      2. WebSphere adapter foundation classes
      3. RedMaintenance adapter features
  17. Chapter 11: Implementing outbound request processing
    1. 11.1: Start the development project
    2. 11.2: Identify application properties and operations
      1. Connection properties
      2. Outbound operations
    3. 11.3: Generate outbound stub classes
    4. 11.4: Add dependent jar files
    5. 11.5: Implement connection to EIS
      1. Implement RMConnection class
      2. Implement RMConnectionFactory class
      3. Implement RMManagedConnectionFactory class
      4. Implement RMManagedConnection class
    6. 11.6: Implement outbound operations
      1. Implement RMInteraction class
      2. Implement RMInteractionSpec class
      3. Create ObjectNaming utility class
      4. Create ObjectConverter utility class
      5. Implement RMCommandFactoryImpl class
      6. Implement RMBaseCommand class
      7. Implement RMCreateCommand class
      8. Implement RMUpdateCommand class
      9. Implement RMRetrieveCommand class
      10. Implement RMDeleteCommand class
      11. Implement RMResourceAdapter
      12. Implement outbound log messages
      13. Update MANIFEST.MF file
    7. 11.7: Create temporary SCA artifacts
      1. Create business objects with application-specific information
      2. Creating RedMaintenance ASI schema
      3. Create discovery-service.xml file
      4. Create Apartment business object graphs
      5. Create RedMaintenance outbound interface
      6. Create SCA EIS service import file
      7. Exporting the adapter
    8. 11.8: Test outbound operations
    9. 11.9: Configure logging and tracing levels for debugging
  18. Chapter 12: Implementing inbound processing and event handling
    1. 12.1: Generate the inbound stub classes
      1. Start a new adapter project
      2. Using an existing adapter project
    2. 12.2: Identify inbound events and properties
      1. Inbound events
      2. Inbound properties
    3. 12.3: Add dependent jar files
    4. 12.4: Connection to EIS for inbound processing
    5. 12.5: Implement the RMEvent subclass
    6. 12.6: Implementation of RMEventStore class
      1. Event filtering
      2. Polling events
      3. Deleting events
      4. Updating events
      5. Retrieving events
      6. Retrieving business objects
      7. Transactional Considerations
      8. Full code of RMEventStore
    7. 12.7: Revision of the RMActivationSpec class
    8. 12.8: Change of RMResourceAdapter class
    9. 12.9: Creation of the SCA artifacts
      1. Provide the basic business objects and related files
      2. Create the RedMaintenance inbound interface
      3. Create the SCA EIS export file
      4. Create the SCATestComponent
      5. Exporting the adapter
    10. 12.10: Test inbound operations
      1. Sample stand-alone RedMaintenance test client
      2. Setup integration test client
      3. Run stand-alone RedMaintenance test client
      4. Observe the effects of these inbound events
    11. 12.11: Configure logging and tracing levels for debugging
  19. Chapter 13: Implementing Enterprise Metadata Discovery
    1. 13.1: Analyze EIS metadata before EMD implementation
    2. 13.2: Use WebSphere Adapter Toolkit to generate EMD stub classes
      1. Start a new adapter project
      2. Using an existing adapter project
      3. Create the deployment descriptor for EMD
      4. Application-specific information schema
      5. Understand utility APIs provided by EMD tooling
      6. Implement EMD stub classes
      7. Testing the EMD implementation by running it in WID
  20. Appendix A: Additional material
    1. Locating the Web material
    2. Using the Web material
      1. How to use the Web material
  21. Abbreviations and acronyms
  22. Related publications
    1. IBM Redbooks
    2. Online resources
    3. How to get IBM Redbooks
    4. Help from IBM
  23. Index
  24. Back cover