OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

sca-j message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: JAVA-21 - Clarify Request Scope lifetime


Hi,

 

I’ve written the following proposal with the intent of starting discussions on this issue before the next SCA-J Face to face.

 

http://www.osoa.org/jira/browse/JAVA-21

 

 

 

From reading through the JIRA and mailing lists, there appears to be different viewpoints on what Request Scope is for. These include:

 

  • Scope for when a request enters the SCA Runtime that ends when the request synchronously completes
  • Shared Context for a series of requests
  • Should be replaced with some way of propagating a Conversation between Components
  • A pointless feature that should be removed.

 

All discussion on this issue stopped in March 2008.

 

 

I would like to propose the following possible solutions (personally, I prefer option 2)

 

 

Option 1 - Remove Request Scope

 

Simply remove it.

 

 

 

 

Option 2 – Enhance the description of Request Scope so it becomes a Shared Context for an invocation over a Remotable interface

 

The description of when the request scope ends it a bit unclear since it does not detail what happens when the request goes through another Remotable interface.

 

I would like to propose the following guidelines:

 

  • A new Request scope is created when a request is made on a Remotable interface and lasts until the thread synchronously processing the request completes.
  • Request scope is shared over invocations that are on local interfaces (i.e. not marked as @Remotable)
  • A request over a Remotable interface will result in the existing Request scope not being shared and a new Request scope being created regardless of whether the Remote interface is actually local or remote (i.e. on the same JVM).

 

 

Proposal:

 

Original wording (section 2.2. lines 141 to 144):

“The lifecycle of request scope extends from the point a request on a remotable interface enters the SCA runtime and a thread processes that request until the thread completes synchronously processing the request. During that time, all service requests are delegated to the same implementation instance of a request-scoped component.”

 

 

New wording – changes in bold:

 

“The lifecycle of request scope extends from the point a request on a remotable interface is made and a thread processes that request until the thread completes synchronously processing the request. During that time, all service requests that are over local interfaces are delegated to the same implementation instance of a request-scoped component. Any requests that go over a Remotable interface will result in a new request scope being created.”

 

 

 

 

Thanks,

 

Mark

Mark Combellack| Software Developer| Avaya | Eastern Business Park | St. Mellons | Cardiff | CF3 5EA | Voice: +44 (0) 29 2081 7624 | mcombellack@avaya.com

 



[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]