tuscany-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Simon Nash <n...@apache.org>
Subject Re: No interface contract for HelloworldComponent/HelloworldService
Date Sat, 02 May 2009 10:56:24 GMT
ant elder wrote:
> On Tue, Apr 28, 2009 at 11:19 PM, scatest4 <scatest4@gmail.com> wrote:
>> 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?
>>
> 
> The very latest OASIS specifications add a remotable attribute to the
> scdl <interface> element which should do what you need, we've not yet
> implemented it but it will be in one of the next Tuscany releases.
> 
>    ...ant
> 
> 
You can extend the interface with a "stub" interface that is
defined as remotable, then have your implementation specify the
stub interface as its service interface.  For example, if there is
an external interface belonging to xyz.com that you can't change,
such as:

  package com.xyz;
  public interface HelloWorldService {
      ...
  }

then you could create the interface

  package mypackage;
  import org.oasisopen.sca.annotation.Remotable;
  import com.xyz.HelloWorldService;
  @Remotable
  public interface HelloWorldServiceRemotable extends HelloWorldService {
  }

and write your implementation as:

  package mypackage;
  public class MyServiceImpl implements HelloWorldServiceRemotable {
      ...
  }

   Simon



Mime
View raw message