You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tuscany.apache.org by "Raymond Feng (JIRA)" <tu...@ws.apache.org> on 2007/07/30 21:18:54 UTC

[jira] Assigned: (TUSCANY-1336) Tuscany does not support injecting a Callable Reference when using the @Callback annotation

     [ https://issues.apache.org/jira/browse/TUSCANY-1336?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Raymond Feng reassigned TUSCANY-1336:
-------------------------------------

    Assignee: Simon Laws

I breifly reviewed the patch and I think it's on the right path. Simon, can you help to apply it since you are working on this area?

Thanks,
Raymond

> Tuscany does not support injecting a Callable Reference when using the @Callback annotation
> -------------------------------------------------------------------------------------------
>
>                 Key: TUSCANY-1336
>                 URL: https://issues.apache.org/jira/browse/TUSCANY-1336
>             Project: Tuscany
>          Issue Type: Bug
>          Components: Java SCA Java Implementation Extension
>    Affects Versions: Java-SCA-0.90
>            Reporter: Mark Combellack
>            Assignee: Simon Laws
>             Fix For: Java-SCA-Next
>
>         Attachments: CallableReferenceObjectFactory.java
>
>
> Tuscany does not appear to support injecting of CallableReferences with the @Callback annotation.
> According to page 11 (lines 682 and 683) of the SCA Java Common Annotations and APIs version 1.0, I should be able to do the following:
>    @Callback
>    protected CallableReference<MyCallback> callback;
> I downloaded the SCA 0.90 release and updated the simple-callback sample and added the following code to MyServiceImpl:
>     @Callback
>     protected CallableReference<MyServiceCallback> m_CallbackReference;
> When the code is run, I get the following exception:
>      [java] Exception in thread "main" org.osoa.sca.ServiceRuntimeException: org.osoa.sca.ServiceRuntimeException: org.apache.tuscany.sca.contribution.service.ContributionResolveException: org.apache.tuscany.sca.implementation.java.introspect.impl.IllegalCallbackReferenceException: Callback type does not match a service callback interface
>      [java]     at org.apache.tuscany.sca.host.embedded.SCADomain.createNewInstance(SCADomain.java:263)
>      [java]     at org.apache.tuscany.sca.host.embedded.SCADomain.newInstance(SCADomain.java:68)
>      [java]     at simplecallback.SimpleCallbackClient.main(SimpleCallbackClient.java:29)
>      [java] Caused by: org.osoa.sca.ServiceRuntimeException: org.apache.tuscany.sca.contribution.service.ContributionResolveException: org.apache.tuscany.sca.implementation.java.introspect.impl.IllegalCallbackReferenceException: Callback type does not match a service callback interface
>      [java]     at org.apache.tuscany.sca.host.embedded.impl.DefaultSCADomain.<init>(DefaultSCADomain.java:106)
>      [java]     at org.apache.tuscany.sca.host.embedded.SCADomain.createNewInstance(SCADomain.java:229)
>      [java]     ... 2 more
>      [java] Caused by: org.apache.tuscany.sca.contribution.service.ContributionResolveException: org.apache.tuscany.sca.implementation.java.introspect.impl.IllegalCallbackReferenceException: Callback type does not match a service callback interface
>      [java]     at org.apache.tuscany.sca.implementation.java.xml.JavaImplementationProcessor.resolve(JavaImplementationProcessor.java:121)
>      [java]     at org.apache.tuscany.sca.implementation.java.xml.JavaImplementationProcessor.resolve(JavaImplementationProcessor.java:49)
>      [java]     at org.apache.tuscany.sca.contribution.processor.ExtensibleStAXArtifactProcessor.resolve(ExtensibleStAXArtifactProcessor.java:102)
>      [java]     at org.apache.tuscany.sca.assembly.xml.BaseArtifactProcessor.resolveImplementation(BaseArtifactProcessor.java:387)
>      [java]     at org.apache.tuscany.sca.assembly.xml.CompositeProcessor.resolve(CompositeProcessor.java:466)
>      [java]     at org.apache.tuscany.sca.assembly.xml.CompositeProcessor.resolve(CompositeProcessor.java:65)
>      [java]     at org.apache.tuscany.sca.contribution.processor.ExtensibleStAXArtifactProcessor.resolve(ExtensibleStAXArtifactProcessor.java:102)
>      [java]     at org.apache.tuscany.sca.assembly.xml.CompositeDocumentProcessor.resolve(CompositeDocumentProcessor.java:83)
>      [java]     at org.apache.tuscany.sca.assembly.xml.CompositeDocumentProcessor.resolve(CompositeDocumentProcessor.java:43)
>      [java]     at org.apache.tuscany.sca.contribution.processor.ExtensibleURLArtifactProcessor.resolve(ExtensibleURLArtifactProcessor.java:73)
>      [java]     at org.apache.tuscany.sca.contribution.service.impl.ContributionServiceImpl.processResolvePhase(ContributionServiceImpl.java:317)
>      [java]     at org.apache.tuscany.sca.contribution.service.impl.ContributionServiceImpl.addContribution(ContributionServiceImpl.java:254)
>      [java]     at org.apache.tuscany.sca.contribution.service.impl.ContributionServiceImpl.contribute(ContributionServiceImpl.java:119)
>      [java]     at org.apache.tuscany.sca.host.embedded.impl.DefaultSCADomain.<init>(DefaultSCADomain.java:104)
>      [java]     ... 3 more
>      [java] Caused by: org.apache.tuscany.sca.implementation.java.introspect.impl.IllegalCallbackReferenceException: Callback type does not match a service callback interface
>      [java]     at org.apache.tuscany.sca.implementation.java.introspect.impl.ServiceProcessor.visitField(ServiceProcessor.java:137)
>      [java]     at org.apache.tuscany.sca.implementation.java.introspect.ExtensibleJavaClassIntrospector.introspect(ExtensibleJavaClassIntrospector.java:99)
>      [java]     at org.apache.tuscany.sca.implementation.java.xml.JavaImplementationProcessor.resolve(JavaImplementationProcessor.java:119)
>      [java]     ... 16 more
> It appears that it does not understand using CallableReference and @Callback

-- 
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