2016-11-04 5 views
0

아래 테스트 할 API가 있습니다. 문자열 배열을 요청자에게 전달하는 솔루션을 얻지 못했습니다. 쉼표로 분리 된 값으로 시도 등Java에서 @PathVariable에 문자열 배열을 전달하는 방법

@RequestMapping(value = "/v10/{user}/alerts/alertguids/{requestors}", method = RequestMethod.GET) 
    @ResponseBody 
    @ResponseStatus(HttpStatus.OK) 
    public String[] retrieveRunnableAlertGuidsByRequestors(@RequestParam(value = "productId") final String productId, 
                  @PathVariable final String[] requestors) 
+0

이 작동하지 않습니다 : "productId에 =" "/ alertguids /"+ "WestClipNext, 마스터"+ + 제품; "/ alertguids /"+ "[WestClipNext, Master]"+ "? productId ="+ PRODUCT; –

+0

쉼표로 구분 된 값을 사용하고 대괄호를 제거하면됩니다.// alertGuids/WestClipNext, Master? productId = "+ PRODUCT' – nickmesi

+0

@UsermujM : 아니요, 위의 주석에서 말했듯이 쉼표로 구분 된 값은 작동하지 않습니다. 전체 문자열을 여러 값으로 간주하는 대신 단일 값으로 사용합니다. –

답변

1

내가 @PathVariable과 확실하지 않다 []에와 값하지만 당신은 @RequestParam을 사용할 수 있습니다.

예 : URI를 아래

@RequestMapping(value = "/v10/{user}/alerts/alertguids/{requestors}", method = RequestMethod.GET) 
    @ResponseBody 
    @ResponseStatus(HttpStatus.OK) 
    public String[] retrieveRunnableAlertGuidsByRequestors(@RequestParam(value = "productId") final String productId, 
                  @RequestParam(value = "param[]") final String[] requestors)