강사님 유튜브 https://www.youtube.com/watch?v=av-CcrzNfHA 참고해서 글작성을 구현했습니다. 그런데 저번목요일까지만 해도 정상적으로 작동됬습니다. 그런데 오늘 다시 테스트해보니 글작성은 되는데 DB에 있는 값을 가져와서 화면에 보여줘야하는데 못가져옵니다. state.posts.length를 찍어보니 0입니다. DB에는 데이터 있는데도 0으로 가져옵니다. 그리고 Run에서 보이는 오류는 E/flutter (19022): [ERROR:flutter/lib/ui/ui_dart_state.cc(198)] Unhandled Exception: type 'int' is not a subtype of type 'String' in type cast 입니다. 혹시 원인이 무엇인지 알 수 있을까요?
trainsets 배치 형태로 구축을 위해 DataLoad 할 때 shuffle을 True로 하고, testloader은 shuffle을 False로 해주는 이유가 뭔가요..? shuffle이 섞는 다는 것이라면 train/test 모두 shuffle 해주어야 하는거 아닌가욤...? 헷갈려서 질문 드립니다.
안녕하세요 강의 재미있게 듣고 있습니다. virtual network 강의에는 NSG 적용 하지 않고 진행을 했는데, 마지막에 Web, SSH 접속 실습하신 부분이 있었습니다. 따라 해보다가 영상처럼 안되어서 찾아보다가, 22,80이 적용된 NSG를 사용하니 통신은 되는데, NSG 적용 없이 public 통신하는 방법이 있을까요?
[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part1: C# 기초 프로그래밍 입문
개행을 하지 않았는데 줄바꿈이 됩니다. 왜 그런 걸까요? using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace CSharp { class Program { static void Main(string[] args) { for (int i = 0; i < 2; i++) { Console.WriteLine("*"); } }
강의대로 따라하는중인데요 Lists, List 둘다 애로우 펑션 컴포넌트로 바꾸고 React.memo로 감싸니까 기존앱이 동작이 안되더라구요. 그래서 소스코드보니까 Lists는 기존 함수형으로 되어있어서 저도 따라서 바꿔보니까 동작을 하네요. 왜 그렇게 동작하는지 질문드려도 될까요? 단지 react.memo 를 적용하면 안되는 곳에 메모기능을 써서 렌더링이 이뤄지지 않은걸까요?
안녕하세요 Eric님! 강의 잘 보고있습니다 :) 한가지 질문이 있는데요! 혹시 화면캡쳐후 따라해볼때 각 앱서비스마다 고유의 아이콘이나 이미지를 쓰는경우가 많은데요! google material icon과 같이 오픈소스로 받는경우가 아닌 고유의 아이콘같은경우에는 따로 검색해서 png다운을 받아 사용하는걸까요? 크기가 비슷한 아이콘이미지로 대체해 따라하기도 하는지 문의드립니다 :)
늘 선생님의 강의를 보며 감사히 배우는 중입니다. 강의에서는 created를 통해 api를 받아오셨는데 구글에서 async mounted로 api를 받아오는 경우를 종종 봤습니다. mounted에서 비동기적으로 async로 감싸서 사용하는 경우는 보통 어떤때인가요??? 그리고 이런 라이프사이클 앞에 async를 붙이는 목적은 무엇때문인가요?? 제가 비동기는 많이 약해서 여쭤봅니다.
안녕하십니까 ㅎㅎㅎ 이 고개만 넘기면 하둡을 본격적으로 학습할 수 있을 것 같아서 기대하며 질문 남깁니다! 참고로, 하둡 버전의 경우 말씀 주신 사이트에 가서 확인해보니 3.2.1 버전이 현재 없어서, 기존 질문 글 참고해 3.2.3 버전으로 다운 받고 실행했습니다...! 현재 제 상황을 화면으로 보여드리면 다음과 같습니다. sbin/start-dfs.sh를 실행하고, start-yarn.sh를 각각 실행하고 jps로 현재 진행 상황을 확인해보니, start-yarn을 통해 NodeManager와 ResourceManager는 실행이 되는데, namenodes, datanodes 그리고 secondary namenodes가 실행이 되지 않습니다..ㅎㅎㅎ 혹시 sbin/start-dfs.sh를 통해 namenodes, datanodes, secondary namenodes들이 실행되지 않는다면 어떤 스크립트를 중점적으로 다시 확인해봐야하는지 알 수 있을까요? (전체적으로 다시 다 리뷰하긴 했지만..) 추가적으로, 저는 강의에서 나오는 파일 경로상의 neuavenue를 전부 joshuaj로 수정해놓은 상태인데 마지막에 start-dfs에서 terminal에서 나오는 건 [joshuaj-VirtualBox]라.. 혹시 파일 경로상의 joshuaj를 joshuaj-VirtualBox로 바꿔야하나요...? 또한 오류 발생 원인으로 의심되는 부분이 또 있는데, 강의 상에서는 들여쓰기가 이렇게 되어있는데 저는 어떻게 하는지 몰라서 Tab키를 활용해 이렇게 스크립트를 적었는데 이것이 문제의 원인일 수도 있을까요?
[오류 내용] [AutoAppConfig.class] [OrderServiceImpl.class] [AllBeanTest] 그리고 RateDiscountPolicy와 FixDiscountPolicy 모두 @Component 애너테이션이 달려 있습니다. [질문] 자동 주입시 충돌이 발생되서 RateDiscountPolicy는 @Primary 애너테이션을 붙였습니다. 그리고 AllBeanTest를 테스트 한 결과 fixDiscountPolicy 값이 null 값으로 할당이 되었어요.. RateDiscountPolicy의 @Primary 때문이라고 생각되는데요.. null 값을 받지 않도록 AppConfig.class를 넘겨서 수동적으로 하면 테스트는 성공합니다. [의식의 흐름] OrderServiceImpl의 생성자에 DiscountPolicy의 의존관계를 주입하려고 보니 자식 타입이 두 개여서 충돌이 발생한다. 이를 해결하기 위해 rateDiscountPolicy에 @Primary를 붙여주었다. 따라서 OrderServiceImpl의 생성자에 의존관계 주입시 RateDiscountPolicy의 타입을 선택한다. 따라서 스프링 빈 이름인 fixDiscountPolicy에는 null값이 들어가는 것이 맞다(?) null 값이 안들어가기 위해서는 수동적으로 주입하는 방법밖에 떠오르지 않습니다. 영한님께서는 자동의존관계 주입으로 fixDiscountPolicy와 rateDiscountPolicy 모두 테스트에 성공하셨는데 제가 어떤 부분을 놓쳤는지 모르겠습니다. null 뜨는 것은 맞는 것 같은데 null 안뜨게 하기 위해서 어떻게 바꿔야하는지에 대한 물음표입니다.
org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'jpabook.jpashop.MemberRepositoryTest': Unsatisfied dependency expressed through field 'memberRepository'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'jpabook.jpashop.MemberRepository' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)} 에러가 납니다 Member MemberRepository application.yml MemberRepositoryTest
[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part7: MMO 컨텐츠 구현 (Unity + C# 서버 연동 기초)
안녕하세요. 항상 좋은 강의 감사합니다. 이 강의를 통해서 포트폴리오를 제작하려고 하고 있습니다. 그런데 이동 관련에서 문제가 생겼습니다. 2D 횡스크롤 처럼만들어서 캐릭터를 이동시키려고 합니다. 캐릭터가 이동할 때마다 패킷을 보내고 있고 상대방에게는 방향과 애니메이션은 잘 전송이 되는데 posX와 posY는 적용이 되지 않습니다. movePacket에는 State, Dir, posX, posY 값이 잘 들어가 있습니다. 서버와 클라간의 패킷값들도 정상적으로 잘 전달이 되어 있습니다. 혹시 유니티 선생님 강의와 다르게 박스콜라이더와, 리지드바디를 적용을 했는데 이것이 이동패킷에 영향을 주기도 하나요..? breakpoint를 계속 찍어가면서 오류발생구간을 찾고 있는데도 값이 매우 잘 들어가 있어서 더 혼란입니다. 어떻게 해결을 해야 하는지 여쭙고 싶습니다..
안녕하세요 현재 Microservice간 통신의 RestTemplate 사용 강의를 듣던중에 포스트맨으로 테스트를 하는데 POST 방식 요청인 127.0.0.1:8000/user-service/users 127.0.0.1:8000/user-service/login 은 잘됩니다. <br> 하지만 GET 방식 요청인 127.0.0.1:8000/user-service/users 127.0.0.1:8000/user-service/users/welcome 127.0.0.1:8000/user-service/users/health_check 127.0.0.1:8000/user-service/users/{userId} 가 먹히지 않습니다. 즉 디버깅 브레이크 포인트도 안걸리고 그냥 401 에러가 발생합니다... 즉, 127.0.0.1:8000/user-service/login 으로 얻은 response의 Header에 있는 token을가지고 요청할 때 Bearer Token에 넣어도 401 에러가 발생합니다... 난감합니다... 갑자기 잘 되다가 왜이런지 모르겠네요.. 분명 apigateway-service의 application.yml에 get방식은 AuthorizationHeaderFilter 를 걸어줬습니다.. - id: user-service uri: lb://USER-SERVICE predicates: # 조건절이다. - Path=/user-service/** - Method=GET filters: - RemoveRequestHeader=Cookie - RewritePath=/user-service/(?<segment>.*), /$\{segment} - AuthorizationHeaderFilter <br> 그런데 정말 이해가 안가는것이 get 방식으로 127.0.0.1:8000/user-service/** 요청을 하면 Bearer Token을 정상적으로 넣어도 401 에러가 발생하는데 get 방식으로 user-service의 자체 포트번호를 넣고 127.0.0.1:67026/** 이런식으로 요청하면 BearerToken을 잘못 넣어도 정상적으로 작동합니다... 대체 왜이런거죠?? <br> 참고로 현재 저는 대칭키 방식을 이용한 암호화를 사용하고 있습니다.(비대칭키 암호화는 적용하지 않았습니다.) 그런데 이것은 user-service에서 get방식으로 요청하는데 문제가 있어보이지는 않습니다.. 어떻게 하면 get방식에서 401 에러를 발생하지 않도록 할 수 있을까요? 아니면 더 확인해야할 정보가 뭐가 있을까요? 감사합니다. <br> 현재 apigateway-service의 application.yml이 아래와 같이 되있고 spring: cloud: config: uri: http://127.0.0.1:8888 name: ecommerce # ecommerce.yml 파일을 가져온다. native에 있는 ecommerce.yml 은 다음과 같습니다. token: expiration_time: 86400000 secret: user_token_native_ecommerce gateway: ip: 192.168.45.163 참고로 token.secret이 user_token_native_ecommerce는 해당 ecommerce.yml 파일 밖에 없기 때문에 경로는 확실합니다. ( 확실히 config-service 의 application의 search-locations 경로 안에 ecommerce.yml 파일이 있습니다.) 대체 뭐가 문제여서 get 방식으로 127.0.0.1:8000/user-service/** 요청이 401 에러가 발생하는 것일까요? <br> 혹시나해서 UserController도 같이 올려봅니다. @RestController @RequestMapping("/") public class UserController { private Environment env; private UserService userService; @Autowired private Greeting greeting; @Autowired public UserController(Environment env, UserService userService) { this.env = env; this.userService = userService; } @GetMapping("/health_check") public String status() { return String.format("It's Working in User Service" + ", port(local.server.port)="+ env.getProperty("local.server.port") + ", port(server.port)="+ env.getProperty("server.port") + ", token secret="+ env.getProperty("token.secret") + ", token expiration time="+ env.getProperty("token.expiration_time")); } @GetMapping("/welcome") public String welcome() { //return env.getProperty("greeting.message"); return greeting.getMessage(); } @PostMapping("/users") // 제네릭타입으로 반환할 형태도 명시할 수 있다. public ResponseEntity<ResponseUser> createUser(@RequestBody RequestUser user) { ModelMapper mapper = new ModelMapper(); mapper.getConfiguration().setMatchingStrategy(MatchingStrategies.STRICT); // RequestUser를 UserDto로 매핑한다. UserDto userDto = mapper.map(user, UserDto.class); userService.createUser(userDto); // userDto 를 ResponseUser 형으로 변경한다. ResponseUser responseUser = mapper.map(userDto, ResponseUser.class); // rest api 식으로 반환하자 return ResponseEntity.status(HttpStatus.CREATED).body(responseUser); // 201번 성공코드 반환 } @GetMapping("/users") public ResponseEntity<List<ResponseUser>> getUsers() { Iterable<UserEntity> userList = userService.getUserByAll(); List<ResponseUser> result = new ArrayList<>(); userList.forEach(v -> { result.add(new ModelMapper().map(v, ResponseUser.class)); }); // v를 ResponseUser 클래스로 변경 return ResponseEntity.status(HttpStatus.OK).body(result); } @GetMapping("/users/{userId}") public ResponseEntity<ResponseUser> getUser(@PathVariable("userId") String userId) { UserDto userDto = userService.getUserByUserId(userId); ResponseUser returnValue = new ModelMapper().map(userDto, ResponseUser.class); return ResponseEntity.status(HttpStatus.OK).body(returnValue); } }