context-datasource 에서 JtaTransactionManager 를 안쓰고 JNDI 사용하는 방법
- 작성자 :
- 신*우
- 작성일 :
- 2015-01-07 17:34:03
- 조회수 :
- 1,351
- 구분 :
- 실행환경
- 진행상태 :
- 완료
Q
안녕하세요
항상 지원 감사드립니다
아래와 같이 JNDI 및 JtaTransactionManager 를 사용하고 있습니다
JtaTransactionManager 없이 JNDI 형식으로 datasource 를 사용하는 방법 문의드립니다.
확인 부탁드립니다
=====================
<bean id="txManager" class="org.springframework.transaction.jta.JtaTransactionManager">
<property name="transactionManagerName" value="java:/TransactionManager" />
<property name="jndiTemplate" ref="jnditemplate"></property>
</bean>
<bean id="txManagerFront" class="org.springframework.transaction.jta.JtaTransactionManager">
<property name="transactionManagerName" value="java:/TransactionManager" />
<property name="jndiTemplate" ref="jnditemplate"></property>
</bean>
<bean id="jnditemplate" class="org.springframework.jndi.JndiTemplate" >
<property name="environment">
<props>
<prop key="java.naming.factory.initial">jeus.jndi.JNSContextFactory</prop>
<prop key="java.naming.provider.url">127.0.0.1:9736</prop>
</props>
</property>
</bean>
<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
<property name="jndiName">
<value>AAAA</value>
</property>
</bean>
항상 지원 감사드립니다
아래와 같이 JNDI 및 JtaTransactionManager 를 사용하고 있습니다
JtaTransactionManager 없이 JNDI 형식으로 datasource 를 사용하는 방법 문의드립니다.
확인 부탁드립니다
=====================
<bean id="txManager" class="org.springframework.transaction.jta.JtaTransactionManager">
<property name="transactionManagerName" value="java:/TransactionManager" />
<property name="jndiTemplate" ref="jnditemplate"></property>
</bean>
<bean id="txManagerFront" class="org.springframework.transaction.jta.JtaTransactionManager">
<property name="transactionManagerName" value="java:/TransactionManager" />
<property name="jndiTemplate" ref="jnditemplate"></property>
</bean>
<bean id="jnditemplate" class="org.springframework.jndi.JndiTemplate" >
<property name="environment">
<props>
<prop key="java.naming.factory.initial">jeus.jndi.JNSContextFactory</prop>
<prop key="java.naming.provider.url">127.0.0.1:9736</prop>
</props>
</property>
</bean>
<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
<property name="jndiName">
<value>AAAA</value>
</property>
</bean>
A
안녕하세요. 신재우님.
DataSource와 TransactionManager를 개별적으로 사용되는 부분이라 JtaTransactionManager를 DataSourceTransactionManger로만 변경하시면 됩니다.
참고로 JtaTransactionManager는 JNDI DataSource가 2개 이상이면서 2-PC(Phrase Commit) 처리가 필요한 경우에만 사용하시면 됩니다.
e.g
<bean id=”dataSource” class=”org.springframework.jndi.JndiObjectFactoryBean”>
<property name=”jndiName” value=”java:/comp/env/jdbc/testDB” />
</bean>
<bean id="txManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource"/>
</bean>
그럼, 즐거운 하루되십시오.
감사합니다.
DataSource와 TransactionManager를 개별적으로 사용되는 부분이라 JtaTransactionManager를 DataSourceTransactionManger로만 변경하시면 됩니다.
참고로 JtaTransactionManager는 JNDI DataSource가 2개 이상이면서 2-PC(Phrase Commit) 처리가 필요한 경우에만 사용하시면 됩니다.
e.g
<bean id=”dataSource” class=”org.springframework.jndi.JndiObjectFactoryBean”>
<property name=”jndiName” value=”java:/comp/env/jdbc/testDB” />
</bean>
<bean id="txManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource"/>
</bean>
그럼, 즐거운 하루되십시오.
감사합니다.