users@jersey.java.net

[Jersey] How to give a json string to a webservice method

From: Christine Bauers <c.bauers_at_gmx.de>
Date: Tue, 05 Apr 2011 19:48:44 +0200

Hi there,

I use a jersey webservice and I want to give the webservice method a jsonstring.

this is the method:

@GET
@Produces(MediaType.APPLICATION_JSON)
@Consumes(MediaType.APPLICATION_JSON)
@Path("/search")
public String search(@QueryParam("token") String token,
        @QueryParam("searchString") String searchParams)

so I define my searchString of the Type JSONObject in the client and call the webservice method:
 
HttpGet requesttest = new HttpGet("http://test.de/myresource/search?token="+cursor.getString(0)+"&searchString="+searchString);
                        
but trying this throws the exception that there is a illegal character in the query. I´m sure it is because of :

If I change to post it looks like this:
HttpPost requestPost = new HttpGet("http:/test.de/myresource/search?");
List<NameValuePair> params = new ArrayList<NameValuePair>();
params.add(new BasicNameValuePair("token", cursor.getString(0)));
params.add(newBasicNameValuePair("searchString",searchString.toString()));

but I don´t know how to use the searchstring in the search method of the webservie now.

does anybody know how to solve the problem?

best wishes

-- 
NEU: FreePhone - kostenlos mobil telefonieren und surfen!			
Jetzt informieren: http://www.gmx.net/de/go/freephone