2016-04-26 10 views
0

次のリクエストマッピングがあります。最後のパスにドット(。)を使用してマッピングを要求します

@RequestMapping(value = "/{userId}", produces = { MediaTypes.HAL_JSON_VALUE }) 
@ResponseStatus(HttpStatus.OK) 
public Resource<UserDTO> findUser(@PathVariable final String userId) { 
    User user = administrationService.getSecurityUserById(userId); 
    return userResourceAssembler.toResource(modelMapper.map(user, UserDTO.class)); 
} 

私はリソースを取得するためにRestTemplateを使用します。 URLで渡されたユーザーIDは、ドットが含まれているように:のJohn.Doe - >リクエストURL:(。)上記の方法は、私だけ@PathVariableのuserIdにジョンを取得する呼び出さhttp://mysite/users/john.doe

どのようにこれを修正できますか?取得するjohn.doe

Thx。

答えて

0

RequestMappingのドットの後に続くものは、拡張子とみなされ、ドットと他の文字列と一緒に読むことができるようにするには、次のようなリクエストマッピングで正規表現を使用することをお勧めします。 /{userId:.+} 詳細な説明はこちらからご覧ください。Spring MVC @PathVariable with dot (.) is getting truncated

関連する問題