← Prev in month
← Prev in thread
Next in thread →
Next in month →
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 <>
25/08/2008 17:25
To
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: ,
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
← Prev in month
← Prev in thread
Next in thread →
Next in month →