You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tuscany.apache.org by "Simon Laws (JIRA)" <tu...@ws.apache.org> on 2008/03/13 18:56:24 UTC
[jira] Closed: (TUSCANY-2076) Basic component service operation
doesn't seem to match spec
[ https://issues.apache.org/jira/browse/TUSCANY-2076?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Simon Laws closed TUSCANY-2076.
-------------------------------
Resolution: Fixed
Ok, so looking at the Java Component Implementation spec sections 1.2.1.2 and 1.2.1.3 it looks like this is working as specified, i..e
Interface with @Remotable: ServiceName = interface name
interface without @Remotable: ServiceName = implementation class name
A little confusing but this seems to be a false alarm on my part.
> Basic component service operation doesn't seem to match spec
> ------------------------------------------------------------
>
> Key: TUSCANY-2076
> URL: https://issues.apache.org/jira/browse/TUSCANY-2076
> Project: Tuscany
> Issue Type: Bug
> Components: Java SCA Core Runtime
> Affects Versions: Java-SCA-1.1
> Environment: Windows XP SP2, IBM JDK V5
> Reporter: Simon Laws
> Assignee: Vamsavardhana Reddy
> Fix For: Java-SCA-1.2
>
>
> samples/calculator uses very basic and minimal SCA confiburation and works just find. However is you go and extend the composite file slightly changing
> <component name="CalculatorServiceComponent">
> <implementation.java class="calculator.CalculatorServiceImpl"/>
> <reference name="addService" target="AddServiceComponent" />
> <reference name="subtractService" target="SubtractServiceComponent" />
> <reference name="multiplyService" target="MultiplyServiceComponent" />
> <reference name="divideService" target="DivideServiceComponent" />
> </component>
> To read
> <component name="CalculatorServiceComponent">
> <implementation.java class="calculator.CalculatorServiceImpl"/>
> <service name="CalculatorService">
> <binding.sca/>
> </service>
> <reference name="addService" target="AddServiceComponent" />
> <reference name="subtractService" target="SubtractServiceComponent" />
> <reference name="multiplyService" target="MultiplyServiceComponent" />
> <reference name="divideService" target="DivideServiceComponent" />
> </component>
> Then I get the following output...
> 13-Mar-2008 11:19:52 org.apache.tuscany.sca.assembly.builder.impl.CompositeBuilderImpl$1 problem
> WARNING: Service not found for component service: CalculatorServiceComponent/CalculatorService
> 13-Mar-2008 11:19:52 org.apache.tuscany.sca.assembly.builder.impl.CompositeBuilderImpl$1 problem
> WARNING: Service not found for component service: CalculatorServiceComponent/CalculatorService
> 13-Mar-2008 11:19:53 org.apache.tuscany.sca.core.assembly.CompositeActivatorImpl activate
> WARNING: Skipping component service not defined in the component type: CalculatorServiceComponent#CalculatorService
> If I then go and force the component to recognize the service by adding an @Service annotation to the calculator component implementation by changing
> public class CalculatorServiceImpl implements CalculatorService {
> to read
> @Service(CalculatorService.class)
> public class CalculatorServiceImpl implements CalculatorService {
> It then works again.
> I believe the spec implies that the basic service definition in the composite file should be valid without the need to further annotate the service implementation.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org