2016-07-07 3 views
0

У меня есть ресурс, который определен:джерси строка в кодировке, как @pathParam ресурс не передается

@Path("/customer/{customerId}") 
@Consumes(MediaType.APPLICATION_JSON) 
public Response getLocationsByAccount(@QueryParam("page") Integer page, 
             @QueryParam("per_page") Integer pageSize,,@PathParam(value = "customerId") String customerId); 

Когда я пытаюсь сделать:

curl 'http://localhost:8080/path/customer/1?page=1%26per_page=100' 

все работает.

Теперь я хотел бы получить CUSTOMERID как закодированное значение, что означает:

curl 'http://localhost:8080/path/customer/jgLiFuOi%2F0dTMbssRcfNvQ%3D%3D?page=1&per_page=22' 

я получаю ресурс не найден.

Что я делаю неправильно.

ответ

0

Это работает для меня на Glassfish:

@Path("path") 
public class Resource { 
    @GET 
    @Path("/customer/{customerId}") 
    public String getLocationsByAccount(@QueryParam("page") Integer page, 
     @QueryParam("per_page") Integer pageSize, 
     @PathParam(value = "customerId") String customerId) { 
    return customerId; 
    } 
} 

Запрос:

curl --noproxy localhost, "http://localhost:8080/path/customer/jgLiFuOi%2F0dTMbssRcfNvQ%3D%3D?page=1&per_page=22" 

Ответ:

jgLiFuOi/0dTMbssRcfNvQ== 

Так это не выглядит, как вы делаете что-то неправильно.

Смежные вопросы