This Confluence has been LDAP enabled, if you are an ASF Committer, please use your LDAP Credentials to login. Any problems file an INFRA jira ticket please.

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 4.0

Java EE Integration

Wiki MarkupThis page is used to track the status of implementation of SCA Java EE Integration Spec v1.0 \ [1\] and Tuscany integration with Geronimo.

Latest update

The latest Geronimo Tuscany plugin we have can be installed on Geronimo v2.1.3. The plugin supports SCA reference and property injection in JSP, Servlet, Servlet Filters, Listeners, JSF Managed Beans, Session EJB and Message-Driven EJB. For instructions on installing the plugin and running sample applications, follow this link .

...

  1. Recognize JEE application as an SCA composite by default without any support for annotation or wiring
    Scenario covered: Tuscany will create a composite based on JEE component model. This will enable JEE application to be used by other components in the SCA domain or call other components.
  2. local assembly and the application composite covered in 1c, 2c, and 3c in the table below
  • support wiring across JEE applications
  • support using SCA components within a JEE application
    Scenario covered: Enables a JEE component to participate in the assembly which can include JEE and none-JEE services. Wiring gets defined in the application composite xml file.
  1. support SCA annotations in JEE components
    See 1a and 2b below, so things like reference and property injection into EJBs, Servlets etc
    Scenario covered: It enables a JEE component to be recognized as an SCA component to participate in a composition. Without SCA annotation, JEE component would still participate in a composition, but we would continue using JEE way to define services, references and properties. You would loose the ability to have none-JEE bindings, for example web20 bindings or to consume none-jee services.
  2. support implementation.jee, implementation.ejb, and implementation.web for coarse-grained wiring
    ie a reference in a JSP in a webapp war wired to an EJB in a separate EAR and a BPEL process deploy as a non-JEE SCA contributions
    or a reference in a non-JEE SCA component wired to JEE artifacts
  3. support SCA policies such as transaction and security within the JEE container
  4. ability to deploy Non-JEE artifact SCA contributions and have them run in the container context
    ie an SCA contribution containing a SCA service using binding.ws would use the container http infrastructure
  5. support using the JEE container infrastructure where appropriate
    ie the various Tuscany host-xxx modules, a service with binding.ws uses the existing HTTP connector, binding.jms uses the messaging provider,
    and support for the various QoS aspects using JEE capabilities

...

Feature

Section(s) in Java EE Spec v1.0

Priority

Map to Daytrader

Comments

Status

1. WAR

5.4.5

 

 

implementation.web

 

a) Web application to consume services; @Reference/@EJB resulting in references.

5.4.1

1

Daytrader web application

Inject SCA Service in web component

Prototype code in the Tuscany runtime-tomcat module that supports injecting references into Servlets, Filters and Event listeners using the @Reference annotation.

b) WAR with componentType side file

5.4.3

2

 

Some of component type information comes from a component type file META-INF/web.componentType

 

c) web.composite as a composite implementation

6.1.3

4

 

 

 

d) JSP tag libraries

5.4.4

1

Daytrader web application

Inject SCA Service in web component

Taglib to include the SCA tags and define the reference field with the reference tag.

 

 

 

 

 

 

2. EJB Applications

5.1.6, 5.2.4

 

 

implementation.ejb

 

a) EJB application to provide services exposed into SCA Domain

5.1, 5.1.1

1

TradeBean

Business interfaces of session beans as services

 

b) EJB application to consume services; @Reference/@EJB resulting in references

5.1.2, 5.1.3, 5.1.4, 5.2.1, 5.2.2, 5.2.3

1

TradeBean

Remote EJB references and references to SCA services

 

c) An EJB application's ejb-jar.composite to be used as composite implementation

6.1.3

 

 

 

 

d) EJB with a componentType side file

5.1.5

3

 

Some of component type information comes from a component type file META-INF/<bean-name>.componentType

 

e) Services by Stateful Session Beans as conversational services

5.1.9

2

 

 

 

f) @OneWay

5.1.10

2

TradeBrokerMDB

Non-blocking service operations

 

g) @Callback

5.1.11

2

TradeBrokerMDB

callback service

 

 

 

 

 

 

 

3. Java EE Archives (SCA-enhanced)

 

 

 

 

 

a) META-INF/sca-contribution.xml

6.1.1

 

 

Contribution to SCA Domain

 

b) META-INF/sca-contribution-generated.xml

6.1.1

 

 

 

 

c) Application composite

6.1.3

 

 

 

 

d) Local assembly: Additional implementation types, binding and wiring capabilities

6.1.2

 

 

 

 

e) Domain-level assembly

6.1.4

 

 

 

 

 

 

 

 

 

 

4. Java EE Applications as implementation

7

 

 

implementation.jee

 

a) Pure Web App as implementation

7.1.2

1

Daytrader web application

 

Code to model WAR as an SCA contribution available in Tuscany contribution-jee module

b) Pure EJB App as implementation

7.1.1

1

Daytrader ejb application

 

Code to model EJB jar as an SCA contribution available in Tuscany contribution-jee module

c) Pure JEE App as implementation

7.1.3

1

 

 

Code to model EAR as an SCA contribution available in Tuscany contribution-jee module

d) SCA-enhanced Web App as implementation w includeDefaults

7.2

 

 

 

 

e) SCA-enhanced EJB App as implementation w includeDefaults

7.2

 

 

 

 

f) SCA-enhanced JEE App as implementation w includeDefaults

7.2

 

 

 

 

 

 

 

 

 

 

5. Leveraging Tuscany/SCA

 

 

 

 

 

a) Web2.0 clients

 

 

 

 

 

b) Expose JEE components with JSONRPC bindings

 

 

 

 

 

 

 

 

 

 

 

6. Transcations

5.3

 

 

Mapping EJB Transaction Demarcation to SCA Transaction Policies

 

 

 

 

 

 

 

7. Miscellaneous

 

 

 

 

 

a) Import and Export of SCA artifacts

6.1.5

 

 

As described in the assembly spec

 

b) Resolution of WSDL and XSD artifacts

6.1.6

 

 

Ref: OASIS SML Catalogs 1.1 spec

 

References

Wiki Markup\[1\] [http://www.osoa.org/download/attachments/35/SCA_JAVAEE_Integration_V100.pdf?version=1] \
[2\] [http://cwiki.apache.org/GMOxDOC21/daytrader.html]