Skip to main content

By clicking Submit, you agree to the developerWorks terms of use.

The first time you sign into developerWorks, a profile is created for you. Select information in your developerWorks profile is displayed to the public, but you may edit the information at any time. Your first name, last name (unless you choose to hide them), and display name will accompany the content that you post.

All information submitted is secure.

  • Close [x]

The first time you sign in to developerWorks, a profile is created for you, so you need to choose a display name. Your display name accompanies the content you post on developerworks.

Please choose a display name between 3-31 characters. Your display name must be unique in the developerWorks community and should not be your email address for privacy reasons.

By clicking Submit, you agree to the developerWorks terms of use.

All information submitted is secure.

  • Close [x]

Service Data Objects, WorkManager, and Timers

IBM and BEA Joint Specifications Overview

Contributors:  IBM, BEA Systems

Summary:  In response to requests from customers and joint Independent Software Vendor (ISV) partners, IBM and BEA are collaborating on specifications for programming models and APIs for Java 2 Enterprise Edition (J2EE) application servers that provide programmers with simpler and more powerful ways of building portable server applications. Three specifications have been published under royalty-free terms and will be implemented in upcoming releases of WebSphere Application Server and of the WebLogic Platform.

Date:  30 Nov 2005 (Published 25 Nov 2003)
Level:  Advanced

Activity:  17079 views
Comments:  

In response to requests from customers and joint Independent Software Vendor (ISV) partners, IBM and BEA are collaborating on specifications for programming models and APIs for JavaTM 2 Enterprise Edition (J2EE) application servers that provide programmers with simpler and more powerful ways of building portable server applications. Three specifications have been published under royalty-free terms and will be implemented in upcoming releases of WebSphere Application Server and of the WebLogic Platform.

Service Data Objects: Updated to version 2.0.1

Get the latest version of the SDO specification.

Service Data Objects: Simplifying the programming model for data access

Service Data Objects (SDO) is designed to simplify and unify the way in which applications handle data. Using SDO, application programmers can uniformly access and manipulate data from heterogeneous data sources, including relational databases, XML data sources, Web services, and enterprise information systems. For more information about the goals and architecture of SDO, see the whitepaper "Next-Generation Data Programming: Service Data Objects."

SDO is based on the concept of disconnected data graphs. A data graph is a collection of tree-structured or graph-structured data objects. Under the disconnected data graphs architecture, a client retrieves a data graph from a data source, mutates the data graph, and can then apply the data graph changes back to the data source.

The task of connecting applications to data sources is performed by data mediator services. Client applications query a data mediator service and get a data graph in response. Client applications send an updated data graph to a data mediator service to have the updates applied to the original data source. This architecture allows applications to deal principally with data graphs and data objects.

SDO enables both a static (or strongly typed) programming model and a dynamic (or loosely typed) programming model. This enables a simple programming model without sacrificing the dynamic model needed by tools and frameworks.

SDO also provides a metadata API, which allows applications, tools, and frameworks to introspect the data model for a data graph. The SDO metadata API unifies data-source-specific metadata APIs to enable applications to handle data from heterogeneous data sources in a uniform way.

As of June 2005, an updated and extended version of the SDO Specification is available - Version 2.0. This has been enhanced in a number of areas, incorporating feedback received from the original version 1.0 specification

Download the Service Data Objects Version 2.0 specification

You can download the complete Service Data Objects Version 2.0 specification, the Javadoc files, and the Interface Source files by clicking on the following links:

Note: The latest version of the Service Data Objects specification is now available.

DescriptionDateAccess method
Service Data Objects specification (Latest version) CurrentHTTP Web page
Service Data Objects specification (Version 2.0, PDF) June 2005FTP download
SDO 2.0 Javadoc Files June 2005FTP download
SDO 2.0 Interface Source Files June 2005FTP download

Download the Service Data Objects Version 1.0 specification

You can download the complete Service Data Objects 1.0 specification, the Javadoc files, and the Interface Source files by clicking on the following links:

DescriptionDateAccess method
Service Data Objects specification (Microsoft Word) November 2003FTP download
Service Data Objects specification (PDF) November 2003FTP download
SDO Javadoc Files November 2003FTP download
SDO Interface Source Files November 2003FTP download

Also, read "Next-Generation Data Programming: Service Data Objects," a whitepaper jointly prepared by IBM and BEA, for additional information on the Service Data Objects API.

Provide feedback to this specification.

Note: This specification is being made available on an RF basis (as detailed in the Copyright notice of the specification); therefore, IBM does not require an implementation license. If you prefer, however, you may request a license.

WorkManager and Timers: Utilities for J2EE programmers

The Work Manager for Application Servers and Timer for Application Servers specifications provide J2EE programmers with often-needed utilities.

The Work Manager for Application Servers specification provides an API for application-server supported concurrent execution of work items. This enables J2EE-based applications, including servlets and EJB apps, to schedule work items for concurrent execution. This will provide greater throughput and better response time. After an application submits work items to a Work Manager for concurrent execution, the application can gather the results. The Work Manager provides common "join" operations, such as waiting for any or all work items to complete. The Work Manager for Application Servers specification provides an application-server-supported alternative to using lower-level threading APIs, which are inappropriate for use in managed environments, as well as being too difficult to use for most applications.

The Timer for Application Servers specification provides an API for using timers in an application-server supported fashion. This enables J2EE-based applications, including servlets, EJB apps, and JCA Resource Adapters, to schedule future timer notifications and receive timer notifications. The Timer for Application Servers specification provides an application-server supported alternative to using the J2SE java.util.Timer class, which is inappropriate for use in managed environments.

Download the Timer and Work Manager for Application Servers specification

You can download the full document of the Timer and WorkManager specification and the accompanying Javadoc by clicking on the following links:

DescriptionDateAccess method
Timer and Work Manager for Application Servers specification (Microsoft Word) May 2004FTP download
Timer and Work Manager Javadoc files May 2004FTP download
Timer and Work Manager Interface source files May 2004FTP download

Note: This update of the Timer and Work Manager for Application Servers specification combines the previously separate Timer and Work Manager into one specification.

Provide feedback to this specification.

Note: This specification is being made available on an RF basis (as detailed in the Copyright notice of the specification); therefore, IBM does not require an implementation license. If you prefer, however, you may request a license.


Resources

Comments



Help: Update or add to My dW interests

What's this?

This little timesaver lets you update your My developerWorks profile with just one click! The general subject of this content (AIX and UNIX, Information Management, Lotus, Rational, Tivoli, WebSphere, Java, Linux, Open source, SOA and Web services, Web development, or XML) will be added to the interests section of your profile, if it's not there already. You only need to be logged in to My developerWorks.

And what's the point of adding your interests to your profile? That's how you find other users with the same interests as yours, and see what they're reading and contributing to the community. Your interests also help us recommend relevant developerWorks content to you.

View your My developerWorks profile

Return from help

Help: Remove from My dW interests

What's this?

Removing this interest does not alter your profile, but rather removes this piece of content from a list of all content for which you've indicated interest. In a future enhancement to My developerWorks, you'll be able to see a record of that content.

View your My developerWorks profile

Return from help

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=1
Zone=SOA and web services
ArticleID=158910
SummaryTitle=Service Data Objects, WorkManager, and Timers
publish-date=11302005