users@jersey.java.net

Re: help with uritemplate

From: Jakub Podlesak <Jakub.Podlesak_at_Sun.COM>
Date: Thu, 23 Aug 2007 15:19:47 +0200

Hi Vishal,

On Thu, Aug 23, 2007 at 02:09:43PM +0100, Vishal Vatsa wrote:
> Hi Jakub,
>
> Thanks for that, it totally works if I have consistent uri params. Please pass
> my thanks to Paul also.

Sure. He will read it anyway once he returns back from vacation ;-)

>
> Do you still want me to create bug report or do you guys want to deal with it
> internally?

I think we can cope with that internally.

>
> Thanks Very Much.

Thank *you* for experimenting with Jersey and finding the issue!

~Jakub

> Vishal
>
> On Thursday 23 August 2007 13:31:43 Jakub Podlesak wrote:
> > Hi Vishal,
> >
> > Paul just came with a workaround for you.
> > There is definitely a bug in Jersey, anyway if you had the same
> > (consistent) uri parameter names, it should work for you (as it works for
> > me).
> >
> > Please see the updated source code attached (I have changed the class name,
> > but the content remains same).
> >
> > ~Jakub
> >
> > On Thu, Aug 23, 2007 at 11:24:04AM +0100, Vishal Vatsa wrote:
> > > Hi Jakub,
> > >
> > > Thanks for taking a look at this for me, I will submit a new bug report
> > > with the necessary files to recreate the issue.
> > >
> > > I was really hoping I that I was at fault, crap.
> > >
> > > Thanks Again
> > > Vishal
> > >
> > > On Thursday 23 August 2007 10:49:08 Jakub Podlesak wrote:
> > > > Hi Vishal,
> > > >
> > > > I think it is a bug. Could you please submit a new bug report at
> > > > https://jersey.dev.java.net/issues/
> > > > so that we can track it?
> > > >
> > > > Please do not forget to attach your project files.
> > > >
> > > > Thank you a lot!
> > > >
> > > > ~Jakub
> > > >
> > > > On Thu, Aug 23, 2007 at 07:46:44AM +0100, Vishal Vatsa wrote:
> > > > > Hi Guys,
> > > > >
> > > > > I have a class with three functions on the same uritemplate with
> > > > > diffrent httpmethod (get, post, put) for each. Any time I try to use
> > > > > the post method I keep getting 405 method not allowed, but the really
> > > > > odd thing is that if I comment out the functions with the get and put
> > > > > httpmethod, I can use the post method no problem.
> > > > >
> > > > >
> > > > > So in the below src, if I comment out getTransaction and
> > > > > processInstructon funtions, I can use the post methon on uri
> > > > > "/XmlUpdate/blahblah" and hit the acceptResource function just fine,
> > > > > but the way it it right now if I do the post to the url
> > > > > "/XmlUpdate/blahblah" I keep getting a 405 responce.
> > > > >
> > > > > If any one could please point out what I am doing wrong, it would be
> > > > > great as I am reduced to pulling my hair out at this point.
> > > > >
> > > > > Thanks
> > > > > Vishal
> > > > >
> > > > > ###############################################
> > > > > # java src file
> > > > > ###############################################
> > > > > import javax.ws.rs.ConsumeMime;
> > > > > import javax.ws.rs.HttpMethod;
> > > > > import javax.ws.rs.UriParam;
> > > > > import javax.ws.rs.UriTemplate;
> > > > > import javax.ws.rs.core.HttpContext;
> > > > > import javax.ws.rs.core.HttpHeaders;
> > > > > import javax.ws.rs.core.Response;
> > > > >
> > > > > @UriTemplate("/XmlUpdate")
> > > > > public class MTest {
> > > > >
> > > > > @HttpMethod("GET")
> > > > > public Response serviceStatus(@HttpContext HttpHeaders header){
> > > > > return Response.Builder.representation("serviceStatus",
> > > > > "text/plain") .header("Etag", "0000000")
> > > > > .status(200).build();
> > > > > }
> > > > >
> > > > > @HttpMethod("POST")
> > > > > //_at_ConsumeMime("application/x-www-form-urlencoded")
> > > > > public Response createTransaction(@HttpContext HttpHeaders header,
> > > > > String xml){
> > > > >
> > > > >
> > > > > return Response.Builder.representation("createTransaction",
> > > > > "text/plain") .header("Location", "/")
> > > > > .header("Etag", "11111")
> > > > > .status(201).build();
> > > > > }
> > > > >
> > > > > @UriTemplate("{transac_id}")
> > > > > @HttpMethod("POST")
> > > > > @ConsumeMime("*/*")
> > > > > public Response acceptResource(@UriParam("transac_id") String
> > > > > transac_id, @HttpContext HttpHeaders header,
> > > > > String data){
> > > > > return Response.Builder.representation(data, "text/plain")
> > > > > .header("Etag", transac_id)
> > > > > .header("Location", "/")
> > > > > .status(201).build();
> > > > >
> > > > >
> > > > >
> > > > > }
> > > > >
> > > > >
> > > > > @UriTemplate("{transaction_id}")
> > > > > @HttpMethod("GET")
> > > > > public Response getTransactionStatus(@UriParam("transaction_id")
> > > > > String t_id) {
> > > > > return Response.Builder.representation("get transaction",
> > > > > "text/plain") .header("Etag", "222222")
> > > > > .status(200).build();
> > > > > }
> > > > >
> > > > >
> > > > >
> > > > > @UriTemplate("{transaction_id}")
> > > > > @HttpMethod("PUT")
> > > > > public Response processInstruction(@UriParam("transaction_id")
> > > > > String t_id, String xml){
> > > > >
> > > > > return Response.Builder.representation(xml, "text/xml")
> > > > > .header("Etag", "3333333")
> > > > > .status(200).build();
> > > > > }
> > > > >
> > > > >
> > > > >
> > > > > }
> > > > >
> > > > > ---------------------------------------------------------------------
> > > > > To unsubscribe, e-mail: users-unsubscribe_at_jersey.dev.java.net
> > > > > For additional commands, e-mail: users-help_at_jersey.dev.java.net
> > > >
> > > > ---------------------------------------------------------------------
> > > > To unsubscribe, e-mail: users-unsubscribe_at_jersey.dev.java.net
> > > > For additional commands, e-mail: users-help_at_jersey.dev.java.net
> > >
> > > --
> > > Last song played: Ryan Adams – I See Monsters, on Thu Aug 23 10:17:27
> > > 2007
> > >
> > > ---------------------------------------------------------------------
> > > To unsubscribe, e-mail: users-unsubscribe_at_jersey.dev.java.net
> > > For additional commands, e-mail: users-help_at_jersey.dev.java.net
>
>
>
> --
> Last song played: The Velvet Underground – Who Loves the Sun, on Thu Aug 23
> 13:45:06 2007
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe_at_jersey.dev.java.net
> For additional commands, e-mail: users-help_at_jersey.dev.java.net
>