이 같은 API와 resygwt에 REST 기반 서비스를했습니다 :Restygwt : 잘못된 URI 순서
@Path("/search")
@GET
List<User> search(@QueryParam("login") String loginMask) throws RemoteException;
그리고이 요청에 대해 "잘못된 URI 순서"가 나타납니다
http://devsys23:8080/rest/search?login=%25spa%20ce%25
을 JavaDoc에서 언급 한 바에 따르면 이러한 요청은 기본적으로 지원되어야하기 때문에 다소 이상합니다.
- HTTP 조회 매개 변수의 값을 자원 메소드 매개 변수
- 자원 클래스 필드 또는 자원 클래스 bean 특성에 바인드합니다.
- 값이 인코딩되지 않은 경우가 아니라면 인코딩 된
- 주석을 사용하여 값을 디코딩 할 수 있습니다. 기본값은 {@link DefaultValue}
- 주석을 사용하여 지정할 수 있습니다.
난은 useBodyEncodingForURI 및 URIEncoding = "UTF-8"로 server.xml에 바람둥이 커넥터를 편집하려고했습니다. 또한 org.springframework.web.filter.CharacterEncodingFilter 포함하고 forceEncoding 세트,하지만 여전히 = (
내가 디코딩해야한다는 로그인 PARAM을 지정하려면 어떻게해야합니까? 이있는 경우 귀하의 조언에 감사드립니다 작동하지 않는했다
String loginValue= queryParams.get("login");
loginValue= URLDecoder.decode(loginValue, "UTF-8");
어쩌면 RestyGWT 기본적으로 모든 PARAMS를 인코딩처럼 뭔가를 당신이 값을 디코딩합니다.
정말 RestyGWT와 관련이 있습니까? 내가 아는 바로는 문제는 쿼리 매개 변수 값을 디코딩 할 때의 바람둥이 문제입니다. 쿼리 param을 인코딩하지 않길 원하십니까? 아니면 백엔드에서 디코딩하도록 하시겠습니까? –