[SPRING] @Autowired beans는 beans를 사용한 후에 로딩하지 않는다 : spring 3.1의 프로파일들
SPRING@Autowired beans는 beans를 사용한 후에 로딩하지 않는다 : spring 3.1의 프로파일들
내가 콩을 사용했습니다 : 내 XML이 같은 프로파일 :
<beans profile="dev">
<bean id="dataSource" destroy-method="close" class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName" value="${jdbc.driverClassName}" />
<property name="url" value="${jdbc.internal.url}" />
<property name="username" value="${jdbc.internal.username}" />
</bean>
</beans>
web.xml에 spring.active.profiles를 설정했습니다.
<servlet>
<servlet-name>myapp</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/myapp-servlet.xml</param-value>
</init-param>
<init-param>
<param-name>spring.profiles.active</param-name>
<param-value>dev</param-value>
</init-param>
</servlet>
내 코드 구조는 다음과 같습니다.
//controller
@Controller
public class MyController {
@Autowired
private MyService myService;
....
}
//service implementation
@Service("myservice")
public class MyServiceImpl implements MyService {
@Autowired
DBService dbService;
}
//db service
@Service("dbservice)
public class DBServiceImpl implements DbService {
@Autowired
public void setDataSource (Datasource ds) {
this.jdbcTemplate = new JdbcTemplate(ds);
}
}
오류:
해결법
-
==============================
1.내 생각 엔 DataSource가 루트 응용 프로그램 컨텍스트에있는 동안 DispatcherServlet 컨텍스트에서 프로필을 사용하고있는 것 같습니다.
내 생각 엔 DataSource가 루트 응용 프로그램 컨텍스트에있는 동안 DispatcherServlet 컨텍스트에서 프로필을 사용하고있는 것 같습니다.
Spring Framework의 applicationcontext.xml과 spring-servlet.xml의 차이점을 참조하십시오.
업데이트 : context-params를 사용해보십시오 (여기에서 가져옴) :
<context-param> <param-name>spring.profiles.active</param-name> <param-value>dev</param-value> </context-param>
from https://stackoverflow.com/questions/13311603/autowired-beans-not-loading-after-using-beansprofiles-in-spring-3-1 by cc-by-sa and MIT license
'SPRING' 카테고리의 다른 글
[SPRING] 초기화 할 때로드 될 모든 Spring 부트 속성과 모든 것을 존중하고 속성 파일의 값을 기반으로 @Aspect를 제어합니다. (0) | 2019.05.25 |
---|---|
[SPRING] Spring MVC 페이지 HTTP 상태 400 및 잘못된 URL (0) | 2019.05.25 |
[SPRING] Maven 플러그인 커넥터 설정 오류 (0) | 2019.05.24 |
[SPRING] 한 컨트롤러에서 다른 컨트롤러 스프링으로 모델 데이터를 전달하는 방법 (0) | 2019.05.24 |
[SPRING] 어떻게 yaml 속성을 gradle에로드 할 것인가? (0) | 2019.05.24 |