[
https://issues.apache.org/jira/browse/TUSCANY-2524?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12620061#action_12620061
]
Raymond Feng commented on TUSCANY-2524:
---------------------------------------
We activate the component references in a lazy fashion, In case that a
reference is not used (either by @Reference injection, or
ComponentContext.getService()), there is no need to activate the callback
service since no callback can be made any way.
I think this behavior is reasonable, do you agree?
> Callback service not being activated for binding.ws with multiple references
> ----------------------------------------------------------------------------
>
> Key: TUSCANY-2524
> URL: https://issues.apache.org/jira/browse/TUSCANY-2524
> Project: Tuscany
> Issue Type: Bug
> Components: Java SCA Assembly Model
> Affects Versions: Java-SCA-1.3
> Reporter: Lou Amodeo
> Assignee: Raymond Feng
>
> I am seeing an issue where callback services are not being properly
> activated. My scenario has 2 referernces to the same service that implement
> a callback. What I am seeing is the 1st referecne has a service created and
> activated, the 2nd reference has a service created but not activated. I see
> this code in CompositeActivatorImpl that skips over the activation:
> public void activate(RuntimeComponent component, RuntimeComponentService
> service) {
> if (service.getService() == null) {
> if (logger.isLoggable(Level.WARNING)) {
> logger.warning("Skipping component service not defined in the
> component type: " + component.getURI()
> + "#"
> + service.getName());
> }
> return;
> The 2nd reference does not have a callback service active.....
> SCDL:
> <composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
> targetNamespace="http://helloworld"
> name="helloworldwsclient">
> <component name="HelloWorldClientComponent">
> <implementation.java class="helloworld.HelloWorldServiceComponent"/>
>
> <reference name="helloWorldService">
> <interface.java interface="helloworld.HelloWorldService"
> callbackInterface="helloworld.HelloWorldCallback"/>
> <binding.ws
> wsdlElement="http://soa/sca/hello-ws-async#wsdl.port(HelloWorldService/HelloWorldSoapPort)"/>
> <callback>
> <binding.ws
> wsdlElement="http://soa/sca/hello-ws-async#wsdl.binding(HelloWorldCallbackSoapBinding)"/>
> </callback>
> </reference>
> <reference name="helloWorldService2">
> <interface.java interface="helloworld.HelloWorldService"
> callbackInterface="helloworld.HelloWorldCallback"/>
> <binding.ws
> wsdlElement="http://soa/sca/hello-ws-async#wsdl.port(HelloWorldService/HelloWorldSoapPort)"/>
> <callback>
> <binding.ws
> wsdlElement="http://soa/sca/hello-ws-async#wsdl.binding(HelloWorldCallbackSoapBinding)"/>
> </callback>
> </reference>
> </component>
> </composite>
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.