InfoQ

InfoQ

News

My Bookmarks

Login or Register to enable bookmarks for unlimited time.

The content has been bookmarked!

There was an error bookmarking this content! Please retry.

Strengthening the Alliance Between Java EE and SCA

Posted by Boris Lublinsky on Apr 03, 2008

Sections
Enterprise Architecture
Topics
SOA Appliance ,
WS Standards ,
SOA ,
SOA Platforms
Tags
Service Component Architecture ,
Java EE

The Open SOA collaboration has just published a 0.9 draft of the SCA Java EE Integration specification. This specification defines the integration of SCA and Java EE within the context of a Java EE application, the use of Java EE components as service component implementations, and the deployment of Java EE archives either within or as SCA contributions. It defines a model of using SCA assembly in the context of a Java EE runtime that enables integration with Java EE technologies on a fine-grained component level as well as use of Java EE applications and modules in a coarse-grained large system approach.

The specification defines support for the following scenarios of Java EE and SCA integration:

  • Consumption of SCA-exposed services from Java EE components. The specification defines how a web component (a servlet or a JSP) can consume a service implemented by a SCA service component.
  • Usage of Session Beans as Service Component Implementations. The specification defines how to use a session bean as service component implementations. Using RMI, JMS and web services traffic.
  • Exposure of Enterprise Applications into an SCA domain. The specification defines relationships between SCA and Java EE Assembly models and describes a deployment model for SCA contributions that provides cross-enterprise application assembly capabilities when layered over Java EE.
  • Usage of Recursive SCA Assembly in Enterprise Applications. The specification describes how SCA Assembly can be used to provide means for defining sophisticated application assembly for enterprise applications.
  • Deployment of SCA Components as a Part of a Java EE application. The specification defines a deployment model for components implemented in “foreign” technologies (for example BPEL) as part of a Java EE application, taking advantage of whatever tooling and infrastructure support exists for the deployment and life cycle management of Java EE applications.
  • Usage of Java EE Archives as Service Component Implementation. The specification defines creation of high level SCA applications that contain multiple Java EE archives, through wiring of Java EE archives to each other and to components implemented using other technologies. This use-case requires a high-level view of the Java EE application as a single SCA component, providing services and consuming references as a single component.

Additionally, support for SCA annotations in EJB classes or session bean interfaces is defined.

This specification aims to further strengthen relationships between Java EE and SCA, putting SCA in a better position for becoming a prevalent technology for SOA implementation in Java EE. One of the major motivations for doing so is that currently, the Java community is still split between SCA and JBI.  The JSR 316: Java Platform, Enterprise Edition 6 (Java EE 6) Specification is still considering both, but has not made a definite decision which way to go.While the majority of vendor’s application servers support SCA, open source implementation are still mostly based on JBI.

The standardization process for SCA is currently driven by OASIS and OSOA and still lacks full support by Java.

  • This article is part of a featured topic series on SOA
It's not JBI versus SCA by Peter Walker Posted
TLA-itis by Jim Leonardo Posted
  1. Back to top

    It's not JBI versus SCA

    by Peter Walker

    This misrepresents the technical reality. There's really very little overlap between JBI and SCA and as described for example at the OSOA site here.

    The two can be complementary. An SCA system can be built atop a Java EE platform augmented by JBI.

    JBI is all about pluggability in the infrastructure not directly the creation of service networks.

    Peter.

  2. Back to top

    TLA-itis

    by Jim Leonardo

    Just a general comment... SCA is probably not in quite common enough use yet to throw in a headline without defining in the body of the article.

    SCA: Society for Creative Anachronism? Scottish Canoe Association? Software Communications Architecture? Service Component Architecture?

Educational Content

New-age Transactional Systems - Not Your Grandpa's OLTP

John Hugg discusses high volume transaction processing applications with high and low frequency profiles, and how VoltDB can be used for that purpose.

Cool Code

Kevlin Henney examines code samples to see what can be learned from them starting from the premise that one won’t write great code unless he knows how to read it.

Collaboration: At the Extremities of Extreme

Jason Ayers share the observations he made watching a team of developers collaborating in real time on the same code base, pushing XP, pair programming and continuous integration to their extremes.

Yesod Web Framework

Michael Snoyman presents Yesod, a web framework written in Haskell and containing a web server, templating, ORM, libraries (templating, gravatar, etc.).

Transactions without Transactions

Richard Kreuter and Kyle Banker on how to avoid classical RDBMS transactional systems by using compensation mechanisms, transactional messaging or transactional procedures.

Attila Szegedi on JVM and GC Performance Tuning at Twitter

Attila Szegedi talks about performance tuning Java and Scala programs at Twitter: how to approach GC problems, the importance of asynchronous I/O, when to use MySQL/Cassandra/Redis, and much more.

10 tips on how to prevent business value risk

One category of risk that project teams need to ensure they address is business value failure – delivering a product that fails to provide value for the business investor.

Interview: Software Systems Architecture: Working With Stakeholders Using Viewpoints and Perspectives

InfoQ spoke to the authors of Software Systems Architecture on a couple of new topics, the System Context viewpoint and Agile, which have been added to the second edition.