오겜 Discord 차단 된것 같은데 ,, ㅠㅠ
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
삭제된 글입니다
- python
- 머신러닝
- 빅데이터
- pandas
- 빅데이터분석기사
173만명의 커뮤니티!! 함께 토론해봐요.
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
삭제된 글입니다
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
함수에 대해 정의내릴 때 예를 들어 코랩 에서는 scaler = minmax_scale() 이렇게 정의를 내리고 scaler(data) 하는데 #코랩은 정의내릴 때 괄호를 빼면 동작안함 구름에서 테스트해보니까 scaler = minmax_scale()하고 scaler(data)하면 에러가 발생하고 괄호없이 scaler = minmax_scale 만해야 에러가 발생하지 않더라구요. 이게 구름 환경만의 특성이라서 그렇다고 보면 될까요?
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
노트북 링크 복사 붙여넣기 후 열면, 해당 팝업이 뜹니다
아래 코드와 같이 컨트롤러에서 Environment로 yaml의 프로퍼티 값을 꺼내서 사용하고 있었는데 @Slf4j @RestController @RequestMapping("/users") public class RefreshAccessToken { @Autowired UsersService usersService; Environment env; public RefreshAccessToken(Environment env) { this.env = env; } @PostMapping("/refreshAccessToken") private ResponseEntity<?> getRefreshAccessToken(HttpServletRequest request, HttpServletResponse response) { // 요청 헤더에서 refresh token 읽기 String authorizationHeader = request.getHeader("refreshToken"); if (authorizationHeader == null || !authorizationHeader.startsWith(env.getProperty("authorization.token.header.prefix"))) { log.warn("RefreshToken validation error #1 : refreshToken header isn't exists"); throw new CustomApiException("refreshToken header isn't exists"); } ... } ... } env에서 NullPointerException이 발생하더라구요... UsersService와 Enviroment 모두 롬복 생성자 주입해도 안되고, @Value 를 사용해보기도 했는데 역시 프로퍼티 값을 못가져왔습니다. yaml은 application.yml에서 각 서버의 profile을 잡도록 해서 사용 중이고, 모든 서버의 profile에 해당 프로퍼티 키, 밸류가 있습니다. 프로퍼티 키 오타도 없구요. env가 계속 원인을 알 수 없는 null이어서 결국 해당 컨트롤러를 삭제하고 새로 컨트롤러를 만들어봤더니 이번엔 이상없이 env 값이 잘 들어옵니다.😇 아래 새로 만든 컨트롤러 코드엔 롬복 생성자 주입을 사용하고 있는데 혹시나 이게 원인인가 싶어 @Autowired 로 필드 주입이랑 수동 생성자 주입 모두 해봤는데 아무런 문제가 없었습니다. 심지어 NPE가 발생했던 코드와 똑같이 짜봤는데 오류가 안생기더라구요. @Slf4j @RequiredArgsConstructor @RequestMapping("/users") @RestController public class RefreshTokenController { private final Environment env; private final IUsersService usersService; @PostMapping("/refreshAccessToken") public ResponseEntity<?> getAccessTokenByRefreshToken(HttpServletRequest request, HttpServletResponse response) { String secret = env.getProperty("token.secret"); String prefix = env.getProperty("authorization.token.header.prefix"); String expiration = env.getProperty("token.access_expiration_time"); // 토큰 읽어오기 String authorizationHeader = request.getHeader("refreshToken"); if (authorizationHeader == null || !authorizationHeader.startsWith(prefix)) { log.warn("RefreshToken validation error #1 : refreshToken header isn't exists"); throw new CustomApiException("refreshToken header isn't exists"); } ... } ... } 현재로선 Environment 초기화 시점이 꼬여서 null인게 가장 의심이 되긴는데 정확한 오류의 원인을 모르겠어서 질문드립니다.