BeanFactory 가 초기 화 되 지 않 았 거나 이미 닫 혔 습 니 다. - Beans 해결 방법 에 액세스 하기 전에 '새로 고침' 을 호출 하 십시오.

1496 단어 beanfactory
오늘 Spring 프로그램 을 쓸 때 흔히 볼 수 있 는 실 수 를 만 났 습 니 다. 저 는 예전 에 만난 적 이 없 는 것 같 습 니 다. 오늘 에 야 이 실 수 를 보 았 습 니 다. 연 구 를 통 해 이 실 수 를 해결 하 였 습 니 다. 이 실 수 를 저 지 르 는 것 은 정말 옳지 않 습 니 다.
log4j:WARN No appenders could be found for logger (org.springframework.core.env.StandardEnvironment).

log4j:WARN Please initialize the log4j system properly.

log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.

Exception in thread "main" java.lang.IllegalStateException: BeanFactory not initialized or already closed - call 'refresh' before accessing beans via the ApplicationContext

    at org.springframework.context.support.AbstractRefreshableApplicationContext.getBeanFactory(AbstractRefreshableApplicationContext.java:172)

    at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1097)

    at com.pb.demo.Test.main(Test.java:12)

 
BeanFactory 가 실례 화 되 지 않 았 거나 닫 혔 습 니 다. 사실 오류 가 발생 한 원인 은 간단 합 니 다.
ApplicationContext ctx = new ClassPathXmlApplicationContext();
설정 파일 이 지정 되 지 않 았 습 니 다. Spring 실례 화 BeanFactory 는 기본적으로 classPath 아래 에서 applicationContext. xml 라 는 파일 을 찾 았 습 니 다. 그런데 지정 되 지 않 았 기 때문에 이 오류 가 발생 했 습 니 다.
이것 이 잘못된 원인 입 니 다. 괄호 에 프로필 이름 을 쓰 면 됩 니 다.
ApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml");
이렇게 되면 이런 실 수 는 없 을 것 이다.

좋은 웹페이지 즐겨찾기