현재 빌드 리드는 이론상으로 훌륭한 아이디어를 가지고 있습니다. 스프링 관리 빈을 사용하는 커스텀 Log4J appender를 생성하고 표준 로그 파일 이외의 다른 여러 소스에 오류를 기록하는 데 사용합니다. 그러나, 애플리케이션 컨텍스트 (코드가 잠시 후)로 시작될 때 싱글 톤을 생성하는 것 이외에 Log4J 애 퍼처에서 Spring 관리 빈을 검색하는 다른 옵션을 생각할 수 없다.Spring 관리 웹 애플리케이션의 Log4J Appender에서 Spring 관리 Bean을 검색 할 수있는 옵션은 무엇입니까?
public class SpringSingleton implements ApplicationContextAware {
private static ApplicationContext context;
public SpringSingleton() {
super();
}
public static ApplicationContext getContext() {
return SpringSingleton.context;
}
public void setApplicationContext(ApplicationContext context) {
if(SpringSingleton.context != null) {
throw new IllegalStateException("Context is already set!");
}
SpringSingleton.context = context;
}
}
이상적으로, 이러한 속성은 의존성 주입을 통해 봄에 바로 콩과 같이 설정 될 수있다 - 빈 참조 상관없이 많은 펜더가 초기화되는 방법을 변경하지 않습니다. 어떤 아이디어?
는 우 ... 난 리스너 아이디어를 좋아한다. 나는 그것을 따라 가겠다. 나는 당신이 대리인을 위해 아주 아프지 않는 것처럼, 추가 답변을 기다릴 것이다. +1. – MetroidFan2002
안녕하세요, Hey - Simpsons (http://www.imdb.com/title/tt1023430/quotes)에서 Rich Texan을 잘못 인용하십시오. "이 담당자를 불만스럽게 만들기 위해 열심히 노력했습니다."- – ChssPly76
좋은 물건. AppApply 우리는 이미 추가 appenders 배열을 설정할 수있는 BeanFactoryPostProcessor 구현을 가지고 있습니다. 그래서 우리는 그것을 사용할 것입니다. 그러나 아무도이 질문에 대답하지 않았으므로 확실히 적합합니다. – MetroidFan2002