[
https://issues.apache.org/jira/browse/TUSCANY-3652?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12900269#action_12900269
]
Mike Edwards commented on TUSCANY-3652:
---------------------------------------
Simon,
1. This applies to 2.x - it is an OASIS spec requirement
2. The component must be stateless - no injection of callbacks should be done
for COMPOSITE scope:
"The @Callback annotation MUST NOT appear on a setter method or a field of a
Java implementation class that has COMPOSITE scope. [JCA90057] "
> Callbacks need to be set on service invocation
> ----------------------------------------------
>
> Key: TUSCANY-3652
> URL: https://issues.apache.org/jira/browse/TUSCANY-3652
> Project: Tuscany
> Issue Type: Bug
> Components: Java SCA Java Implementation Extension
> Reporter: Brent Daniel
> Assignee: Brent Daniel
>
> The OASIS java caa spec requires callbacks to be injected only when the type
> of the callback field or setter method is the same as the callback interface
> specified on the service. For example, if there are two services in a
> component:
> <service name="service1">
> <interface.java interface="test.Service1"
> callbackInterface="test.Service1Callback"/>
> </service>
>
> <service name="service2">
> <interface.java interface="test.Service2"
> callbackInterface="test.Service2Callback"/>
> </service>
> When "service1" is invoked, only callbacks of type Service1Callback should be
> set on the implementation class. Callbacks of type Service2Callback should be
> null.
> Currently, the Tuscany runtime is doing all proxy injection once at the
> component level. We need to move callback injection to service invocation so
> that we can inject the appropriate callback proxies for the current service
> and inject null for callbacks that don't apply to the current service.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.