Double Encoding for the space in OSLCQueryParamater

Thanks Jad for the reply.

Actually, I’m not encoding the where clause before setting in the ‘OslcQueryParameters’.

I think I have not explained myself, clearer.

I did a little debugging and below is the following flow, which encodes the where clause twice.

When I call API OslcQueryParameters.setWhere(“oslc:shortId in [100,101]”), the API in turn calls the private OslcQueryParameters.encodeQueryParams(String), which converts the given string to “oslc%3AshortId+in+%5B463557%2C463558%5D”.

When the constructor OslcQuery.OslcQuery(OslcClient, String, OslcQueryParameters) is called with the above formed query parameter, ‘OslcQuery.queryUrl’ attribute is formed by calling the OslcQuery.getQueryUrl() API. which in turn calls the org.glassfish.jersey.uri.internal.JerseyUriBuilder.build(Object…) API, which internally calls the org.glassfish.jersey.uri.internal.JerseyUriBuilder._build(boolean encode, boolean encodeSlashInPath, Object…) API, which again encodes the where clause.

Thanks,
Palraj.