but what if i don't want to or can't modify the interface class? If its in a pre-existing jar my application is using which i can't modify, is there something other than the org.oasisopen.sca.annotation.Remotable annotation?
On 4/28/09, scatest4 <[email protected]> wrote: > Thanks, that fixed it. > > > > On 4/28/09, ant elder <[email protected]> wrote: >> On Mon, Apr 27, 2009 at 9:15 AM, scatest4 <[email protected]> wrote: >>> I'm doing some prototyping with Tuscany and now trying the 2.0 M2 >>> release. I've used the tuscany-contribution-jar archetype to create a >>> simple jar and that works ok, then i added binding.ws to the >>> helloworld.composite: >>> >>> <service name="HelloworldService"> >>> <binding.ws/> >>> </service> >>> >>> and it now fails to start. Is this not working yet or what am i doing >>> wrong? >>> >>> SEVERE: No interface contract for HelloworldComponent/HelloworldService >>> Exception in thread "main" java.lang.reflect.InvocationTargetException >>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >>> at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) >>> at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) >>> at java.lang.reflect.Method.invoke(Unknown Source) >>> at >>> org.apache.tuscany.sca.launcher.LauncherMain.invokeMainMethod(LauncherMain.java:114) >>> at >>> org.apache.tuscany.sca.launcher.LauncherMain.main(LauncherMain.java:55) >>> Caused by: org.oasisopen.sca.ServiceRuntimeException: >>> org.oasisopen.sca.ServiceRuntimeException: No interface contract for >>> HelloworldComponent/HelloworldService >>> at >>> org.apache.tuscany.sca.node.impl.NodeImpl.<init>(NodeImpl.java:259) >>> at >>> org.apache.tuscany.sca.node.impl.NodeFactoryImpl.createNode(NodeFactoryImpl.java:42) >>> at org.apache.tuscany.sca.node.NodeMain2.main(NodeMain2.java:42) >>> ... 6 more >>> Caused by: org.oasisopen.sca.ServiceRuntimeException: No interface >>> contract for HelloworldComponent/HelloworldService >>> at >>> org.apache.tuscany.sca.node.impl.NodeImpl.analyzeProblems(NodeImpl.java:743) >>> at >>> org.apache.tuscany.sca.node.impl.NodeImpl.configureNode(NodeImpl.java:578) >>> at >>> org.apache.tuscany.sca.node.impl.NodeImpl.<init>(NodeImpl.java:256) >>> ... 8 more >>> >> >> I suspect that is because the service interface is not marked as >> remotable, could you try adding the @Remotable annotation to the >> HelloWorldService interface: >> >> import org.oasisopen.sca.annotation.Remotable; >> @Remotable >> public interface HelloworldService { >> >> If this fixes the problem we should look at giving a better error >> message when this happens and perhaps changing the archetypes to make >> the service interfaces remotable as the default. >> >> ...ant >> >
