상황 java.util.NoSuchElementException: No value present 원인 // A Service Optional a = bService.getA(id); if(a.isPresent()){ do(a.get()); } // B Service public Optional getA(int id){ C c = bRepository.findById(id).orElseThrow(); // Exception 발생 원인 return Optional.ofNullable(c.getA()); } 해결 Optional의 orElse()를 사용해야하는 상황에 orElseThrow()를 사용한 것이 문제였다. orElseThrow()는 '내가 예외 처리를 하겠다'의 의미인데, 별도의 예외 처리를 하지 ..