Agreed!

andy

At 21:41 03/10/2006, Jim Marino wrote:
Using lower-level technologies such as JPA, JDBC, etc. to me are
really about solving different use cases. For example, the
EntityManager API does not represent an "application service
contract"; it is a low-level technology one (I don't like the term
"business service contract" but it can be used instead of
"application service contract"). This could apply to a host of things
as mentioned below by Jeremy, including WorkManagers, JDO, etc. I
view this as analogous to newing up java.io.File in an
implementation: importing java.io.File is part of the
implementation's contract with the container (JVM, the SCA runtime
making java.io available) but it is not a "service" in the sense of
"PriceEngine". In our case, instead of newing up EntityManager, we
are using an annotation so that the container may choose an instance
to inject.

The fact that Tuscany uses SCA "services" and assembly to constitute
the runtime is opaque to the application. Tuscany could have chosen a
different implementation strategy, for example using PicoContainer,
Spring, or Java "new", etc., but the application does not need this
knowledge.  I believe it is important to maintain this divide and
that we do not cross namespaces.   In other words, it should not be
possible to address a system service *directly* from an application
implementation.

_______________________________________________________________________
Notice:  This email message, together with any attachments, may contain
information  of  BEA Systems,  Inc.,  its subsidiaries  and  affiliated
entities,  that may be confidential,  proprietary,  copyrighted  and/or
legally privileged, and is intended solely for the use of the individual
or entity named in this message. If you are not the intended recipient,
and have received this message in error, please immediately return this
by email and then delete it.

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to