You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tuscany.apache.org by "ant elder (JIRA)" <tu...@ws.apache.org> on 2006/08/22 10:55:18 UTC

[jira] Closed: (TUSCANY-615) The SCDL syntax for reference doesn't conform to SCA spec 0.95

     [ http://issues.apache.org/jira/browse/TUSCANY-615?page=all ]

ant elder closed TUSCANY-615.
-----------------------------

    Resolution: Fixed

applied

> The SCDL syntax for reference doesn't conform to SCA spec 0.95
> --------------------------------------------------------------
>
>                 Key: TUSCANY-615
>                 URL: http://issues.apache.org/jira/browse/TUSCANY-615
>             Project: Tuscany
>          Issue Type: Bug
>          Components: Java SCA Core
>            Reporter: Raymond Feng
>         Assigned To: Raymond Feng
>            Priority: Critical
>         Attachments: rfeng-scdl-fixed-1.txt, rfeng-scdl-fixed-2.txt, rfeng-scdl-fixed.txt, rfeng-scdl.txt
>
>
> With Rick check-in of r430621, I'm seeing the EchoBinding test case is failing with the 
> following exception:
> org.apache.tuscany.spi.loader.InvalidReferenceException: No target for 
> service  [ClientService]
>  at org.apache.tuscany.core.loader.ServiceLoader.load(ServiceLoader.java)
>  at org.apache.tuscany.core.loader.ServiceLoader.load(ServiceLoader.java:1)
>  at 
> org.apache.tuscany.core.loader.LoaderRegistryImpl.load(LoaderRegistryImpl.java:90)
>  at 
> org.apache.tuscany.core.implementation.composite.CompositeLoader.load(CompositeLoader.java:75)
>  at 
> org.apache.tuscany.core.implementation.composite.CompositeLoader.load(CompositeLoader.java:50)
>  at 
> org.apache.tuscany.core.loader.LoaderRegistryImpl.load(LoaderRegistryImpl.java:90)
>  at 
> org.apache.tuscany.core.loader.LoaderRegistryImpl.load(LoaderRegistryImpl.java:107)
>  at 
> org.apache.tuscany.core.implementation.composite.CompositeComponentTypeLoader.loadFromSidefile(CompositeComponentTypeLoader.java:46)
>  at 
> org.apache.tuscany.core.implementation.composite.CompositeComponentTypeLoader.load(CompositeComponentTypeLoader.java:38)
>  at 
> org.apache.tuscany.core.implementation.composite.CompositeComponentTypeLoader.load(CompositeComponentTypeLoader.java:20)
>  at 
> org.apache.tuscany.core.loader.LoaderRegistryImpl.loadComponentType(LoaderRegistryImpl.java:157)
>  at 
> org.apache.tuscany.core.deployer.DeployerImpl.load(DeployerImpl.java:111)
>  at 
> org.apache.tuscany.core.deployer.DeployerImpl.deploy(DeployerImpl.java:90)
>  at 
> org.apache.tuscany.core.launcher.Launcher.bootApplication(Launcher.java:171)
>  at org.apache.tuscany.test.SCATestCase.setUp(SCATestCase.java:63)
>  at echo.BootstrapTestCase.setUp(BootstrapTestCase.java:23)
>  at junit.framework.TestCase.runBare(TestCase.java:125)
>  at junit.framework.TestResult$1.protect(TestResult.java:106)
>  at junit.framework.TestResult.runProtected(TestResult.java:124)
>  at junit.framework.TestResult.run(TestResult.java:109)
>  at junit.framework.TestCase.run(TestCase.java:118)
>  at 
> org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:128)
>  at 
> org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
>  at 
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:460)
>  at 
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:673)
>  at 
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:386)
>  at 
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)
> I adjusted the scdl file per SCA 0.95 spec:
> <composite xmlns="http://www.osoa.org/xmlns/sca/1.0" name="echo.sample">
> <service name="ClientService">
> <interface.java class="echo.Client"/>
> <binding.echo/>
> <reference>Client</reference>
> </service>
> <component name="Client">
> <implementation.java class="echo.ClientImpl"/>
> <reference name="echoReference">EchoReference</reference>
> </component>
> <reference name="EchoReference">
> <interface.java interface="echo.Echo"/>
> <binding.echo/>
> </reference>
> </composite>
> Now the ServiceLoader.java is problematic because it assumes it'll get 
> "reference" before the "binding" which is not case per SCA 0.95 spec:
> <service name="xs:NCName" multiplicity="0..1 or 1..1 or 0..n or 1..n"?>*
> <interface/>
> <binding uri="xs:anyURI"?/>*
> <reference>wire-target-URI</reference>+
> </service>
> <component name="xs:NCName">*
> <implementation/>
> <property name="xs:NCName" source="sca:Property"?>*
> property-value
> </property>
> <reference name="xs:NCName"/>*
> wire-target-URI
> </reference>
> </component>
> The ComponentLoader.java cannot handle the reference element either since 
> the SCA spec 0.95 also use the element content instead of "target" 
> attribute.
> I attached a patch to fix the problem.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org