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: Re: [sca-j] Introspecting services offered by a Java implementation classwithout @Service



Raymond,
Minor nit: the @OneWay annotation applies to a method, not to an interface.  Your example should be updated to show this.

In your example, these services are local.  Issue JAVA-3 has proposed a new annotation @Local that could be used on Interface1and Interface2 to allow them to be recognized by the introspection algorithm.

I believe this discussion can be handled under JAVA-3 and there is no need to create a new issue.

    Simon

Simon C. Nash, IBM Distinguished Engineer
Member of the IBM Academy of Technology
Tel. +44-1962-815156  Fax +44-1962-818999



Raymond Feng <rfeng@us.ibm.com>

25/08/2008 17:25

To
sca-j@lists.oasis-open.org
cc
Subject
[sca-j] Introspecting services offered by a Java implementation class without @Service






Hi,


In Java Component Implementation Specification 1.00, we have the following statements:


143 1.2.1.3. Introspecting services offered by a Java implementation

144 In the cases described below, the services offered by a Java implementation class may be determined

145 through introspection, eliding the need to specify them using @Service. The following algorithm is used to

146 determine how services are introspected from an implementation class:

147 If the interfaces of the SCA services are not specified with the @Service annotation on the implementation

148 class, it is assumed that all implemented interfaces that have been annotated as @Remotable are the

149 service interfaces provided by the component. If none of the implemented interfaces is remotable, then by

150 default the implementation offers a single service whose type is the implementation class.


What if an interface is annotated with SCA annotations such as @OneWay or @Callback?


For example:


public class MyServiceImpl implements Interface1, Interface2 {

}


@Callback(CallbackInterface.class)

public interface Interface1 {

}


@OneWay

public interface Interface2 {

}


By the spec, there is only one service named MyServiceImpl. But isn't it more natural that we should find two SCA services: Interface1 and Interface2? Please clarify.


Thanks,

Raymond


Raymond Feng
Senior Software Engineer, Open Source SCA Development, Apache Tuscany Project

IBM Bay Area Lab, 1001 E Hillsdale Blvd, Suite 400, Foster City, CA 94404, USA
E-mail
:
rfeng@us.ibm.com, Notes: Raymond Feng/Burlingame/IBM, Tel: 650-645-8117, T/L: 367-8117
Web & Blog
:
www.enjoyjava.com - The Cyber Cafeteria to Enjoy Java








Unless stated otherwise above:
IBM United Kingdom Limited - Registered in England and Wales with number 741598.
Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU








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