Hi,

This is great. I would like to see a bit more integration between SCA and 
JAX-RS to leverage the best of both worlds. Here are some ideas I'm 
experimenting:

1) If the component that exposes the REST binding is a JAX-RS 
application/resource, we can register a JAX-RS runtime specific servlet within 
the binding.rest provider. This way, the JAX-RS runtime will take care of all 
the JAX-RS related handling, including URL mapping and dependency injection.

2) If the component service interface is an interface using JAX-WS annotations, 
we can generate a JAX-RS resource class on the fly. The resource class in turn 
delegates the methods to an SCA proxy that represents the target component 
service. This way, we can define a "RESTful" interface for any SCA component 
implemented using non-JAXRS technologies.

For 1 and 2, we can register a JAX-RS provider that can use Tuscany's 
databinding framework to handle resource representations beyond the built-in 
types supported by the JAX-RS runtime.

3) Otherwise, we either use customized WireFormat and OperationSelector to deal 
with the URL mapping and data representations to make the component RESTful.

Thanks,
Raymond
________________________________________________________________ 
Raymond Feng
[email protected]
Apache Tuscany PMC member and committer: tuscany.apache.org
Co-author of Tuscany SCA In Action book: www.tuscanyinaction.com
Personal Web Site: www.enjoyjava.com
________________________________________________________________

On May 3, 2010, at 7:15 PM, Luciano Resende wrote:

> I have started working on a REST Binding, and the basic functionality
> is now available.  The current functionality is documented at [1] or
> [2] and some scenarios are available as interface-java-jaxrs and
> binding-rest-runtime unit tests.
> 
> I'll continue to work some additional functionality on the next couple
> weeks on the following areas :
>  - Allow RPC style calls over HTTP GET operation
>  - Tide up cache control functionality and allow declarative cache
> control with possible field injection
>  - Investigate possible integration between implementation.jaxrs and
> binding.rest
>  - Investigate possible integration with existent JAX-RS runtime to
> provide JAX-RS parsing/matching of JAX-RS annotations
>  - Provide a store sample application based on RESTFull services
> 
> [1] 
> https://cwiki.apache.org/confluence/display/TUSCANYxDOCx2x/SCA+Java+binding.rest
> [2] http://tuscany.apache.org/documentation-2x/sca-java-bindingrest.html
> 
> 
> -- 
> Luciano Resende
> http://people.apache.org/~lresende
> http://twitter.com/lresende1975
> http://lresende.blogspot.com/

Reply via email to