[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: NEW ISSUE: Clarify what a Component Implementation can do with threads
TARGET: Java CAA DESCRIPTION: The current SCA-J specification does not mention any
restrictions regarding threading that a developer must comply with when
implementing a SCA Component. The SCA-J specification is silent on whether a
component implementation can create new threads, kill threads, suspend threads,
etc. Implementations of SCA-J SCA Runtime are likely to use
ThreadLocals to implement accessing the RequestContext, security credentials,
Conversation IDs on Service Proxies, etc. If the developer is allowed to create
their own threads, then these ThreadLocals may not function as intended. The EJB 3 specification contains the following comment
regarding threads (page 546 of ejb-3_0-fr-spec-ejbcore.pdf [1]) The enterprise bean must
not attempt to manage threads. The enterprise bean must not attempt to start,
stop, suspend, or resume a thread, or to change a thread’s priority or
name. The enterprise bean must not attempt to manage thread groups. These
functions are reserved for the EJB container. Allowing the enterprise bean to
manage threads would decrease the container’s ability to properly manage
the runtime environment. This issue is related to JAVA-61 which describes what the
Component Implementation can expect from the SCA Runtime for each Scope with regards
to threading. However, it is different since this issue describes what the SCA
Runtime can expect from the Component Implementation with regards to threads. PROPOSAL: Nothing concrete as yet but we have at least the following
options available to us for consideration: 1) Do nothing
– Leave the SCA-J specification as is and remain silent on threading 2) Restrict
threading (like EJB3) so that threads cannot be created, stopped, suspended,
etc 3) Allow
creation of new threads in SCA-J and describe how it works and what are the
restrictions [1] EJB 3 final Specifications - http://jcp.org/aboutJava/communityprocess/final/jsr220/index.html Mark Combellack| Software Developer| Avaya | |
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]