[seam-dev] Seam RESTEasy renamed to Seam REST
Jozef Hartinger
jharting at redhat.com
Fri Oct 29 12:14:02 EDT 2010
Thanks Lincoln, great ideas! The RESTEasy Client Framework also allows
reusing of JAX-RS annotated interfaces, so we can have an interface
@Path("/users")
public interface UserService
{
@GET
List<User> searchUsers(@QueryParam("search") String
query, at QueryParam("start") int start, @QueryParam("limit") int limit);
}
which is implemented by the server. Then on the client, we can reuse it
an simply do:
@Inject @RestService(url="http://example.com/users")
private UserService users;
...
List<User> jozefs = users.searchUsers("Jozef", 0, 20);
which gets translated to the following and sent to the server:
GET http://example.com/users?search=Jozef&start=0&show=20
The response is unmarshalled automatically.
I've opened https://jira.jboss.org/browse/SEAMREST-5 Feel free to add.
On 10/29/2010 03:43 PM, Lincoln Baxter, III wrote:
> Yes, exactly! Though I suppose if they are using RestEasy they will have
> this functionality by default, as you suggest. I wasn't thinking clearly
> when I wrote this, however. You are very correct. If RestEasy is already
> on the classpath, it should probably provide injection for web-service
> endpoints (via @Qualifer) annotations.
>
> @Inject @RestEndpoint
> private Endpoint<DataService> endpoint;
>
> The endpoint could then provide access to things like the HttpClient,
> the Request object, methods to invoke:
>
> endpoint.sendRequest();
> endpoint.getResponse();
>
> And would take care of the bootstrap / typing / (un)marshalling, etc...
>
> Pretty much a super-quick way of specifying a web-service endpoint and
> invoking it via RestEasy Client Framework (under the covers of course)
> If there's an easier way, then this wouldn't be needed, but that's my
> thought!
>
> --Lincoln
>
> On Fri, Oct 29, 2010 at 4:09 AM, Jozef Hartinger <jharting at redhat.com
> <mailto:jharting at redhat.com>> wrote:
>
> Do you mean making a fork of the client framework in seam-rest or
> providing an integration with it (available when RESTEasy is on
> classpath)? I'll add it to the project ideas page.
>
>
> On 10/27/2010 04:06 PM, Lincoln Baxter, III wrote:
>
> Excellent! I think that's a good call, and will help people adopt!
>
> Have we considered moving the RestEast Client Framework into Seam
> RestEasy, or at least pulling it in if we are not already? That
> might be
> another sweet feature to help wet people's appetite.
>
> Since we're no longer directly targeting RESTEasy, having a client
> consumer framework available to them would no longer be a
> "standard,"
> but it certainly would be nice.
>
> I think we should consider this if not already done.
> --Lincoln
>
> On Wed, Oct 27, 2010 at 6:29 AM, Pete Muir
> <pmuir at bleepbleep.org.uk <mailto:pmuir at bleepbleep.org.uk>
> <mailto:pmuir at bleepbleep.org.uk
> <mailto:pmuir at bleepbleep.org.uk>>> wrote:
>
> Jozef has decided to target this module at the JAX-RS
> standard only,
> therefore the module name has changed slightly. We renamed
> the repo
> on github accordingly.
> _______________________________________________
> seam-dev mailing list
> seam-dev at lists.jboss.org <mailto:seam-dev at lists.jboss.org>
> <mailto:seam-dev at lists.jboss.org <mailto:seam-dev at lists.jboss.org>>
>
> https://lists.jboss.org/mailman/listinfo/seam-dev
>
>
>
>
> --
> Lincoln Baxter, III
> http://ocpsoft.com
> http://scrumshark.com
> "Keep it Simple"
>
>
>
> _______________________________________________
> seam-dev mailing list
> seam-dev at lists.jboss.org <mailto:seam-dev at lists.jboss.org>
> https://lists.jboss.org/mailman/listinfo/seam-dev
>
>
>
>
> --
> Lincoln Baxter, III
> http://ocpsoft.com
> http://scrumshark.com
> "Keep it Simple"
More information about the seam-dev
mailing list