https://github.com/maggandalf/jaxrssubresource
2014-10-29 16:15 GMT+01:00 Alex Soto <[email protected]>: > Yes it is there only in one of my test trying to see if setting a known > content type make things better, > > 2014-10-29 16:11 GMT+01:00 Romain Manni-Bucau <[email protected]>: > >> why @XmlRootElement? IMHO Customer shouldn't be a jaxb object >> >> if you manage to share a project @github we could dig into it >> Romain Manni-Bucau >> Twitter: @rmannibucau >> Blog: http://rmannibucau.wordpress.com/ >> LinkedIn: http://fr.linkedin.com/in/rmannibucau >> Github: https://github.com/rmannibucau >> >> >> >> 2014-10-29 16:06 GMT+01:00 Alex Soto <[email protected]>: >> > Hi again I am trying really simple example and it don't work. I am not >> sure >> > if it is because of something related in cxf or something that I am >> doing >> > wrong (but currently I am copying the example from oracle >> documentation). >> > Let me paste the classes: >> > >> > @Path("/") >> > public class ShoppingCart { >> > >> > @Path("/customers/{id}") >> > @GET >> > @Produces(MediaType.APPLICATION_XML) >> > public Customer get(@PathParam("id") String id) { >> > Customer customer = new Customer(); >> > customer.setAddress("a"); >> > customer.setId(id); >> > return customer; >> > } >> > } >> > >> > and >> > >> > @XmlRootElement >> > public class Customer { >> > >> > private String id; >> > private String address; >> > public String getId() { >> > return id; >> > } >> > @Path("/address") >> > @Produces(MediaType.TEXT_PLAIN) >> > public String getAddress() { >> > return address; >> > } >> > public void setId(String id) { >> > this.id = id; >> > } >> > public void setAddress(String address) { >> > this.address = address; >> > } >> > } >> > >> > If I navigate to /customers/12/address it didn't work, an exception is >> > thrown that endpoint is not found: >> > >> > WARNING: No operation matching request path >> > "/javaeemv3/customers/1/address" is found, Relative Path: >> > /customers/1/address, HTTP Method: GET, ContentType: */*, Accept: >> > >> text/html,application/xhtml+xml,image/webp,application/xml;q=0.9,*/*;q=0.8,. >> > Please enable FINE/TRACE log level for more details. >> > Oct 29, 2014 4:00:11 PM >> > org.apache.cxf.jaxrs.impl.WebApplicationExceptionMapper toResponse >> > WARNING: javax.ws.rs.WebApplicationException >> > at >> > >> org.apache.cxf.jaxrs.utils.JAXRSUtils.findTargetMethod(JAXRSUtils.java:415) >> > >> > Don't know exactly if I am doing something wrong (but at least it seems >> > that reading the specification it should work. >> > >> > Alex. >> > >> > 2014-10-29 15:08 GMT+01:00 Alex Soto <[email protected]>: >> > >> >> Ok so providing an Applicatiom makes that scanning process do not scan >> >> resources and subresources. Cool. Thanks. >> >> >> >> 2014-10-29 15:04 GMT+01:00 Romain Manni-Bucau < >> [email protected]>: >> >> >> >>> normally you don't let sub resources to be deployed providing an >> >>> Application. >> >>> Romain Manni-Bucau >> >>> Twitter: @rmannibucau >> >>> Blog: http://rmannibucau.wordpress.com/ >> >>> LinkedIn: http://fr.linkedin.com/in/rmannibucau >> >>> Github: https://github.com/rmannibucau >> >>> >> >>> >> >>> >> >>> 2014-10-29 15:00 GMT+01:00 Alex Soto <[email protected]>: >> >>> > so how can I create a real subresource then? Ok just using @Path >> without >> >>> > Http method, but then how to differentiate if subresource should be >> for >> >>> a >> >>> > post or for a get? >> >>> > >> >>> > 2014-10-29 14:22 GMT+01:00 Romain Manni-Bucau < >> >>> [email protected]>: >> >>> > >> >>> >> Hi >> >>> >> >> >>> >> yes but no :p >> >>> >> >> >>> >> in details: we deploy classes with only method @Path (no class >> @path) >> >>> >> as endpoint by default (ie you use scanning) cause users do it >> (comes >> >>> >> from spring I think). >> >>> >> Romain Manni-Bucau >> >>> >> Twitter: @rmannibucau >> >>> >> Blog: http://rmannibucau.wordpress.com/ >> >>> >> LinkedIn: http://fr.linkedin.com/in/rmannibucau >> >>> >> Github: https://github.com/rmannibucau >> >>> >> >> >>> >> >> >>> >> >> >>> >> 2014-10-29 14:09 GMT+01:00 Alex Soto <[email protected]>: >> >>> >> > Hi guys, >> >>> >> > Currently I am developing some jax-rs endpoints with Apache TomEE >> >>> 1.7.1. >> >>> >> I >> >>> >> > am trying to develop some subresources, but there is something >> that >> >>> >> > confuses me: >> >>> >> > >> >>> >> > Reading some documentation in summary says that your subresource >> >>> should >> >>> >> not >> >>> >> > be annotated with @Path annotation and they gives you next >> example: >> >>> >> > >> >>> >> > // Subresource class >> >>> >> > public class Employee { >> >>> >> > >> >>> >> > // Subresource method: returns the employee's last name >> >>> >> > @GET >> >>> >> > @Path("/lastname") >> >>> >> > public String getEmployeeLastName() { >> >>> >> > ... >> >>> >> > return lastName >> >>> >> > } >> >>> >> > } >> >>> >> > >> >>> >> > In theory it should be a subresource, but when I deploy this in >> >>> TomEE I >> >>> >> can >> >>> >> > access to this subresource directly from path provided in each >> >>> method (in >> >>> >> > previous case localhost:8080/app/lastname), but my question is >> that >> >>> if it >> >>> >> > is a subresource, it should not be accessed directly from >> browser but >> >>> >> from >> >>> >> > another resource right? So for example it should be valid >> accessing >> >>> from >> >>> >> > localhost:8080/app/employee/lastname >> >>> >> > >> >>> >> > You can see the example here >> >>> >> > http://docs.oracle.com/javaee/6/tutorial/doc/gknav.html >> >>> >> > >> >>> >> > Alex. >> >>> >> > >> >>> >> > >> >>> >> > >> >>> >> > -- >> >>> >> > +----------------------------------------------------------+ >> >>> >> > Alex Soto Bueno >> >>> >> > www.lordofthejars.com >> >>> >> > +----------------------------------------------------------+ >> >>> >> >> >>> > >> >>> > >> >>> > >> >>> > -- >> >>> > +----------------------------------------------------------+ >> >>> > Alex Soto Bueno - Computer Engineer >> >>> > www.lordofthejars.com >> >>> > +----------------------------------------------------------+ >> >>> >> >> >> >> >> >> >> >> -- >> >> +----------------------------------------------------------+ >> >> Alex Soto Bueno - Computer Engineer >> >> www.lordofthejars.com >> >> +----------------------------------------------------------+ >> >> >> > >> > >> > >> > -- >> > +----------------------------------------------------------+ >> > Alex Soto Bueno - Computer Engineer >> > www.lordofthejars.com >> > +----------------------------------------------------------+ >> > > > > -- > +----------------------------------------------------------+ > Alex Soto Bueno - Computer Engineer > www.lordofthejars.com > +----------------------------------------------------------+ > -- +----------------------------------------------------------+ Alex Soto Bueno - Computer Engineer www.lordofthejars.com +----------------------------------------------------------+
