weblogic에서 datasource 사용시 testBorrow 사용 방법
- 작성자 :
- 박*우
- 작성일 :
- 2013-07-16 10:56:09
- 조회수 :
- 878
- 구분 :
- 기타
- 진행상태 :
- 완료
Q
안녕하세요. 다름이 아니라 현재 weblogic 환경에서 datasource를 사용하여 디비 연결하여 쓰고 있습니다.
서버를 기동시에 현재 datasoruce를 6개정도 사용하고 있는데 그중에 하나에 디비라도 접속이 안될시에 서버가 정상적으로 시작되지 않습니다.
testBorrow와 같이 디비 연결 테스트를 false로 주면 점검하지 않는 기능같은것을 사용할 수 있을지 궁금합니다.
요점은 서버 기동시에 디비 연결을 체크 하지 않고 서버가 기동되도록 하는것입니다.
아래는 현재 적용되어있는 context-datasource.xml 입니다.
부탁드립니다.
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"
xmlns:lang="http://www.springframework.org/schema/lang" xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx"
xmlns:util="http://www.springframework.org/schema/util" xmlns:p="http://www.springframework.org/schema/p" xmlns:batch="http://www.springframework.org/schema/batch"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd
http://www.springframework.org/schema/lang http://www.springframework.org/schema/lang/spring-lang-3.0.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd
http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.0.xsd
http://www.springframework.org/schema/batch http://www.springframework.org/schema/batch/spring-batch-2.1.xsd">
<context:property-placeholder location="classpath:property/db.properties" />
<bean id="jnditemplate" class="org.springframework.jndi.JndiTemplate" >
<property name="environment">
<props>
<prop key="java.naming.factory.initial">weblogic.jndi.WLInitialContextFactory</prop>
<prop key="java.naming.provider.url">t3://localhost:1111</prop>
</props>
</property>
</bean>
<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
<property name="jndiName" value="${db.name}"/>
<property name="jndiTemplate" ref="jnditemplate"/>
</bean>
</beans>
서버를 기동시에 현재 datasoruce를 6개정도 사용하고 있는데 그중에 하나에 디비라도 접속이 안될시에 서버가 정상적으로 시작되지 않습니다.
testBorrow와 같이 디비 연결 테스트를 false로 주면 점검하지 않는 기능같은것을 사용할 수 있을지 궁금합니다.
요점은 서버 기동시에 디비 연결을 체크 하지 않고 서버가 기동되도록 하는것입니다.
아래는 현재 적용되어있는 context-datasource.xml 입니다.
부탁드립니다.
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"
xmlns:lang="http://www.springframework.org/schema/lang" xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx"
xmlns:util="http://www.springframework.org/schema/util" xmlns:p="http://www.springframework.org/schema/p" xmlns:batch="http://www.springframework.org/schema/batch"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd
http://www.springframework.org/schema/lang http://www.springframework.org/schema/lang/spring-lang-3.0.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd
http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.0.xsd
http://www.springframework.org/schema/batch http://www.springframework.org/schema/batch/spring-batch-2.1.xsd">
<context:property-placeholder location="classpath:property/db.properties" />
<bean id="jnditemplate" class="org.springframework.jndi.JndiTemplate" >
<property name="environment">
<props>
<prop key="java.naming.factory.initial">weblogic.jndi.WLInitialContextFactory</prop>
<prop key="java.naming.provider.url">t3://localhost:1111</prop>
</props>
</property>
</bean>
<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
<property name="jndiName" value="${db.name}"/>
<property name="jndiTemplate" ref="jnditemplate"/>
</bean>
</beans>
A
안녕하세요. 박현우님.
WAS 별로 Connection 생성 시에 retry 하도록 하는 설정이 있는데, 이 부분을 설정해 놓으시면 초기에 DB 연결이 되지 않더라고 DataSource 자체를 사용하시는데는 문제가 없도록 되는 부분이 있을 것입니다. (내부적으로 계속적으로 연결을 재확인하여 처리)
해당 설정에 대한 내용은 사용하시는 WAS인 WebLogic쪽 문서나 해당 업체에 문의하시면 되실 것 같습니다.
또는 bean 자체 lazy-init을 true로 지정할 수 있으나 처음 DB를 사용해야 하는 시점에 JNDI lookup을 하기 때문에 의도하신 의도랑은 맞지 않는 것 같습니다.
그럼, 즐거운 하루되십시오.
감사합니다.
WAS 별로 Connection 생성 시에 retry 하도록 하는 설정이 있는데, 이 부분을 설정해 놓으시면 초기에 DB 연결이 되지 않더라고 DataSource 자체를 사용하시는데는 문제가 없도록 되는 부분이 있을 것입니다. (내부적으로 계속적으로 연결을 재확인하여 처리)
해당 설정에 대한 내용은 사용하시는 WAS인 WebLogic쪽 문서나 해당 업체에 문의하시면 되실 것 같습니다.
또는 bean 자체 lazy-init을 true로 지정할 수 있으나 처음 DB를 사용해야 하는 시점에 JNDI lookup을 하기 때문에 의도하신 의도랑은 맞지 않는 것 같습니다.
그럼, 즐거운 하루되십시오.
감사합니다.