어노테이션 @Service와 @AllArgsConstructor을 사용하고있었는데, 아래와 같은 에러내용
서블릿 [appServlet]을(를) 위한 Servlet.init() 호출이 예외를 발생시켰습니다.
org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'boardController' defined in file [D:\중간경로생략\controller\BoardController.class]: Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'boardServiceImp' defined in file [D:\중간경로생략\service\BoardServiceImp.class]: Unsatisfied dependency expressed through constructor parameter 1; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'java.lang.String' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {}
문제였던 아래의 코드를
@Service
@AllArgsConstructor
public class BoardServiceImp implements BoardService {
BoardDAO boardDao;
private String uploadPath= "D:\\project_aaa\\portfolio_bbb\\uploadfiles";
@Override
public void insertBoard(TeacherVO user, BoardVO board, MultipartFile []fileList) throws Exception {
if(user == null || board == null) {
return ;
}
해결방법 :
@AllArgsConstructor 을 지우고, @Autowired를 붙여서 아래와 같이 수정하면 해결.
@Service
public class BoardServiceImp implements BoardService {
@Autowired
BoardDAO boardDao;
private String uploadPath= "D:\\project_aaa\\portfolio_bbb\\uploadfiles";
@Override
public void insertBoard(TeacherVO user, BoardVO board, MultipartFile []fileList) throws Exception {
if(user == null || board == null) {
return ;
}
board.setBoard_nickname(user.getTeacher_nickname());
board.setBoard_reply_post(0);
board.setBoard_type("free");
'괴발개발 > Spring Framework' 카테고리의 다른 글
부트스트랩5 버튼 클릭없이 수동으로 모달창 띄우기 (0) | 2021.08.25 |
---|---|
날짜 시간을 화면에 출력 (0) | 2021.08.25 |
메뉴 active 기능 따라하기 (0) | 2021.08.20 |
404에러페이지 처리 (0) | 2021.08.20 |
SP_자동로그인 기능구현 (0) | 2021.08.16 |