[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Newsgroup Home]
[news.eclipse.stp] Re: Reusing SCA Service Implementations

Oops,

I clicked "Reply" without checking the forum.
Sorry for the spam...

Mickael

Mickael Istria a écrit :
Hi Michael, all

Michael Gebhart a écrit :
Hi,

when using the SCA editor to create my service architecture, I can easily implement services. I can write a java class and set it as the implementation of a component.

Yes, it is easy to design composites and write implementations for components with SCA editor.



My question is: Can I only use this implementation within a SCA runtime? We have a typical application server running and don't wanna provide a SCA runtime. But we'd like to use SCA for modeling the architecture.

I think that the implementation you wrote does not depend on SCA runtime, it only depends on SCA annotations (@Reference, @Property...), but those annotation don't change your class logic, thus you can use your classes out of SCA context (but you'll have to provide the jar containing SCA references to resolve annotations).


But the question that comes to me ie "why don't you use a SCA runtime?". I understand that there may be conflicts because with some applications server, but it is worse trying...


Or do we have to manually adapt the implementation that it works within a typical WS-compliant java application server?

I can't help you on this topic.


Is the SCA way an alternative for the usual web service programming? Is it still necessary to write the web services as we have done it before? (Using JAX-WS etc.)

SCA is an alternative for generic (Java-friendly) service programming. I often use it to expose WebServices simply by creating a java component that exposes its service through a binding.ws, and it works quite well without brainstorming:


<composite ...>
   <component name="myComponent">
      <implementation.java class="package.ServiceImpl" />
      <service name="myService">
          <interface.java interface="package.IService" />
          <binding.ws uri="http://localhost:8081/endpoint"; />
      </service>
   </component>
</composite>


Then, you have a web service published on localhost:8081/endpoint, and your SCA runtime made everything necessary to get it working, you simply wrote the composite, the interface, and the implementation (only business code)



Greetings

Michael

Regards, Mickael